Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Select an option

  • Save erikside/1e48c20a2cadf14a69b2cec49808dfd0 to your computer and use it in GitHub Desktop.

Select an option

Save erikside/1e48c20a2cadf14a69b2cec49808dfd0 to your computer and use it in GitHub Desktop.
Created using remix-ide: Realtime Ethereum Contract Compiler and Runtime. Load this file by pasting this gists URL or ID at https://remix.ethereum.org/#version=soljson-v0.8.25+commit.b61c2a91.js&optimize=false&runs=200&gist=
// SPDX-License-Identifier: Apache-2.0
pragma solidity ^0.8.0;
/// @author thirdweb
import "../external-deps/openzeppelin/token/ERC20/extensions/ERC20Permit.sol";
import "../extension/ContractMetadata.sol";
import "../extension/Multicall.sol";
import "../extension/Ownable.sol";
import "../extension/interface/IMintableERC20.sol";
import "../extension/interface/IBurnableERC20.sol";
/**
* The `ERC20Base` smart contract implements the ERC20 standard.
* It includes the following additions to standard ERC20 logic:
*
* - Ability to mint & burn tokens via the provided `mint` & `burn` functions.
*
* - Ownership of the contract, with the ability to restrict certain functions to
* only be called by the contract's owner.
*
* - Multicall capability to perform multiple actions atomically
*
* - EIP 2612 compliance: See {ERC20-permit} method, which can be used to change an account's ERC20 allowance by
* presenting a message signed by the account.
*/
contract ERC20Base is ContractMetadata, Multicall, Ownable, ERC20Permit, IMintableERC20, IBurnableERC20 {
/*//////////////////////////////////////////////////////////////
Constructor
//////////////////////////////////////////////////////////////*/
constructor(address _defaultAdmin, string memory _name, string memory _symbol) ERC20Permit(_name, _symbol) {
_setupOwner(_defaultAdmin);
}
/*//////////////////////////////////////////////////////////////
Minting logic
//////////////////////////////////////////////////////////////*/
/**
* @notice Lets an authorized address mint tokens to a recipient.
* @dev The logic in the `_canMint` function determines whether the caller is authorized to mint tokens.
*
* @param _to The recipient of the tokens to mint.
* @param _amount Quantity of tokens to mint.
*/
function mintTo(address _to, uint256 _amount) public virtual {
require(_canMint(), "Not authorized to mint.");
require(_amount != 0, "Minting zero tokens.");
_mint(_to, _amount);
}
/**
* @notice Lets an owner a given amount of their tokens.
* @dev Caller should own the `_amount` of tokens.
*
* @param _amount The number of tokens to burn.
*/
function burn(uint256 _amount) external virtual {
require(balanceOf(msg.sender) >= _amount, "not enough balance");
_burn(msg.sender, _amount);
}
/**
* @notice Lets an owner burn a given amount of an account's tokens.
* @dev `_account` should own the `_amount` of tokens.
*
* @param _account The account to burn tokens from.
* @param _amount The number of tokens to burn.
*/
function burnFrom(address _account, uint256 _amount) external virtual override {
require(_canBurn(), "Not authorized to burn.");
require(balanceOf(_account) >= _amount, "not enough balance");
uint256 decreasedAllowance = allowance(_account, msg.sender) - _amount;
_approve(_account, msg.sender, 0);
_approve(_account, msg.sender, decreasedAllowance);
_burn(_account, _amount);
}
/*//////////////////////////////////////////////////////////////
Internal (overrideable) functions
//////////////////////////////////////////////////////////////*/
/// @dev Returns whether contract metadata can be set in the given execution context.
function _canSetContractURI() internal view virtual override returns (bool) {
return msg.sender == owner();
}
/// @dev Returns whether tokens can be minted in the given execution context.
function _canMint() internal view virtual returns (bool) {
return msg.sender == owner();
}
/// @dev Returns whether tokens can be burned in the given execution context.
function _canBurn() internal view virtual returns (bool) {
return msg.sender == owner();
}
/// @dev Returns whether owner can be set in the given execution context.
function _canSetOwner() internal view virtual override returns (bool) {
return msg.sender == owner();
}
/// @notice Returns the sender in the given execution context.
function _msgSender() internal view override(Multicall, Context) returns (address) {
return msg.sender;
}
}
// SPDX-License-Identifier: Apache-2.0
pragma solidity ^0.8.0;
/// @author thirdweb
import "./ERC20Base.sol";
import "../extension/PrimarySale.sol";
import { SignatureMintERC20 } from "../extension/SignatureMintERC20.sol";
import { ReentrancyGuard } from "../extension/upgradeable/ReentrancyGuard.sol";
import { CurrencyTransferLib } from "../lib/CurrencyTransferLib.sol";
/**
* BASE: ERC20
* EXTENSION: SignatureMintERC20
*
* The `ERC20SignatureMint` contract uses the `ERC20Base` contract, along with the `SignatureMintERC20` extension.
*
* The 'signature minting' mechanism in the `SignatureMintERC20` extension uses EIP 712, and is a way for a contract
* admin to authorize an external party's request to mint tokens on the admin's contract. At a high level, this means
* you can authorize some external party to mint tokens on your contract, and specify what exactly will be minted by
* that external party.
*
*/
contract ERC20SignatureMint is ERC20Base, PrimarySale, SignatureMintERC20, ReentrancyGuard {
/*//////////////////////////////////////////////////////////////
Constructor
//////////////////////////////////////////////////////////////*/
constructor(
address _defaultAdmin,
string memory _name,
string memory _symbol,
address _primarySaleRecipient
) ERC20Base(_defaultAdmin, _name, _symbol) {
_setupPrimarySaleRecipient(_primarySaleRecipient);
}
/*//////////////////////////////////////////////////////////////
Signature minting logic
//////////////////////////////////////////////////////////////*/
/**
* @notice Mints tokens according to the provided mint request.
*
* @param _req The payload / mint request.
* @param _signature The signature produced by an account signing the mint request.
*/
function mintWithSignature(
MintRequest calldata _req,
bytes calldata _signature
) external payable virtual nonReentrant returns (address signer) {
require(_req.quantity > 0, "Minting zero tokens.");
// Verify and process payload.
signer = _processRequest(_req, _signature);
address receiver = _req.to;
// Collect price
_collectPriceOnClaim(_req.primarySaleRecipient, _req.currency, _req.price);
// Mint tokens.
_mint(receiver, _req.quantity);
emit TokensMintedWithSignature(signer, receiver, _req);
}
/*//////////////////////////////////////////////////////////////
Internal functions
//////////////////////////////////////////////////////////////*/
/// @dev Returns whether a given address is authorized to sign mint requests.
function _canSignMintRequest(address _signer) internal view virtual override returns (bool) {
return _signer == owner();
}
/// @dev Returns whether primary sale recipient can be set in the given execution context.
function _canSetPrimarySaleRecipient() internal view virtual override returns (bool) {
return msg.sender == owner();
}
/// @dev Collects and distributes the primary sale value of tokens being claimed.
function _collectPriceOnClaim(address _primarySaleRecipient, address _currency, uint256 _price) internal virtual {
if (_price == 0) {
require(msg.value == 0, "!Value");
return;
}
if (_currency == CurrencyTransferLib.NATIVE_TOKEN) {
require(msg.value == _price, "Must send total price.");
} else {
require(msg.value == 0, "msg value not zero");
}
address saleRecipient = _primarySaleRecipient == address(0) ? primarySaleRecipient() : _primarySaleRecipient;
CurrencyTransferLib.transferCurrency(_currency, msg.sender, saleRecipient, _price);
}
}
This file has been truncated, but you can view the full file.
{
"deploy": {
"VM:-": {
"linkReferences": {},
"autoDeployLib": true
},
"main:1": {
"linkReferences": {},
"autoDeployLib": true
},
"ropsten:3": {
"linkReferences": {},
"autoDeployLib": true
},
"rinkeby:4": {
"linkReferences": {},
"autoDeployLib": true
},
"kovan:42": {
"linkReferences": {},
"autoDeployLib": true
},
"goerli:5": {
"linkReferences": {},
"autoDeployLib": true
},
"Custom": {
"linkReferences": {},
"autoDeployLib": true
}
},
"data": {
"bytecode": {
"functionDebugData": {
"@_1328": {
"entryPoint": null,
"id": 1328,
"parameterSlots": 2,
"returnSlots": 0
},
"@_38": {
"entryPoint": null,
"id": 38,
"parameterSlots": 3,
"returnSlots": 0
},
"@_723": {
"entryPoint": null,
"id": 723,
"parameterSlots": 2,
"returnSlots": 0
},
"@_buildDomainSeparator_1478": {
"entryPoint": 233,
"id": 1478,
"parameterSlots": 0,
"returnSlots": 1
},
"@_setupOwner_574": {
"entryPoint": 370,
"id": 574,
"parameterSlots": 1,
"returnSlots": 0
},
"@name_733": {
"entryPoint": 565,
"id": 733,
"parameterSlots": 0,
"returnSlots": 1
},
"abi_decode_available_length_t_string_memory_ptr_fromMemory": {
"entryPoint": 1022,
"id": null,
"parameterSlots": 3,
"returnSlots": 1
},
"abi_decode_t_address_fromMemory": {
"entryPoint": 796,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_t_string_memory_ptr_fromMemory": {
"entryPoint": 1087,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_tuple_t_addresst_string_memory_ptrt_string_memory_ptr_fromMemory": {
"entryPoint": 1132,
"id": null,
"parameterSlots": 2,
"returnSlots": 3
},
"abi_encode_t_address_to_t_address_fromStack": {
"entryPoint": 2039,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_t_bytes32_to_t_bytes32_fromStack": {
"entryPoint": 2009,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_t_uint256_to_t_uint256_fromStack": {
"entryPoint": 2024,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_tuple_t_bytes32_t_bytes32_t_bytes32_t_uint256_t_address__to_t_bytes32_t_bytes32_t_bytes32_t_uint256_t_address__fromStack_reversed": {
"entryPoint": 2054,
"id": null,
"parameterSlots": 6,
"returnSlots": 1
},
"allocate_memory": {
"entryPoint": 934,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"allocate_unbounded": {
"entryPoint": 709,
"id": null,
"parameterSlots": 0,
"returnSlots": 1
},
"array_allocation_size_t_string_memory_ptr": {
"entryPoint": 960,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"array_dataslot_t_string_storage": {
"entryPoint": 1371,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"array_length_t_string_memory_ptr": {
"entryPoint": 1268,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"clean_up_bytearray_end_slots_t_string_storage": {
"entryPoint": 1656,
"id": null,
"parameterSlots": 3,
"returnSlots": 0
},
"cleanup_t_address": {
"entryPoint": 757,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_bytes32": {
"entryPoint": 2000,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_uint160": {
"entryPoint": 726,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_uint256": {
"entryPoint": 1497,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"clear_storage_range_t_bytes1": {
"entryPoint": 1622,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"convert_t_uint256_to_t_uint256": {
"entryPoint": 1515,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage": {
"entryPoint": 1793,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"copy_memory_to_memory_with_cleanup": {
"entryPoint": 1008,
"id": null,
"parameterSlots": 3,
"returnSlots": 0
},
"divide_by_32_ceil": {
"entryPoint": 1389,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"extract_byte_array_length": {
"entryPoint": 1323,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"extract_used_part_and_set_length_of_short_byte_array": {
"entryPoint": 1766,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"finalize_allocation": {
"entryPoint": 885,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"identity": {
"entryPoint": 1506,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"mask_bytes_dynamic": {
"entryPoint": 1738,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"panic_error_0x22": {
"entryPoint": 1278,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"panic_error_0x41": {
"entryPoint": 840,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"prepare_store_t_uint256": {
"entryPoint": 1548,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d": {
"entryPoint": 816,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae": {
"entryPoint": 820,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": {
"entryPoint": 722,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": {
"entryPoint": 718,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"round_up_to_mul_of_32": {
"entryPoint": 824,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"shift_left_dynamic": {
"entryPoint": 1404,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"shift_right_unsigned_dynamic": {
"entryPoint": 1726,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"storage_set_to_zero_t_uint256": {
"entryPoint": 1598,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"update_byte_slice_dynamic32": {
"entryPoint": 1416,
"id": null,
"parameterSlots": 3,
"returnSlots": 1
},
"update_storage_value_t_uint256_to_t_uint256": {
"entryPoint": 1557,
"id": null,
"parameterSlots": 3,
"returnSlots": 0
},
"validator_revert_t_address": {
"entryPoint": 774,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"zero_value_for_split_t_uint256": {
"entryPoint": 1594,
"id": null,
"parameterSlots": 0,
"returnSlots": 1
}
},
"generatedSources": [
{
"ast": {
"nativeSrc": "0:10259:20",
"nodeType": "YulBlock",
"src": "0:10259:20",
"statements": [
{
"body": {
"nativeSrc": "47:35:20",
"nodeType": "YulBlock",
"src": "47:35:20",
"statements": [
{
"nativeSrc": "57:19:20",
"nodeType": "YulAssignment",
"src": "57:19:20",
"value": {
"arguments": [
{
"kind": "number",
"nativeSrc": "73:2:20",
"nodeType": "YulLiteral",
"src": "73:2:20",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "mload",
"nativeSrc": "67:5:20",
"nodeType": "YulIdentifier",
"src": "67:5:20"
},
"nativeSrc": "67:9:20",
"nodeType": "YulFunctionCall",
"src": "67:9:20"
},
"variableNames": [
{
"name": "memPtr",
"nativeSrc": "57:6:20",
"nodeType": "YulIdentifier",
"src": "57:6:20"
}
]
}
]
},
"name": "allocate_unbounded",
"nativeSrc": "7:75:20",
"nodeType": "YulFunctionDefinition",
"returnVariables": [
{
"name": "memPtr",
"nativeSrc": "40:6:20",
"nodeType": "YulTypedName",
"src": "40:6:20",
"type": ""
}
],
"src": "7:75:20"
},
{
"body": {
"nativeSrc": "177:28:20",
"nodeType": "YulBlock",
"src": "177:28:20",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "194:1:20",
"nodeType": "YulLiteral",
"src": "194:1:20",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "197:1:20",
"nodeType": "YulLiteral",
"src": "197:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "187:6:20",
"nodeType": "YulIdentifier",
"src": "187:6:20"
},
"nativeSrc": "187:12:20",
"nodeType": "YulFunctionCall",
"src": "187:12:20"
},
"nativeSrc": "187:12:20",
"nodeType": "YulExpressionStatement",
"src": "187:12:20"
}
]
},
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nativeSrc": "88:117:20",
"nodeType": "YulFunctionDefinition",
"src": "88:117:20"
},
{
"body": {
"nativeSrc": "300:28:20",
"nodeType": "YulBlock",
"src": "300:28:20",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "317:1:20",
"nodeType": "YulLiteral",
"src": "317:1:20",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "320:1:20",
"nodeType": "YulLiteral",
"src": "320:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "310:6:20",
"nodeType": "YulIdentifier",
"src": "310:6:20"
},
"nativeSrc": "310:12:20",
"nodeType": "YulFunctionCall",
"src": "310:12:20"
},
"nativeSrc": "310:12:20",
"nodeType": "YulExpressionStatement",
"src": "310:12:20"
}
]
},
"name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db",
"nativeSrc": "211:117:20",
"nodeType": "YulFunctionDefinition",
"src": "211:117:20"
},
{
"body": {
"nativeSrc": "379:81:20",
"nodeType": "YulBlock",
"src": "379:81:20",
"statements": [
{
"nativeSrc": "389:65:20",
"nodeType": "YulAssignment",
"src": "389:65:20",
"value": {
"arguments": [
{
"name": "value",
"nativeSrc": "404:5:20",
"nodeType": "YulIdentifier",
"src": "404:5:20"
},
{
"kind": "number",
"nativeSrc": "411:42:20",
"nodeType": "YulLiteral",
"src": "411:42:20",
"type": "",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
}
],
"functionName": {
"name": "and",
"nativeSrc": "400:3:20",
"nodeType": "YulIdentifier",
"src": "400:3:20"
},
"nativeSrc": "400:54:20",
"nodeType": "YulFunctionCall",
"src": "400:54:20"
},
"variableNames": [
{
"name": "cleaned",
"nativeSrc": "389:7:20",
"nodeType": "YulIdentifier",
"src": "389:7:20"
}
]
}
]
},
"name": "cleanup_t_uint160",
"nativeSrc": "334:126:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "361:5:20",
"nodeType": "YulTypedName",
"src": "361:5:20",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nativeSrc": "371:7:20",
"nodeType": "YulTypedName",
"src": "371:7:20",
"type": ""
}
],
"src": "334:126:20"
},
{
"body": {
"nativeSrc": "511:51:20",
"nodeType": "YulBlock",
"src": "511:51:20",
"statements": [
{
"nativeSrc": "521:35:20",
"nodeType": "YulAssignment",
"src": "521:35:20",
"value": {
"arguments": [
{
"name": "value",
"nativeSrc": "550:5:20",
"nodeType": "YulIdentifier",
"src": "550:5:20"
}
],
"functionName": {
"name": "cleanup_t_uint160",
"nativeSrc": "532:17:20",
"nodeType": "YulIdentifier",
"src": "532:17:20"
},
"nativeSrc": "532:24:20",
"nodeType": "YulFunctionCall",
"src": "532:24:20"
},
"variableNames": [
{
"name": "cleaned",
"nativeSrc": "521:7:20",
"nodeType": "YulIdentifier",
"src": "521:7:20"
}
]
}
]
},
"name": "cleanup_t_address",
"nativeSrc": "466:96:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "493:5:20",
"nodeType": "YulTypedName",
"src": "493:5:20",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nativeSrc": "503:7:20",
"nodeType": "YulTypedName",
"src": "503:7:20",
"type": ""
}
],
"src": "466:96:20"
},
{
"body": {
"nativeSrc": "611:79:20",
"nodeType": "YulBlock",
"src": "611:79:20",
"statements": [
{
"body": {
"nativeSrc": "668:16:20",
"nodeType": "YulBlock",
"src": "668:16:20",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "677:1:20",
"nodeType": "YulLiteral",
"src": "677:1:20",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "680:1:20",
"nodeType": "YulLiteral",
"src": "680:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "670:6:20",
"nodeType": "YulIdentifier",
"src": "670:6:20"
},
"nativeSrc": "670:12:20",
"nodeType": "YulFunctionCall",
"src": "670:12:20"
},
"nativeSrc": "670:12:20",
"nodeType": "YulExpressionStatement",
"src": "670:12:20"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nativeSrc": "634:5:20",
"nodeType": "YulIdentifier",
"src": "634:5:20"
},
{
"arguments": [
{
"name": "value",
"nativeSrc": "659:5:20",
"nodeType": "YulIdentifier",
"src": "659:5:20"
}
],
"functionName": {
"name": "cleanup_t_address",
"nativeSrc": "641:17:20",
"nodeType": "YulIdentifier",
"src": "641:17:20"
},
"nativeSrc": "641:24:20",
"nodeType": "YulFunctionCall",
"src": "641:24:20"
}
],
"functionName": {
"name": "eq",
"nativeSrc": "631:2:20",
"nodeType": "YulIdentifier",
"src": "631:2:20"
},
"nativeSrc": "631:35:20",
"nodeType": "YulFunctionCall",
"src": "631:35:20"
}
],
"functionName": {
"name": "iszero",
"nativeSrc": "624:6:20",
"nodeType": "YulIdentifier",
"src": "624:6:20"
},
"nativeSrc": "624:43:20",
"nodeType": "YulFunctionCall",
"src": "624:43:20"
},
"nativeSrc": "621:63:20",
"nodeType": "YulIf",
"src": "621:63:20"
}
]
},
"name": "validator_revert_t_address",
"nativeSrc": "568:122:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "604:5:20",
"nodeType": "YulTypedName",
"src": "604:5:20",
"type": ""
}
],
"src": "568:122:20"
},
{
"body": {
"nativeSrc": "759:80:20",
"nodeType": "YulBlock",
"src": "759:80:20",
"statements": [
{
"nativeSrc": "769:22:20",
"nodeType": "YulAssignment",
"src": "769:22:20",
"value": {
"arguments": [
{
"name": "offset",
"nativeSrc": "784:6:20",
"nodeType": "YulIdentifier",
"src": "784:6:20"
}
],
"functionName": {
"name": "mload",
"nativeSrc": "778:5:20",
"nodeType": "YulIdentifier",
"src": "778:5:20"
},
"nativeSrc": "778:13:20",
"nodeType": "YulFunctionCall",
"src": "778:13:20"
},
"variableNames": [
{
"name": "value",
"nativeSrc": "769:5:20",
"nodeType": "YulIdentifier",
"src": "769:5:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value",
"nativeSrc": "827:5:20",
"nodeType": "YulIdentifier",
"src": "827:5:20"
}
],
"functionName": {
"name": "validator_revert_t_address",
"nativeSrc": "800:26:20",
"nodeType": "YulIdentifier",
"src": "800:26:20"
},
"nativeSrc": "800:33:20",
"nodeType": "YulFunctionCall",
"src": "800:33:20"
},
"nativeSrc": "800:33:20",
"nodeType": "YulExpressionStatement",
"src": "800:33:20"
}
]
},
"name": "abi_decode_t_address_fromMemory",
"nativeSrc": "696:143:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nativeSrc": "737:6:20",
"nodeType": "YulTypedName",
"src": "737:6:20",
"type": ""
},
{
"name": "end",
"nativeSrc": "745:3:20",
"nodeType": "YulTypedName",
"src": "745:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "value",
"nativeSrc": "753:5:20",
"nodeType": "YulTypedName",
"src": "753:5:20",
"type": ""
}
],
"src": "696:143:20"
},
{
"body": {
"nativeSrc": "934:28:20",
"nodeType": "YulBlock",
"src": "934:28:20",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "951:1:20",
"nodeType": "YulLiteral",
"src": "951:1:20",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "954:1:20",
"nodeType": "YulLiteral",
"src": "954:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "944:6:20",
"nodeType": "YulIdentifier",
"src": "944:6:20"
},
"nativeSrc": "944:12:20",
"nodeType": "YulFunctionCall",
"src": "944:12:20"
},
"nativeSrc": "944:12:20",
"nodeType": "YulExpressionStatement",
"src": "944:12:20"
}
]
},
"name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d",
"nativeSrc": "845:117:20",
"nodeType": "YulFunctionDefinition",
"src": "845:117:20"
},
{
"body": {
"nativeSrc": "1057:28:20",
"nodeType": "YulBlock",
"src": "1057:28:20",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "1074:1:20",
"nodeType": "YulLiteral",
"src": "1074:1:20",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "1077:1:20",
"nodeType": "YulLiteral",
"src": "1077:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "1067:6:20",
"nodeType": "YulIdentifier",
"src": "1067:6:20"
},
"nativeSrc": "1067:12:20",
"nodeType": "YulFunctionCall",
"src": "1067:12:20"
},
"nativeSrc": "1067:12:20",
"nodeType": "YulExpressionStatement",
"src": "1067:12:20"
}
]
},
"name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae",
"nativeSrc": "968:117:20",
"nodeType": "YulFunctionDefinition",
"src": "968:117:20"
},
{
"body": {
"nativeSrc": "1139:54:20",
"nodeType": "YulBlock",
"src": "1139:54:20",
"statements": [
{
"nativeSrc": "1149:38:20",
"nodeType": "YulAssignment",
"src": "1149:38:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nativeSrc": "1167:5:20",
"nodeType": "YulIdentifier",
"src": "1167:5:20"
},
{
"kind": "number",
"nativeSrc": "1174:2:20",
"nodeType": "YulLiteral",
"src": "1174:2:20",
"type": "",
"value": "31"
}
],
"functionName": {
"name": "add",
"nativeSrc": "1163:3:20",
"nodeType": "YulIdentifier",
"src": "1163:3:20"
},
"nativeSrc": "1163:14:20",
"nodeType": "YulFunctionCall",
"src": "1163:14:20"
},
{
"arguments": [
{
"kind": "number",
"nativeSrc": "1183:2:20",
"nodeType": "YulLiteral",
"src": "1183:2:20",
"type": "",
"value": "31"
}
],
"functionName": {
"name": "not",
"nativeSrc": "1179:3:20",
"nodeType": "YulIdentifier",
"src": "1179:3:20"
},
"nativeSrc": "1179:7:20",
"nodeType": "YulFunctionCall",
"src": "1179:7:20"
}
],
"functionName": {
"name": "and",
"nativeSrc": "1159:3:20",
"nodeType": "YulIdentifier",
"src": "1159:3:20"
},
"nativeSrc": "1159:28:20",
"nodeType": "YulFunctionCall",
"src": "1159:28:20"
},
"variableNames": [
{
"name": "result",
"nativeSrc": "1149:6:20",
"nodeType": "YulIdentifier",
"src": "1149:6:20"
}
]
}
]
},
"name": "round_up_to_mul_of_32",
"nativeSrc": "1091:102:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "1122:5:20",
"nodeType": "YulTypedName",
"src": "1122:5:20",
"type": ""
}
],
"returnVariables": [
{
"name": "result",
"nativeSrc": "1132:6:20",
"nodeType": "YulTypedName",
"src": "1132:6:20",
"type": ""
}
],
"src": "1091:102:20"
},
{
"body": {
"nativeSrc": "1227:152:20",
"nodeType": "YulBlock",
"src": "1227:152:20",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "1244:1:20",
"nodeType": "YulLiteral",
"src": "1244:1:20",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "1247:77:20",
"nodeType": "YulLiteral",
"src": "1247:77:20",
"type": "",
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "1237:6:20",
"nodeType": "YulIdentifier",
"src": "1237:6:20"
},
"nativeSrc": "1237:88:20",
"nodeType": "YulFunctionCall",
"src": "1237:88:20"
},
"nativeSrc": "1237:88:20",
"nodeType": "YulExpressionStatement",
"src": "1237:88:20"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "1341:1:20",
"nodeType": "YulLiteral",
"src": "1341:1:20",
"type": "",
"value": "4"
},
{
"kind": "number",
"nativeSrc": "1344:4:20",
"nodeType": "YulLiteral",
"src": "1344:4:20",
"type": "",
"value": "0x41"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "1334:6:20",
"nodeType": "YulIdentifier",
"src": "1334:6:20"
},
"nativeSrc": "1334:15:20",
"nodeType": "YulFunctionCall",
"src": "1334:15:20"
},
"nativeSrc": "1334:15:20",
"nodeType": "YulExpressionStatement",
"src": "1334:15:20"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "1365:1:20",
"nodeType": "YulLiteral",
"src": "1365:1:20",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "1368:4:20",
"nodeType": "YulLiteral",
"src": "1368:4:20",
"type": "",
"value": "0x24"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "1358:6:20",
"nodeType": "YulIdentifier",
"src": "1358:6:20"
},
"nativeSrc": "1358:15:20",
"nodeType": "YulFunctionCall",
"src": "1358:15:20"
},
"nativeSrc": "1358:15:20",
"nodeType": "YulExpressionStatement",
"src": "1358:15:20"
}
]
},
"name": "panic_error_0x41",
"nativeSrc": "1199:180:20",
"nodeType": "YulFunctionDefinition",
"src": "1199:180:20"
},
{
"body": {
"nativeSrc": "1428:238:20",
"nodeType": "YulBlock",
"src": "1428:238:20",
"statements": [
{
"nativeSrc": "1438:58:20",
"nodeType": "YulVariableDeclaration",
"src": "1438:58:20",
"value": {
"arguments": [
{
"name": "memPtr",
"nativeSrc": "1460:6:20",
"nodeType": "YulIdentifier",
"src": "1460:6:20"
},
{
"arguments": [
{
"name": "size",
"nativeSrc": "1490:4:20",
"nodeType": "YulIdentifier",
"src": "1490:4:20"
}
],
"functionName": {
"name": "round_up_to_mul_of_32",
"nativeSrc": "1468:21:20",
"nodeType": "YulIdentifier",
"src": "1468:21:20"
},
"nativeSrc": "1468:27:20",
"nodeType": "YulFunctionCall",
"src": "1468:27:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "1456:3:20",
"nodeType": "YulIdentifier",
"src": "1456:3:20"
},
"nativeSrc": "1456:40:20",
"nodeType": "YulFunctionCall",
"src": "1456:40:20"
},
"variables": [
{
"name": "newFreePtr",
"nativeSrc": "1442:10:20",
"nodeType": "YulTypedName",
"src": "1442:10:20",
"type": ""
}
]
},
{
"body": {
"nativeSrc": "1607:22:20",
"nodeType": "YulBlock",
"src": "1607:22:20",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x41",
"nativeSrc": "1609:16:20",
"nodeType": "YulIdentifier",
"src": "1609:16:20"
},
"nativeSrc": "1609:18:20",
"nodeType": "YulFunctionCall",
"src": "1609:18:20"
},
"nativeSrc": "1609:18:20",
"nodeType": "YulExpressionStatement",
"src": "1609:18:20"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "newFreePtr",
"nativeSrc": "1550:10:20",
"nodeType": "YulIdentifier",
"src": "1550:10:20"
},
{
"kind": "number",
"nativeSrc": "1562:18:20",
"nodeType": "YulLiteral",
"src": "1562:18:20",
"type": "",
"value": "0xffffffffffffffff"
}
],
"functionName": {
"name": "gt",
"nativeSrc": "1547:2:20",
"nodeType": "YulIdentifier",
"src": "1547:2:20"
},
"nativeSrc": "1547:34:20",
"nodeType": "YulFunctionCall",
"src": "1547:34:20"
},
{
"arguments": [
{
"name": "newFreePtr",
"nativeSrc": "1586:10:20",
"nodeType": "YulIdentifier",
"src": "1586:10:20"
},
{
"name": "memPtr",
"nativeSrc": "1598:6:20",
"nodeType": "YulIdentifier",
"src": "1598:6:20"
}
],
"functionName": {
"name": "lt",
"nativeSrc": "1583:2:20",
"nodeType": "YulIdentifier",
"src": "1583:2:20"
},
"nativeSrc": "1583:22:20",
"nodeType": "YulFunctionCall",
"src": "1583:22:20"
}
],
"functionName": {
"name": "or",
"nativeSrc": "1544:2:20",
"nodeType": "YulIdentifier",
"src": "1544:2:20"
},
"nativeSrc": "1544:62:20",
"nodeType": "YulFunctionCall",
"src": "1544:62:20"
},
"nativeSrc": "1541:88:20",
"nodeType": "YulIf",
"src": "1541:88:20"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "1645:2:20",
"nodeType": "YulLiteral",
"src": "1645:2:20",
"type": "",
"value": "64"
},
{
"name": "newFreePtr",
"nativeSrc": "1649:10:20",
"nodeType": "YulIdentifier",
"src": "1649:10:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "1638:6:20",
"nodeType": "YulIdentifier",
"src": "1638:6:20"
},
"nativeSrc": "1638:22:20",
"nodeType": "YulFunctionCall",
"src": "1638:22:20"
},
"nativeSrc": "1638:22:20",
"nodeType": "YulExpressionStatement",
"src": "1638:22:20"
}
]
},
"name": "finalize_allocation",
"nativeSrc": "1385:281:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nativeSrc": "1414:6:20",
"nodeType": "YulTypedName",
"src": "1414:6:20",
"type": ""
},
{
"name": "size",
"nativeSrc": "1422:4:20",
"nodeType": "YulTypedName",
"src": "1422:4:20",
"type": ""
}
],
"src": "1385:281:20"
},
{
"body": {
"nativeSrc": "1713:88:20",
"nodeType": "YulBlock",
"src": "1713:88:20",
"statements": [
{
"nativeSrc": "1723:30:20",
"nodeType": "YulAssignment",
"src": "1723:30:20",
"value": {
"arguments": [],
"functionName": {
"name": "allocate_unbounded",
"nativeSrc": "1733:18:20",
"nodeType": "YulIdentifier",
"src": "1733:18:20"
},
"nativeSrc": "1733:20:20",
"nodeType": "YulFunctionCall",
"src": "1733:20:20"
},
"variableNames": [
{
"name": "memPtr",
"nativeSrc": "1723:6:20",
"nodeType": "YulIdentifier",
"src": "1723:6:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "memPtr",
"nativeSrc": "1782:6:20",
"nodeType": "YulIdentifier",
"src": "1782:6:20"
},
{
"name": "size",
"nativeSrc": "1790:4:20",
"nodeType": "YulIdentifier",
"src": "1790:4:20"
}
],
"functionName": {
"name": "finalize_allocation",
"nativeSrc": "1762:19:20",
"nodeType": "YulIdentifier",
"src": "1762:19:20"
},
"nativeSrc": "1762:33:20",
"nodeType": "YulFunctionCall",
"src": "1762:33:20"
},
"nativeSrc": "1762:33:20",
"nodeType": "YulExpressionStatement",
"src": "1762:33:20"
}
]
},
"name": "allocate_memory",
"nativeSrc": "1672:129:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "size",
"nativeSrc": "1697:4:20",
"nodeType": "YulTypedName",
"src": "1697:4:20",
"type": ""
}
],
"returnVariables": [
{
"name": "memPtr",
"nativeSrc": "1706:6:20",
"nodeType": "YulTypedName",
"src": "1706:6:20",
"type": ""
}
],
"src": "1672:129:20"
},
{
"body": {
"nativeSrc": "1874:241:20",
"nodeType": "YulBlock",
"src": "1874:241:20",
"statements": [
{
"body": {
"nativeSrc": "1979:22:20",
"nodeType": "YulBlock",
"src": "1979:22:20",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x41",
"nativeSrc": "1981:16:20",
"nodeType": "YulIdentifier",
"src": "1981:16:20"
},
"nativeSrc": "1981:18:20",
"nodeType": "YulFunctionCall",
"src": "1981:18:20"
},
"nativeSrc": "1981:18:20",
"nodeType": "YulExpressionStatement",
"src": "1981:18:20"
}
]
},
"condition": {
"arguments": [
{
"name": "length",
"nativeSrc": "1951:6:20",
"nodeType": "YulIdentifier",
"src": "1951:6:20"
},
{
"kind": "number",
"nativeSrc": "1959:18:20",
"nodeType": "YulLiteral",
"src": "1959:18:20",
"type": "",
"value": "0xffffffffffffffff"
}
],
"functionName": {
"name": "gt",
"nativeSrc": "1948:2:20",
"nodeType": "YulIdentifier",
"src": "1948:2:20"
},
"nativeSrc": "1948:30:20",
"nodeType": "YulFunctionCall",
"src": "1948:30:20"
},
"nativeSrc": "1945:56:20",
"nodeType": "YulIf",
"src": "1945:56:20"
},
{
"nativeSrc": "2011:37:20",
"nodeType": "YulAssignment",
"src": "2011:37:20",
"value": {
"arguments": [
{
"name": "length",
"nativeSrc": "2041:6:20",
"nodeType": "YulIdentifier",
"src": "2041:6:20"
}
],
"functionName": {
"name": "round_up_to_mul_of_32",
"nativeSrc": "2019:21:20",
"nodeType": "YulIdentifier",
"src": "2019:21:20"
},
"nativeSrc": "2019:29:20",
"nodeType": "YulFunctionCall",
"src": "2019:29:20"
},
"variableNames": [
{
"name": "size",
"nativeSrc": "2011:4:20",
"nodeType": "YulIdentifier",
"src": "2011:4:20"
}
]
},
{
"nativeSrc": "2085:23:20",
"nodeType": "YulAssignment",
"src": "2085:23:20",
"value": {
"arguments": [
{
"name": "size",
"nativeSrc": "2097:4:20",
"nodeType": "YulIdentifier",
"src": "2097:4:20"
},
{
"kind": "number",
"nativeSrc": "2103:4:20",
"nodeType": "YulLiteral",
"src": "2103:4:20",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "2093:3:20",
"nodeType": "YulIdentifier",
"src": "2093:3:20"
},
"nativeSrc": "2093:15:20",
"nodeType": "YulFunctionCall",
"src": "2093:15:20"
},
"variableNames": [
{
"name": "size",
"nativeSrc": "2085:4:20",
"nodeType": "YulIdentifier",
"src": "2085:4:20"
}
]
}
]
},
"name": "array_allocation_size_t_string_memory_ptr",
"nativeSrc": "1807:308:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "length",
"nativeSrc": "1858:6:20",
"nodeType": "YulTypedName",
"src": "1858:6:20",
"type": ""
}
],
"returnVariables": [
{
"name": "size",
"nativeSrc": "1869:4:20",
"nodeType": "YulTypedName",
"src": "1869:4:20",
"type": ""
}
],
"src": "1807:308:20"
},
{
"body": {
"nativeSrc": "2183:77:20",
"nodeType": "YulBlock",
"src": "2183:77:20",
"statements": [
{
"expression": {
"arguments": [
{
"name": "dst",
"nativeSrc": "2200:3:20",
"nodeType": "YulIdentifier",
"src": "2200:3:20"
},
{
"name": "src",
"nativeSrc": "2205:3:20",
"nodeType": "YulIdentifier",
"src": "2205:3:20"
},
{
"name": "length",
"nativeSrc": "2210:6:20",
"nodeType": "YulIdentifier",
"src": "2210:6:20"
}
],
"functionName": {
"name": "mcopy",
"nativeSrc": "2194:5:20",
"nodeType": "YulIdentifier",
"src": "2194:5:20"
},
"nativeSrc": "2194:23:20",
"nodeType": "YulFunctionCall",
"src": "2194:23:20"
},
"nativeSrc": "2194:23:20",
"nodeType": "YulExpressionStatement",
"src": "2194:23:20"
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "dst",
"nativeSrc": "2237:3:20",
"nodeType": "YulIdentifier",
"src": "2237:3:20"
},
{
"name": "length",
"nativeSrc": "2242:6:20",
"nodeType": "YulIdentifier",
"src": "2242:6:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "2233:3:20",
"nodeType": "YulIdentifier",
"src": "2233:3:20"
},
"nativeSrc": "2233:16:20",
"nodeType": "YulFunctionCall",
"src": "2233:16:20"
},
{
"kind": "number",
"nativeSrc": "2251:1:20",
"nodeType": "YulLiteral",
"src": "2251:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "2226:6:20",
"nodeType": "YulIdentifier",
"src": "2226:6:20"
},
"nativeSrc": "2226:27:20",
"nodeType": "YulFunctionCall",
"src": "2226:27:20"
},
"nativeSrc": "2226:27:20",
"nodeType": "YulExpressionStatement",
"src": "2226:27:20"
}
]
},
"name": "copy_memory_to_memory_with_cleanup",
"nativeSrc": "2121:139:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "src",
"nativeSrc": "2165:3:20",
"nodeType": "YulTypedName",
"src": "2165:3:20",
"type": ""
},
{
"name": "dst",
"nativeSrc": "2170:3:20",
"nodeType": "YulTypedName",
"src": "2170:3:20",
"type": ""
},
{
"name": "length",
"nativeSrc": "2175:6:20",
"nodeType": "YulTypedName",
"src": "2175:6:20",
"type": ""
}
],
"src": "2121:139:20"
},
{
"body": {
"nativeSrc": "2361:339:20",
"nodeType": "YulBlock",
"src": "2361:339:20",
"statements": [
{
"nativeSrc": "2371:75:20",
"nodeType": "YulAssignment",
"src": "2371:75:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "length",
"nativeSrc": "2438:6:20",
"nodeType": "YulIdentifier",
"src": "2438:6:20"
}
],
"functionName": {
"name": "array_allocation_size_t_string_memory_ptr",
"nativeSrc": "2396:41:20",
"nodeType": "YulIdentifier",
"src": "2396:41:20"
},
"nativeSrc": "2396:49:20",
"nodeType": "YulFunctionCall",
"src": "2396:49:20"
}
],
"functionName": {
"name": "allocate_memory",
"nativeSrc": "2380:15:20",
"nodeType": "YulIdentifier",
"src": "2380:15:20"
},
"nativeSrc": "2380:66:20",
"nodeType": "YulFunctionCall",
"src": "2380:66:20"
},
"variableNames": [
{
"name": "array",
"nativeSrc": "2371:5:20",
"nodeType": "YulIdentifier",
"src": "2371:5:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "array",
"nativeSrc": "2462:5:20",
"nodeType": "YulIdentifier",
"src": "2462:5:20"
},
{
"name": "length",
"nativeSrc": "2469:6:20",
"nodeType": "YulIdentifier",
"src": "2469:6:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "2455:6:20",
"nodeType": "YulIdentifier",
"src": "2455:6:20"
},
"nativeSrc": "2455:21:20",
"nodeType": "YulFunctionCall",
"src": "2455:21:20"
},
"nativeSrc": "2455:21:20",
"nodeType": "YulExpressionStatement",
"src": "2455:21:20"
},
{
"nativeSrc": "2485:27:20",
"nodeType": "YulVariableDeclaration",
"src": "2485:27:20",
"value": {
"arguments": [
{
"name": "array",
"nativeSrc": "2500:5:20",
"nodeType": "YulIdentifier",
"src": "2500:5:20"
},
{
"kind": "number",
"nativeSrc": "2507:4:20",
"nodeType": "YulLiteral",
"src": "2507:4:20",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "2496:3:20",
"nodeType": "YulIdentifier",
"src": "2496:3:20"
},
"nativeSrc": "2496:16:20",
"nodeType": "YulFunctionCall",
"src": "2496:16:20"
},
"variables": [
{
"name": "dst",
"nativeSrc": "2489:3:20",
"nodeType": "YulTypedName",
"src": "2489:3:20",
"type": ""
}
]
},
{
"body": {
"nativeSrc": "2550:83:20",
"nodeType": "YulBlock",
"src": "2550:83:20",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae",
"nativeSrc": "2552:77:20",
"nodeType": "YulIdentifier",
"src": "2552:77:20"
},
"nativeSrc": "2552:79:20",
"nodeType": "YulFunctionCall",
"src": "2552:79:20"
},
"nativeSrc": "2552:79:20",
"nodeType": "YulExpressionStatement",
"src": "2552:79:20"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "src",
"nativeSrc": "2531:3:20",
"nodeType": "YulIdentifier",
"src": "2531:3:20"
},
{
"name": "length",
"nativeSrc": "2536:6:20",
"nodeType": "YulIdentifier",
"src": "2536:6:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "2527:3:20",
"nodeType": "YulIdentifier",
"src": "2527:3:20"
},
"nativeSrc": "2527:16:20",
"nodeType": "YulFunctionCall",
"src": "2527:16:20"
},
{
"name": "end",
"nativeSrc": "2545:3:20",
"nodeType": "YulIdentifier",
"src": "2545:3:20"
}
],
"functionName": {
"name": "gt",
"nativeSrc": "2524:2:20",
"nodeType": "YulIdentifier",
"src": "2524:2:20"
},
"nativeSrc": "2524:25:20",
"nodeType": "YulFunctionCall",
"src": "2524:25:20"
},
"nativeSrc": "2521:112:20",
"nodeType": "YulIf",
"src": "2521:112:20"
},
{
"expression": {
"arguments": [
{
"name": "src",
"nativeSrc": "2677:3:20",
"nodeType": "YulIdentifier",
"src": "2677:3:20"
},
{
"name": "dst",
"nativeSrc": "2682:3:20",
"nodeType": "YulIdentifier",
"src": "2682:3:20"
},
{
"name": "length",
"nativeSrc": "2687:6:20",
"nodeType": "YulIdentifier",
"src": "2687:6:20"
}
],
"functionName": {
"name": "copy_memory_to_memory_with_cleanup",
"nativeSrc": "2642:34:20",
"nodeType": "YulIdentifier",
"src": "2642:34:20"
},
"nativeSrc": "2642:52:20",
"nodeType": "YulFunctionCall",
"src": "2642:52:20"
},
"nativeSrc": "2642:52:20",
"nodeType": "YulExpressionStatement",
"src": "2642:52:20"
}
]
},
"name": "abi_decode_available_length_t_string_memory_ptr_fromMemory",
"nativeSrc": "2266:434:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "src",
"nativeSrc": "2334:3:20",
"nodeType": "YulTypedName",
"src": "2334:3:20",
"type": ""
},
{
"name": "length",
"nativeSrc": "2339:6:20",
"nodeType": "YulTypedName",
"src": "2339:6:20",
"type": ""
},
{
"name": "end",
"nativeSrc": "2347:3:20",
"nodeType": "YulTypedName",
"src": "2347:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "array",
"nativeSrc": "2355:5:20",
"nodeType": "YulTypedName",
"src": "2355:5:20",
"type": ""
}
],
"src": "2266:434:20"
},
{
"body": {
"nativeSrc": "2793:282:20",
"nodeType": "YulBlock",
"src": "2793:282:20",
"statements": [
{
"body": {
"nativeSrc": "2842:83:20",
"nodeType": "YulBlock",
"src": "2842:83:20",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d",
"nativeSrc": "2844:77:20",
"nodeType": "YulIdentifier",
"src": "2844:77:20"
},
"nativeSrc": "2844:79:20",
"nodeType": "YulFunctionCall",
"src": "2844:79:20"
},
"nativeSrc": "2844:79:20",
"nodeType": "YulExpressionStatement",
"src": "2844:79:20"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"arguments": [
{
"name": "offset",
"nativeSrc": "2821:6:20",
"nodeType": "YulIdentifier",
"src": "2821:6:20"
},
{
"kind": "number",
"nativeSrc": "2829:4:20",
"nodeType": "YulLiteral",
"src": "2829:4:20",
"type": "",
"value": "0x1f"
}
],
"functionName": {
"name": "add",
"nativeSrc": "2817:3:20",
"nodeType": "YulIdentifier",
"src": "2817:3:20"
},
"nativeSrc": "2817:17:20",
"nodeType": "YulFunctionCall",
"src": "2817:17:20"
},
{
"name": "end",
"nativeSrc": "2836:3:20",
"nodeType": "YulIdentifier",
"src": "2836:3:20"
}
],
"functionName": {
"name": "slt",
"nativeSrc": "2813:3:20",
"nodeType": "YulIdentifier",
"src": "2813:3:20"
},
"nativeSrc": "2813:27:20",
"nodeType": "YulFunctionCall",
"src": "2813:27:20"
}
],
"functionName": {
"name": "iszero",
"nativeSrc": "2806:6:20",
"nodeType": "YulIdentifier",
"src": "2806:6:20"
},
"nativeSrc": "2806:35:20",
"nodeType": "YulFunctionCall",
"src": "2806:35:20"
},
"nativeSrc": "2803:122:20",
"nodeType": "YulIf",
"src": "2803:122:20"
},
{
"nativeSrc": "2934:27:20",
"nodeType": "YulVariableDeclaration",
"src": "2934:27:20",
"value": {
"arguments": [
{
"name": "offset",
"nativeSrc": "2954:6:20",
"nodeType": "YulIdentifier",
"src": "2954:6:20"
}
],
"functionName": {
"name": "mload",
"nativeSrc": "2948:5:20",
"nodeType": "YulIdentifier",
"src": "2948:5:20"
},
"nativeSrc": "2948:13:20",
"nodeType": "YulFunctionCall",
"src": "2948:13:20"
},
"variables": [
{
"name": "length",
"nativeSrc": "2938:6:20",
"nodeType": "YulTypedName",
"src": "2938:6:20",
"type": ""
}
]
},
{
"nativeSrc": "2970:99:20",
"nodeType": "YulAssignment",
"src": "2970:99:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "offset",
"nativeSrc": "3042:6:20",
"nodeType": "YulIdentifier",
"src": "3042:6:20"
},
{
"kind": "number",
"nativeSrc": "3050:4:20",
"nodeType": "YulLiteral",
"src": "3050:4:20",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "3038:3:20",
"nodeType": "YulIdentifier",
"src": "3038:3:20"
},
"nativeSrc": "3038:17:20",
"nodeType": "YulFunctionCall",
"src": "3038:17:20"
},
{
"name": "length",
"nativeSrc": "3057:6:20",
"nodeType": "YulIdentifier",
"src": "3057:6:20"
},
{
"name": "end",
"nativeSrc": "3065:3:20",
"nodeType": "YulIdentifier",
"src": "3065:3:20"
}
],
"functionName": {
"name": "abi_decode_available_length_t_string_memory_ptr_fromMemory",
"nativeSrc": "2979:58:20",
"nodeType": "YulIdentifier",
"src": "2979:58:20"
},
"nativeSrc": "2979:90:20",
"nodeType": "YulFunctionCall",
"src": "2979:90:20"
},
"variableNames": [
{
"name": "array",
"nativeSrc": "2970:5:20",
"nodeType": "YulIdentifier",
"src": "2970:5:20"
}
]
}
]
},
"name": "abi_decode_t_string_memory_ptr_fromMemory",
"nativeSrc": "2720:355:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nativeSrc": "2771:6:20",
"nodeType": "YulTypedName",
"src": "2771:6:20",
"type": ""
},
{
"name": "end",
"nativeSrc": "2779:3:20",
"nodeType": "YulTypedName",
"src": "2779:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "array",
"nativeSrc": "2787:5:20",
"nodeType": "YulTypedName",
"src": "2787:5:20",
"type": ""
}
],
"src": "2720:355:20"
},
{
"body": {
"nativeSrc": "3212:878:20",
"nodeType": "YulBlock",
"src": "3212:878:20",
"statements": [
{
"body": {
"nativeSrc": "3258:83:20",
"nodeType": "YulBlock",
"src": "3258:83:20",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nativeSrc": "3260:77:20",
"nodeType": "YulIdentifier",
"src": "3260:77:20"
},
"nativeSrc": "3260:79:20",
"nodeType": "YulFunctionCall",
"src": "3260:79:20"
},
"nativeSrc": "3260:79:20",
"nodeType": "YulExpressionStatement",
"src": "3260:79:20"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "dataEnd",
"nativeSrc": "3233:7:20",
"nodeType": "YulIdentifier",
"src": "3233:7:20"
},
{
"name": "headStart",
"nativeSrc": "3242:9:20",
"nodeType": "YulIdentifier",
"src": "3242:9:20"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "3229:3:20",
"nodeType": "YulIdentifier",
"src": "3229:3:20"
},
"nativeSrc": "3229:23:20",
"nodeType": "YulFunctionCall",
"src": "3229:23:20"
},
{
"kind": "number",
"nativeSrc": "3254:2:20",
"nodeType": "YulLiteral",
"src": "3254:2:20",
"type": "",
"value": "96"
}
],
"functionName": {
"name": "slt",
"nativeSrc": "3225:3:20",
"nodeType": "YulIdentifier",
"src": "3225:3:20"
},
"nativeSrc": "3225:32:20",
"nodeType": "YulFunctionCall",
"src": "3225:32:20"
},
"nativeSrc": "3222:119:20",
"nodeType": "YulIf",
"src": "3222:119:20"
},
{
"nativeSrc": "3351:128:20",
"nodeType": "YulBlock",
"src": "3351:128:20",
"statements": [
{
"nativeSrc": "3366:15:20",
"nodeType": "YulVariableDeclaration",
"src": "3366:15:20",
"value": {
"kind": "number",
"nativeSrc": "3380:1:20",
"nodeType": "YulLiteral",
"src": "3380:1:20",
"type": "",
"value": "0"
},
"variables": [
{
"name": "offset",
"nativeSrc": "3370:6:20",
"nodeType": "YulTypedName",
"src": "3370:6:20",
"type": ""
}
]
},
{
"nativeSrc": "3395:74:20",
"nodeType": "YulAssignment",
"src": "3395:74:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "3441:9:20",
"nodeType": "YulIdentifier",
"src": "3441:9:20"
},
{
"name": "offset",
"nativeSrc": "3452:6:20",
"nodeType": "YulIdentifier",
"src": "3452:6:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "3437:3:20",
"nodeType": "YulIdentifier",
"src": "3437:3:20"
},
"nativeSrc": "3437:22:20",
"nodeType": "YulFunctionCall",
"src": "3437:22:20"
},
{
"name": "dataEnd",
"nativeSrc": "3461:7:20",
"nodeType": "YulIdentifier",
"src": "3461:7:20"
}
],
"functionName": {
"name": "abi_decode_t_address_fromMemory",
"nativeSrc": "3405:31:20",
"nodeType": "YulIdentifier",
"src": "3405:31:20"
},
"nativeSrc": "3405:64:20",
"nodeType": "YulFunctionCall",
"src": "3405:64:20"
},
"variableNames": [
{
"name": "value0",
"nativeSrc": "3395:6:20",
"nodeType": "YulIdentifier",
"src": "3395:6:20"
}
]
}
]
},
{
"nativeSrc": "3489:292:20",
"nodeType": "YulBlock",
"src": "3489:292:20",
"statements": [
{
"nativeSrc": "3504:39:20",
"nodeType": "YulVariableDeclaration",
"src": "3504:39:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "3528:9:20",
"nodeType": "YulIdentifier",
"src": "3528:9:20"
},
{
"kind": "number",
"nativeSrc": "3539:2:20",
"nodeType": "YulLiteral",
"src": "3539:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "3524:3:20",
"nodeType": "YulIdentifier",
"src": "3524:3:20"
},
"nativeSrc": "3524:18:20",
"nodeType": "YulFunctionCall",
"src": "3524:18:20"
}
],
"functionName": {
"name": "mload",
"nativeSrc": "3518:5:20",
"nodeType": "YulIdentifier",
"src": "3518:5:20"
},
"nativeSrc": "3518:25:20",
"nodeType": "YulFunctionCall",
"src": "3518:25:20"
},
"variables": [
{
"name": "offset",
"nativeSrc": "3508:6:20",
"nodeType": "YulTypedName",
"src": "3508:6:20",
"type": ""
}
]
},
{
"body": {
"nativeSrc": "3590:83:20",
"nodeType": "YulBlock",
"src": "3590:83:20",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db",
"nativeSrc": "3592:77:20",
"nodeType": "YulIdentifier",
"src": "3592:77:20"
},
"nativeSrc": "3592:79:20",
"nodeType": "YulFunctionCall",
"src": "3592:79:20"
},
"nativeSrc": "3592:79:20",
"nodeType": "YulExpressionStatement",
"src": "3592:79:20"
}
]
},
"condition": {
"arguments": [
{
"name": "offset",
"nativeSrc": "3562:6:20",
"nodeType": "YulIdentifier",
"src": "3562:6:20"
},
{
"kind": "number",
"nativeSrc": "3570:18:20",
"nodeType": "YulLiteral",
"src": "3570:18:20",
"type": "",
"value": "0xffffffffffffffff"
}
],
"functionName": {
"name": "gt",
"nativeSrc": "3559:2:20",
"nodeType": "YulIdentifier",
"src": "3559:2:20"
},
"nativeSrc": "3559:30:20",
"nodeType": "YulFunctionCall",
"src": "3559:30:20"
},
"nativeSrc": "3556:117:20",
"nodeType": "YulIf",
"src": "3556:117:20"
},
{
"nativeSrc": "3687:84:20",
"nodeType": "YulAssignment",
"src": "3687:84:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "3743:9:20",
"nodeType": "YulIdentifier",
"src": "3743:9:20"
},
{
"name": "offset",
"nativeSrc": "3754:6:20",
"nodeType": "YulIdentifier",
"src": "3754:6:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "3739:3:20",
"nodeType": "YulIdentifier",
"src": "3739:3:20"
},
"nativeSrc": "3739:22:20",
"nodeType": "YulFunctionCall",
"src": "3739:22:20"
},
{
"name": "dataEnd",
"nativeSrc": "3763:7:20",
"nodeType": "YulIdentifier",
"src": "3763:7:20"
}
],
"functionName": {
"name": "abi_decode_t_string_memory_ptr_fromMemory",
"nativeSrc": "3697:41:20",
"nodeType": "YulIdentifier",
"src": "3697:41:20"
},
"nativeSrc": "3697:74:20",
"nodeType": "YulFunctionCall",
"src": "3697:74:20"
},
"variableNames": [
{
"name": "value1",
"nativeSrc": "3687:6:20",
"nodeType": "YulIdentifier",
"src": "3687:6:20"
}
]
}
]
},
{
"nativeSrc": "3791:292:20",
"nodeType": "YulBlock",
"src": "3791:292:20",
"statements": [
{
"nativeSrc": "3806:39:20",
"nodeType": "YulVariableDeclaration",
"src": "3806:39:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "3830:9:20",
"nodeType": "YulIdentifier",
"src": "3830:9:20"
},
{
"kind": "number",
"nativeSrc": "3841:2:20",
"nodeType": "YulLiteral",
"src": "3841:2:20",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "add",
"nativeSrc": "3826:3:20",
"nodeType": "YulIdentifier",
"src": "3826:3:20"
},
"nativeSrc": "3826:18:20",
"nodeType": "YulFunctionCall",
"src": "3826:18:20"
}
],
"functionName": {
"name": "mload",
"nativeSrc": "3820:5:20",
"nodeType": "YulIdentifier",
"src": "3820:5:20"
},
"nativeSrc": "3820:25:20",
"nodeType": "YulFunctionCall",
"src": "3820:25:20"
},
"variables": [
{
"name": "offset",
"nativeSrc": "3810:6:20",
"nodeType": "YulTypedName",
"src": "3810:6:20",
"type": ""
}
]
},
{
"body": {
"nativeSrc": "3892:83:20",
"nodeType": "YulBlock",
"src": "3892:83:20",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db",
"nativeSrc": "3894:77:20",
"nodeType": "YulIdentifier",
"src": "3894:77:20"
},
"nativeSrc": "3894:79:20",
"nodeType": "YulFunctionCall",
"src": "3894:79:20"
},
"nativeSrc": "3894:79:20",
"nodeType": "YulExpressionStatement",
"src": "3894:79:20"
}
]
},
"condition": {
"arguments": [
{
"name": "offset",
"nativeSrc": "3864:6:20",
"nodeType": "YulIdentifier",
"src": "3864:6:20"
},
{
"kind": "number",
"nativeSrc": "3872:18:20",
"nodeType": "YulLiteral",
"src": "3872:18:20",
"type": "",
"value": "0xffffffffffffffff"
}
],
"functionName": {
"name": "gt",
"nativeSrc": "3861:2:20",
"nodeType": "YulIdentifier",
"src": "3861:2:20"
},
"nativeSrc": "3861:30:20",
"nodeType": "YulFunctionCall",
"src": "3861:30:20"
},
"nativeSrc": "3858:117:20",
"nodeType": "YulIf",
"src": "3858:117:20"
},
{
"nativeSrc": "3989:84:20",
"nodeType": "YulAssignment",
"src": "3989:84:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "4045:9:20",
"nodeType": "YulIdentifier",
"src": "4045:9:20"
},
{
"name": "offset",
"nativeSrc": "4056:6:20",
"nodeType": "YulIdentifier",
"src": "4056:6:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "4041:3:20",
"nodeType": "YulIdentifier",
"src": "4041:3:20"
},
"nativeSrc": "4041:22:20",
"nodeType": "YulFunctionCall",
"src": "4041:22:20"
},
{
"name": "dataEnd",
"nativeSrc": "4065:7:20",
"nodeType": "YulIdentifier",
"src": "4065:7:20"
}
],
"functionName": {
"name": "abi_decode_t_string_memory_ptr_fromMemory",
"nativeSrc": "3999:41:20",
"nodeType": "YulIdentifier",
"src": "3999:41:20"
},
"nativeSrc": "3999:74:20",
"nodeType": "YulFunctionCall",
"src": "3999:74:20"
},
"variableNames": [
{
"name": "value2",
"nativeSrc": "3989:6:20",
"nodeType": "YulIdentifier",
"src": "3989:6:20"
}
]
}
]
}
]
},
"name": "abi_decode_tuple_t_addresst_string_memory_ptrt_string_memory_ptr_fromMemory",
"nativeSrc": "3081:1009:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "3166:9:20",
"nodeType": "YulTypedName",
"src": "3166:9:20",
"type": ""
},
{
"name": "dataEnd",
"nativeSrc": "3177:7:20",
"nodeType": "YulTypedName",
"src": "3177:7:20",
"type": ""
}
],
"returnVariables": [
{
"name": "value0",
"nativeSrc": "3189:6:20",
"nodeType": "YulTypedName",
"src": "3189:6:20",
"type": ""
},
{
"name": "value1",
"nativeSrc": "3197:6:20",
"nodeType": "YulTypedName",
"src": "3197:6:20",
"type": ""
},
{
"name": "value2",
"nativeSrc": "3205:6:20",
"nodeType": "YulTypedName",
"src": "3205:6:20",
"type": ""
}
],
"src": "3081:1009:20"
},
{
"body": {
"nativeSrc": "4155:40:20",
"nodeType": "YulBlock",
"src": "4155:40:20",
"statements": [
{
"nativeSrc": "4166:22:20",
"nodeType": "YulAssignment",
"src": "4166:22:20",
"value": {
"arguments": [
{
"name": "value",
"nativeSrc": "4182:5:20",
"nodeType": "YulIdentifier",
"src": "4182:5:20"
}
],
"functionName": {
"name": "mload",
"nativeSrc": "4176:5:20",
"nodeType": "YulIdentifier",
"src": "4176:5:20"
},
"nativeSrc": "4176:12:20",
"nodeType": "YulFunctionCall",
"src": "4176:12:20"
},
"variableNames": [
{
"name": "length",
"nativeSrc": "4166:6:20",
"nodeType": "YulIdentifier",
"src": "4166:6:20"
}
]
}
]
},
"name": "array_length_t_string_memory_ptr",
"nativeSrc": "4096:99:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "4138:5:20",
"nodeType": "YulTypedName",
"src": "4138:5:20",
"type": ""
}
],
"returnVariables": [
{
"name": "length",
"nativeSrc": "4148:6:20",
"nodeType": "YulTypedName",
"src": "4148:6:20",
"type": ""
}
],
"src": "4096:99:20"
},
{
"body": {
"nativeSrc": "4229:152:20",
"nodeType": "YulBlock",
"src": "4229:152:20",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "4246:1:20",
"nodeType": "YulLiteral",
"src": "4246:1:20",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "4249:77:20",
"nodeType": "YulLiteral",
"src": "4249:77:20",
"type": "",
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "4239:6:20",
"nodeType": "YulIdentifier",
"src": "4239:6:20"
},
"nativeSrc": "4239:88:20",
"nodeType": "YulFunctionCall",
"src": "4239:88:20"
},
"nativeSrc": "4239:88:20",
"nodeType": "YulExpressionStatement",
"src": "4239:88:20"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "4343:1:20",
"nodeType": "YulLiteral",
"src": "4343:1:20",
"type": "",
"value": "4"
},
{
"kind": "number",
"nativeSrc": "4346:4:20",
"nodeType": "YulLiteral",
"src": "4346:4:20",
"type": "",
"value": "0x22"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "4336:6:20",
"nodeType": "YulIdentifier",
"src": "4336:6:20"
},
"nativeSrc": "4336:15:20",
"nodeType": "YulFunctionCall",
"src": "4336:15:20"
},
"nativeSrc": "4336:15:20",
"nodeType": "YulExpressionStatement",
"src": "4336:15:20"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "4367:1:20",
"nodeType": "YulLiteral",
"src": "4367:1:20",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "4370:4:20",
"nodeType": "YulLiteral",
"src": "4370:4:20",
"type": "",
"value": "0x24"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "4360:6:20",
"nodeType": "YulIdentifier",
"src": "4360:6:20"
},
"nativeSrc": "4360:15:20",
"nodeType": "YulFunctionCall",
"src": "4360:15:20"
},
"nativeSrc": "4360:15:20",
"nodeType": "YulExpressionStatement",
"src": "4360:15:20"
}
]
},
"name": "panic_error_0x22",
"nativeSrc": "4201:180:20",
"nodeType": "YulFunctionDefinition",
"src": "4201:180:20"
},
{
"body": {
"nativeSrc": "4438:269:20",
"nodeType": "YulBlock",
"src": "4438:269:20",
"statements": [
{
"nativeSrc": "4448:22:20",
"nodeType": "YulAssignment",
"src": "4448:22:20",
"value": {
"arguments": [
{
"name": "data",
"nativeSrc": "4462:4:20",
"nodeType": "YulIdentifier",
"src": "4462:4:20"
},
{
"kind": "number",
"nativeSrc": "4468:1:20",
"nodeType": "YulLiteral",
"src": "4468:1:20",
"type": "",
"value": "2"
}
],
"functionName": {
"name": "div",
"nativeSrc": "4458:3:20",
"nodeType": "YulIdentifier",
"src": "4458:3:20"
},
"nativeSrc": "4458:12:20",
"nodeType": "YulFunctionCall",
"src": "4458:12:20"
},
"variableNames": [
{
"name": "length",
"nativeSrc": "4448:6:20",
"nodeType": "YulIdentifier",
"src": "4448:6:20"
}
]
},
{
"nativeSrc": "4479:38:20",
"nodeType": "YulVariableDeclaration",
"src": "4479:38:20",
"value": {
"arguments": [
{
"name": "data",
"nativeSrc": "4509:4:20",
"nodeType": "YulIdentifier",
"src": "4509:4:20"
},
{
"kind": "number",
"nativeSrc": "4515:1:20",
"nodeType": "YulLiteral",
"src": "4515:1:20",
"type": "",
"value": "1"
}
],
"functionName": {
"name": "and",
"nativeSrc": "4505:3:20",
"nodeType": "YulIdentifier",
"src": "4505:3:20"
},
"nativeSrc": "4505:12:20",
"nodeType": "YulFunctionCall",
"src": "4505:12:20"
},
"variables": [
{
"name": "outOfPlaceEncoding",
"nativeSrc": "4483:18:20",
"nodeType": "YulTypedName",
"src": "4483:18:20",
"type": ""
}
]
},
{
"body": {
"nativeSrc": "4556:51:20",
"nodeType": "YulBlock",
"src": "4556:51:20",
"statements": [
{
"nativeSrc": "4570:27:20",
"nodeType": "YulAssignment",
"src": "4570:27:20",
"value": {
"arguments": [
{
"name": "length",
"nativeSrc": "4584:6:20",
"nodeType": "YulIdentifier",
"src": "4584:6:20"
},
{
"kind": "number",
"nativeSrc": "4592:4:20",
"nodeType": "YulLiteral",
"src": "4592:4:20",
"type": "",
"value": "0x7f"
}
],
"functionName": {
"name": "and",
"nativeSrc": "4580:3:20",
"nodeType": "YulIdentifier",
"src": "4580:3:20"
},
"nativeSrc": "4580:17:20",
"nodeType": "YulFunctionCall",
"src": "4580:17:20"
},
"variableNames": [
{
"name": "length",
"nativeSrc": "4570:6:20",
"nodeType": "YulIdentifier",
"src": "4570:6:20"
}
]
}
]
},
"condition": {
"arguments": [
{
"name": "outOfPlaceEncoding",
"nativeSrc": "4536:18:20",
"nodeType": "YulIdentifier",
"src": "4536:18:20"
}
],
"functionName": {
"name": "iszero",
"nativeSrc": "4529:6:20",
"nodeType": "YulIdentifier",
"src": "4529:6:20"
},
"nativeSrc": "4529:26:20",
"nodeType": "YulFunctionCall",
"src": "4529:26:20"
},
"nativeSrc": "4526:81:20",
"nodeType": "YulIf",
"src": "4526:81:20"
},
{
"body": {
"nativeSrc": "4659:42:20",
"nodeType": "YulBlock",
"src": "4659:42:20",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x22",
"nativeSrc": "4673:16:20",
"nodeType": "YulIdentifier",
"src": "4673:16:20"
},
"nativeSrc": "4673:18:20",
"nodeType": "YulFunctionCall",
"src": "4673:18:20"
},
"nativeSrc": "4673:18:20",
"nodeType": "YulExpressionStatement",
"src": "4673:18:20"
}
]
},
"condition": {
"arguments": [
{
"name": "outOfPlaceEncoding",
"nativeSrc": "4623:18:20",
"nodeType": "YulIdentifier",
"src": "4623:18:20"
},
{
"arguments": [
{
"name": "length",
"nativeSrc": "4646:6:20",
"nodeType": "YulIdentifier",
"src": "4646:6:20"
},
{
"kind": "number",
"nativeSrc": "4654:2:20",
"nodeType": "YulLiteral",
"src": "4654:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "lt",
"nativeSrc": "4643:2:20",
"nodeType": "YulIdentifier",
"src": "4643:2:20"
},
"nativeSrc": "4643:14:20",
"nodeType": "YulFunctionCall",
"src": "4643:14:20"
}
],
"functionName": {
"name": "eq",
"nativeSrc": "4620:2:20",
"nodeType": "YulIdentifier",
"src": "4620:2:20"
},
"nativeSrc": "4620:38:20",
"nodeType": "YulFunctionCall",
"src": "4620:38:20"
},
"nativeSrc": "4617:84:20",
"nodeType": "YulIf",
"src": "4617:84:20"
}
]
},
"name": "extract_byte_array_length",
"nativeSrc": "4387:320:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "data",
"nativeSrc": "4422:4:20",
"nodeType": "YulTypedName",
"src": "4422:4:20",
"type": ""
}
],
"returnVariables": [
{
"name": "length",
"nativeSrc": "4431:6:20",
"nodeType": "YulTypedName",
"src": "4431:6:20",
"type": ""
}
],
"src": "4387:320:20"
},
{
"body": {
"nativeSrc": "4767:87:20",
"nodeType": "YulBlock",
"src": "4767:87:20",
"statements": [
{
"nativeSrc": "4777:11:20",
"nodeType": "YulAssignment",
"src": "4777:11:20",
"value": {
"name": "ptr",
"nativeSrc": "4785:3:20",
"nodeType": "YulIdentifier",
"src": "4785:3:20"
},
"variableNames": [
{
"name": "data",
"nativeSrc": "4777:4:20",
"nodeType": "YulIdentifier",
"src": "4777:4:20"
}
]
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "4805:1:20",
"nodeType": "YulLiteral",
"src": "4805:1:20",
"type": "",
"value": "0"
},
{
"name": "ptr",
"nativeSrc": "4808:3:20",
"nodeType": "YulIdentifier",
"src": "4808:3:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "4798:6:20",
"nodeType": "YulIdentifier",
"src": "4798:6:20"
},
"nativeSrc": "4798:14:20",
"nodeType": "YulFunctionCall",
"src": "4798:14:20"
},
"nativeSrc": "4798:14:20",
"nodeType": "YulExpressionStatement",
"src": "4798:14:20"
},
{
"nativeSrc": "4821:26:20",
"nodeType": "YulAssignment",
"src": "4821:26:20",
"value": {
"arguments": [
{
"kind": "number",
"nativeSrc": "4839:1:20",
"nodeType": "YulLiteral",
"src": "4839:1:20",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "4842:4:20",
"nodeType": "YulLiteral",
"src": "4842:4:20",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "keccak256",
"nativeSrc": "4829:9:20",
"nodeType": "YulIdentifier",
"src": "4829:9:20"
},
"nativeSrc": "4829:18:20",
"nodeType": "YulFunctionCall",
"src": "4829:18:20"
},
"variableNames": [
{
"name": "data",
"nativeSrc": "4821:4:20",
"nodeType": "YulIdentifier",
"src": "4821:4:20"
}
]
}
]
},
"name": "array_dataslot_t_string_storage",
"nativeSrc": "4713:141:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "ptr",
"nativeSrc": "4754:3:20",
"nodeType": "YulTypedName",
"src": "4754:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "data",
"nativeSrc": "4762:4:20",
"nodeType": "YulTypedName",
"src": "4762:4:20",
"type": ""
}
],
"src": "4713:141:20"
},
{
"body": {
"nativeSrc": "4904:49:20",
"nodeType": "YulBlock",
"src": "4904:49:20",
"statements": [
{
"nativeSrc": "4914:33:20",
"nodeType": "YulAssignment",
"src": "4914:33:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nativeSrc": "4932:5:20",
"nodeType": "YulIdentifier",
"src": "4932:5:20"
},
{
"kind": "number",
"nativeSrc": "4939:2:20",
"nodeType": "YulLiteral",
"src": "4939:2:20",
"type": "",
"value": "31"
}
],
"functionName": {
"name": "add",
"nativeSrc": "4928:3:20",
"nodeType": "YulIdentifier",
"src": "4928:3:20"
},
"nativeSrc": "4928:14:20",
"nodeType": "YulFunctionCall",
"src": "4928:14:20"
},
{
"kind": "number",
"nativeSrc": "4944:2:20",
"nodeType": "YulLiteral",
"src": "4944:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "div",
"nativeSrc": "4924:3:20",
"nodeType": "YulIdentifier",
"src": "4924:3:20"
},
"nativeSrc": "4924:23:20",
"nodeType": "YulFunctionCall",
"src": "4924:23:20"
},
"variableNames": [
{
"name": "result",
"nativeSrc": "4914:6:20",
"nodeType": "YulIdentifier",
"src": "4914:6:20"
}
]
}
]
},
"name": "divide_by_32_ceil",
"nativeSrc": "4860:93:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "4887:5:20",
"nodeType": "YulTypedName",
"src": "4887:5:20",
"type": ""
}
],
"returnVariables": [
{
"name": "result",
"nativeSrc": "4897:6:20",
"nodeType": "YulTypedName",
"src": "4897:6:20",
"type": ""
}
],
"src": "4860:93:20"
},
{
"body": {
"nativeSrc": "5012:54:20",
"nodeType": "YulBlock",
"src": "5012:54:20",
"statements": [
{
"nativeSrc": "5022:37:20",
"nodeType": "YulAssignment",
"src": "5022:37:20",
"value": {
"arguments": [
{
"name": "bits",
"nativeSrc": "5047:4:20",
"nodeType": "YulIdentifier",
"src": "5047:4:20"
},
{
"name": "value",
"nativeSrc": "5053:5:20",
"nodeType": "YulIdentifier",
"src": "5053:5:20"
}
],
"functionName": {
"name": "shl",
"nativeSrc": "5043:3:20",
"nodeType": "YulIdentifier",
"src": "5043:3:20"
},
"nativeSrc": "5043:16:20",
"nodeType": "YulFunctionCall",
"src": "5043:16:20"
},
"variableNames": [
{
"name": "newValue",
"nativeSrc": "5022:8:20",
"nodeType": "YulIdentifier",
"src": "5022:8:20"
}
]
}
]
},
"name": "shift_left_dynamic",
"nativeSrc": "4959:107:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "bits",
"nativeSrc": "4987:4:20",
"nodeType": "YulTypedName",
"src": "4987:4:20",
"type": ""
},
{
"name": "value",
"nativeSrc": "4993:5:20",
"nodeType": "YulTypedName",
"src": "4993:5:20",
"type": ""
}
],
"returnVariables": [
{
"name": "newValue",
"nativeSrc": "5003:8:20",
"nodeType": "YulTypedName",
"src": "5003:8:20",
"type": ""
}
],
"src": "4959:107:20"
},
{
"body": {
"nativeSrc": "5148:317:20",
"nodeType": "YulBlock",
"src": "5148:317:20",
"statements": [
{
"nativeSrc": "5158:35:20",
"nodeType": "YulVariableDeclaration",
"src": "5158:35:20",
"value": {
"arguments": [
{
"name": "shiftBytes",
"nativeSrc": "5179:10:20",
"nodeType": "YulIdentifier",
"src": "5179:10:20"
},
{
"kind": "number",
"nativeSrc": "5191:1:20",
"nodeType": "YulLiteral",
"src": "5191:1:20",
"type": "",
"value": "8"
}
],
"functionName": {
"name": "mul",
"nativeSrc": "5175:3:20",
"nodeType": "YulIdentifier",
"src": "5175:3:20"
},
"nativeSrc": "5175:18:20",
"nodeType": "YulFunctionCall",
"src": "5175:18:20"
},
"variables": [
{
"name": "shiftBits",
"nativeSrc": "5162:9:20",
"nodeType": "YulTypedName",
"src": "5162:9:20",
"type": ""
}
]
},
{
"nativeSrc": "5202:109:20",
"nodeType": "YulVariableDeclaration",
"src": "5202:109:20",
"value": {
"arguments": [
{
"name": "shiftBits",
"nativeSrc": "5233:9:20",
"nodeType": "YulIdentifier",
"src": "5233:9:20"
},
{
"kind": "number",
"nativeSrc": "5244:66:20",
"nodeType": "YulLiteral",
"src": "5244:66:20",
"type": "",
"value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"
}
],
"functionName": {
"name": "shift_left_dynamic",
"nativeSrc": "5214:18:20",
"nodeType": "YulIdentifier",
"src": "5214:18:20"
},
"nativeSrc": "5214:97:20",
"nodeType": "YulFunctionCall",
"src": "5214:97:20"
},
"variables": [
{
"name": "mask",
"nativeSrc": "5206:4:20",
"nodeType": "YulTypedName",
"src": "5206:4:20",
"type": ""
}
]
},
{
"nativeSrc": "5320:51:20",
"nodeType": "YulAssignment",
"src": "5320:51:20",
"value": {
"arguments": [
{
"name": "shiftBits",
"nativeSrc": "5351:9:20",
"nodeType": "YulIdentifier",
"src": "5351:9:20"
},
{
"name": "toInsert",
"nativeSrc": "5362:8:20",
"nodeType": "YulIdentifier",
"src": "5362:8:20"
}
],
"functionName": {
"name": "shift_left_dynamic",
"nativeSrc": "5332:18:20",
"nodeType": "YulIdentifier",
"src": "5332:18:20"
},
"nativeSrc": "5332:39:20",
"nodeType": "YulFunctionCall",
"src": "5332:39:20"
},
"variableNames": [
{
"name": "toInsert",
"nativeSrc": "5320:8:20",
"nodeType": "YulIdentifier",
"src": "5320:8:20"
}
]
},
{
"nativeSrc": "5380:30:20",
"nodeType": "YulAssignment",
"src": "5380:30:20",
"value": {
"arguments": [
{
"name": "value",
"nativeSrc": "5393:5:20",
"nodeType": "YulIdentifier",
"src": "5393:5:20"
},
{
"arguments": [
{
"name": "mask",
"nativeSrc": "5404:4:20",
"nodeType": "YulIdentifier",
"src": "5404:4:20"
}
],
"functionName": {
"name": "not",
"nativeSrc": "5400:3:20",
"nodeType": "YulIdentifier",
"src": "5400:3:20"
},
"nativeSrc": "5400:9:20",
"nodeType": "YulFunctionCall",
"src": "5400:9:20"
}
],
"functionName": {
"name": "and",
"nativeSrc": "5389:3:20",
"nodeType": "YulIdentifier",
"src": "5389:3:20"
},
"nativeSrc": "5389:21:20",
"nodeType": "YulFunctionCall",
"src": "5389:21:20"
},
"variableNames": [
{
"name": "value",
"nativeSrc": "5380:5:20",
"nodeType": "YulIdentifier",
"src": "5380:5:20"
}
]
},
{
"nativeSrc": "5419:40:20",
"nodeType": "YulAssignment",
"src": "5419:40:20",
"value": {
"arguments": [
{
"name": "value",
"nativeSrc": "5432:5:20",
"nodeType": "YulIdentifier",
"src": "5432:5:20"
},
{
"arguments": [
{
"name": "toInsert",
"nativeSrc": "5443:8:20",
"nodeType": "YulIdentifier",
"src": "5443:8:20"
},
{
"name": "mask",
"nativeSrc": "5453:4:20",
"nodeType": "YulIdentifier",
"src": "5453:4:20"
}
],
"functionName": {
"name": "and",
"nativeSrc": "5439:3:20",
"nodeType": "YulIdentifier",
"src": "5439:3:20"
},
"nativeSrc": "5439:19:20",
"nodeType": "YulFunctionCall",
"src": "5439:19:20"
}
],
"functionName": {
"name": "or",
"nativeSrc": "5429:2:20",
"nodeType": "YulIdentifier",
"src": "5429:2:20"
},
"nativeSrc": "5429:30:20",
"nodeType": "YulFunctionCall",
"src": "5429:30:20"
},
"variableNames": [
{
"name": "result",
"nativeSrc": "5419:6:20",
"nodeType": "YulIdentifier",
"src": "5419:6:20"
}
]
}
]
},
"name": "update_byte_slice_dynamic32",
"nativeSrc": "5072:393:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "5109:5:20",
"nodeType": "YulTypedName",
"src": "5109:5:20",
"type": ""
},
{
"name": "shiftBytes",
"nativeSrc": "5116:10:20",
"nodeType": "YulTypedName",
"src": "5116:10:20",
"type": ""
},
{
"name": "toInsert",
"nativeSrc": "5128:8:20",
"nodeType": "YulTypedName",
"src": "5128:8:20",
"type": ""
}
],
"returnVariables": [
{
"name": "result",
"nativeSrc": "5141:6:20",
"nodeType": "YulTypedName",
"src": "5141:6:20",
"type": ""
}
],
"src": "5072:393:20"
},
{
"body": {
"nativeSrc": "5516:32:20",
"nodeType": "YulBlock",
"src": "5516:32:20",
"statements": [
{
"nativeSrc": "5526:16:20",
"nodeType": "YulAssignment",
"src": "5526:16:20",
"value": {
"name": "value",
"nativeSrc": "5537:5:20",
"nodeType": "YulIdentifier",
"src": "5537:5:20"
},
"variableNames": [
{
"name": "cleaned",
"nativeSrc": "5526:7:20",
"nodeType": "YulIdentifier",
"src": "5526:7:20"
}
]
}
]
},
"name": "cleanup_t_uint256",
"nativeSrc": "5471:77:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "5498:5:20",
"nodeType": "YulTypedName",
"src": "5498:5:20",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nativeSrc": "5508:7:20",
"nodeType": "YulTypedName",
"src": "5508:7:20",
"type": ""
}
],
"src": "5471:77:20"
},
{
"body": {
"nativeSrc": "5586:28:20",
"nodeType": "YulBlock",
"src": "5586:28:20",
"statements": [
{
"nativeSrc": "5596:12:20",
"nodeType": "YulAssignment",
"src": "5596:12:20",
"value": {
"name": "value",
"nativeSrc": "5603:5:20",
"nodeType": "YulIdentifier",
"src": "5603:5:20"
},
"variableNames": [
{
"name": "ret",
"nativeSrc": "5596:3:20",
"nodeType": "YulIdentifier",
"src": "5596:3:20"
}
]
}
]
},
"name": "identity",
"nativeSrc": "5554:60:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "5572:5:20",
"nodeType": "YulTypedName",
"src": "5572:5:20",
"type": ""
}
],
"returnVariables": [
{
"name": "ret",
"nativeSrc": "5582:3:20",
"nodeType": "YulTypedName",
"src": "5582:3:20",
"type": ""
}
],
"src": "5554:60:20"
},
{
"body": {
"nativeSrc": "5680:82:20",
"nodeType": "YulBlock",
"src": "5680:82:20",
"statements": [
{
"nativeSrc": "5690:66:20",
"nodeType": "YulAssignment",
"src": "5690:66:20",
"value": {
"arguments": [
{
"arguments": [
{
"arguments": [
{
"name": "value",
"nativeSrc": "5748:5:20",
"nodeType": "YulIdentifier",
"src": "5748:5:20"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nativeSrc": "5730:17:20",
"nodeType": "YulIdentifier",
"src": "5730:17:20"
},
"nativeSrc": "5730:24:20",
"nodeType": "YulFunctionCall",
"src": "5730:24:20"
}
],
"functionName": {
"name": "identity",
"nativeSrc": "5721:8:20",
"nodeType": "YulIdentifier",
"src": "5721:8:20"
},
"nativeSrc": "5721:34:20",
"nodeType": "YulFunctionCall",
"src": "5721:34:20"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nativeSrc": "5703:17:20",
"nodeType": "YulIdentifier",
"src": "5703:17:20"
},
"nativeSrc": "5703:53:20",
"nodeType": "YulFunctionCall",
"src": "5703:53:20"
},
"variableNames": [
{
"name": "converted",
"nativeSrc": "5690:9:20",
"nodeType": "YulIdentifier",
"src": "5690:9:20"
}
]
}
]
},
"name": "convert_t_uint256_to_t_uint256",
"nativeSrc": "5620:142:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "5660:5:20",
"nodeType": "YulTypedName",
"src": "5660:5:20",
"type": ""
}
],
"returnVariables": [
{
"name": "converted",
"nativeSrc": "5670:9:20",
"nodeType": "YulTypedName",
"src": "5670:9:20",
"type": ""
}
],
"src": "5620:142:20"
},
{
"body": {
"nativeSrc": "5815:28:20",
"nodeType": "YulBlock",
"src": "5815:28:20",
"statements": [
{
"nativeSrc": "5825:12:20",
"nodeType": "YulAssignment",
"src": "5825:12:20",
"value": {
"name": "value",
"nativeSrc": "5832:5:20",
"nodeType": "YulIdentifier",
"src": "5832:5:20"
},
"variableNames": [
{
"name": "ret",
"nativeSrc": "5825:3:20",
"nodeType": "YulIdentifier",
"src": "5825:3:20"
}
]
}
]
},
"name": "prepare_store_t_uint256",
"nativeSrc": "5768:75:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "5801:5:20",
"nodeType": "YulTypedName",
"src": "5801:5:20",
"type": ""
}
],
"returnVariables": [
{
"name": "ret",
"nativeSrc": "5811:3:20",
"nodeType": "YulTypedName",
"src": "5811:3:20",
"type": ""
}
],
"src": "5768:75:20"
},
{
"body": {
"nativeSrc": "5925:193:20",
"nodeType": "YulBlock",
"src": "5925:193:20",
"statements": [
{
"nativeSrc": "5935:63:20",
"nodeType": "YulVariableDeclaration",
"src": "5935:63:20",
"value": {
"arguments": [
{
"name": "value_0",
"nativeSrc": "5990:7:20",
"nodeType": "YulIdentifier",
"src": "5990:7:20"
}
],
"functionName": {
"name": "convert_t_uint256_to_t_uint256",
"nativeSrc": "5959:30:20",
"nodeType": "YulIdentifier",
"src": "5959:30:20"
},
"nativeSrc": "5959:39:20",
"nodeType": "YulFunctionCall",
"src": "5959:39:20"
},
"variables": [
{
"name": "convertedValue_0",
"nativeSrc": "5939:16:20",
"nodeType": "YulTypedName",
"src": "5939:16:20",
"type": ""
}
]
},
{
"expression": {
"arguments": [
{
"name": "slot",
"nativeSrc": "6014:4:20",
"nodeType": "YulIdentifier",
"src": "6014:4:20"
},
{
"arguments": [
{
"arguments": [
{
"name": "slot",
"nativeSrc": "6054:4:20",
"nodeType": "YulIdentifier",
"src": "6054:4:20"
}
],
"functionName": {
"name": "sload",
"nativeSrc": "6048:5:20",
"nodeType": "YulIdentifier",
"src": "6048:5:20"
},
"nativeSrc": "6048:11:20",
"nodeType": "YulFunctionCall",
"src": "6048:11:20"
},
{
"name": "offset",
"nativeSrc": "6061:6:20",
"nodeType": "YulIdentifier",
"src": "6061:6:20"
},
{
"arguments": [
{
"name": "convertedValue_0",
"nativeSrc": "6093:16:20",
"nodeType": "YulIdentifier",
"src": "6093:16:20"
}
],
"functionName": {
"name": "prepare_store_t_uint256",
"nativeSrc": "6069:23:20",
"nodeType": "YulIdentifier",
"src": "6069:23:20"
},
"nativeSrc": "6069:41:20",
"nodeType": "YulFunctionCall",
"src": "6069:41:20"
}
],
"functionName": {
"name": "update_byte_slice_dynamic32",
"nativeSrc": "6020:27:20",
"nodeType": "YulIdentifier",
"src": "6020:27:20"
},
"nativeSrc": "6020:91:20",
"nodeType": "YulFunctionCall",
"src": "6020:91:20"
}
],
"functionName": {
"name": "sstore",
"nativeSrc": "6007:6:20",
"nodeType": "YulIdentifier",
"src": "6007:6:20"
},
"nativeSrc": "6007:105:20",
"nodeType": "YulFunctionCall",
"src": "6007:105:20"
},
"nativeSrc": "6007:105:20",
"nodeType": "YulExpressionStatement",
"src": "6007:105:20"
}
]
},
"name": "update_storage_value_t_uint256_to_t_uint256",
"nativeSrc": "5849:269:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "slot",
"nativeSrc": "5902:4:20",
"nodeType": "YulTypedName",
"src": "5902:4:20",
"type": ""
},
{
"name": "offset",
"nativeSrc": "5908:6:20",
"nodeType": "YulTypedName",
"src": "5908:6:20",
"type": ""
},
{
"name": "value_0",
"nativeSrc": "5916:7:20",
"nodeType": "YulTypedName",
"src": "5916:7:20",
"type": ""
}
],
"src": "5849:269:20"
},
{
"body": {
"nativeSrc": "6173:24:20",
"nodeType": "YulBlock",
"src": "6173:24:20",
"statements": [
{
"nativeSrc": "6183:8:20",
"nodeType": "YulAssignment",
"src": "6183:8:20",
"value": {
"kind": "number",
"nativeSrc": "6190:1:20",
"nodeType": "YulLiteral",
"src": "6190:1:20",
"type": "",
"value": "0"
},
"variableNames": [
{
"name": "ret",
"nativeSrc": "6183:3:20",
"nodeType": "YulIdentifier",
"src": "6183:3:20"
}
]
}
]
},
"name": "zero_value_for_split_t_uint256",
"nativeSrc": "6124:73:20",
"nodeType": "YulFunctionDefinition",
"returnVariables": [
{
"name": "ret",
"nativeSrc": "6169:3:20",
"nodeType": "YulTypedName",
"src": "6169:3:20",
"type": ""
}
],
"src": "6124:73:20"
},
{
"body": {
"nativeSrc": "6256:136:20",
"nodeType": "YulBlock",
"src": "6256:136:20",
"statements": [
{
"nativeSrc": "6266:46:20",
"nodeType": "YulVariableDeclaration",
"src": "6266:46:20",
"value": {
"arguments": [],
"functionName": {
"name": "zero_value_for_split_t_uint256",
"nativeSrc": "6280:30:20",
"nodeType": "YulIdentifier",
"src": "6280:30:20"
},
"nativeSrc": "6280:32:20",
"nodeType": "YulFunctionCall",
"src": "6280:32:20"
},
"variables": [
{
"name": "zero_0",
"nativeSrc": "6270:6:20",
"nodeType": "YulTypedName",
"src": "6270:6:20",
"type": ""
}
]
},
{
"expression": {
"arguments": [
{
"name": "slot",
"nativeSrc": "6365:4:20",
"nodeType": "YulIdentifier",
"src": "6365:4:20"
},
{
"name": "offset",
"nativeSrc": "6371:6:20",
"nodeType": "YulIdentifier",
"src": "6371:6:20"
},
{
"name": "zero_0",
"nativeSrc": "6379:6:20",
"nodeType": "YulIdentifier",
"src": "6379:6:20"
}
],
"functionName": {
"name": "update_storage_value_t_uint256_to_t_uint256",
"nativeSrc": "6321:43:20",
"nodeType": "YulIdentifier",
"src": "6321:43:20"
},
"nativeSrc": "6321:65:20",
"nodeType": "YulFunctionCall",
"src": "6321:65:20"
},
"nativeSrc": "6321:65:20",
"nodeType": "YulExpressionStatement",
"src": "6321:65:20"
}
]
},
"name": "storage_set_to_zero_t_uint256",
"nativeSrc": "6203:189:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "slot",
"nativeSrc": "6242:4:20",
"nodeType": "YulTypedName",
"src": "6242:4:20",
"type": ""
},
{
"name": "offset",
"nativeSrc": "6248:6:20",
"nodeType": "YulTypedName",
"src": "6248:6:20",
"type": ""
}
],
"src": "6203:189:20"
},
{
"body": {
"nativeSrc": "6448:136:20",
"nodeType": "YulBlock",
"src": "6448:136:20",
"statements": [
{
"body": {
"nativeSrc": "6515:63:20",
"nodeType": "YulBlock",
"src": "6515:63:20",
"statements": [
{
"expression": {
"arguments": [
{
"name": "start",
"nativeSrc": "6559:5:20",
"nodeType": "YulIdentifier",
"src": "6559:5:20"
},
{
"kind": "number",
"nativeSrc": "6566:1:20",
"nodeType": "YulLiteral",
"src": "6566:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "storage_set_to_zero_t_uint256",
"nativeSrc": "6529:29:20",
"nodeType": "YulIdentifier",
"src": "6529:29:20"
},
"nativeSrc": "6529:39:20",
"nodeType": "YulFunctionCall",
"src": "6529:39:20"
},
"nativeSrc": "6529:39:20",
"nodeType": "YulExpressionStatement",
"src": "6529:39:20"
}
]
},
"condition": {
"arguments": [
{
"name": "start",
"nativeSrc": "6468:5:20",
"nodeType": "YulIdentifier",
"src": "6468:5:20"
},
{
"name": "end",
"nativeSrc": "6475:3:20",
"nodeType": "YulIdentifier",
"src": "6475:3:20"
}
],
"functionName": {
"name": "lt",
"nativeSrc": "6465:2:20",
"nodeType": "YulIdentifier",
"src": "6465:2:20"
},
"nativeSrc": "6465:14:20",
"nodeType": "YulFunctionCall",
"src": "6465:14:20"
},
"nativeSrc": "6458:120:20",
"nodeType": "YulForLoop",
"post": {
"nativeSrc": "6480:26:20",
"nodeType": "YulBlock",
"src": "6480:26:20",
"statements": [
{
"nativeSrc": "6482:22:20",
"nodeType": "YulAssignment",
"src": "6482:22:20",
"value": {
"arguments": [
{
"name": "start",
"nativeSrc": "6495:5:20",
"nodeType": "YulIdentifier",
"src": "6495:5:20"
},
{
"kind": "number",
"nativeSrc": "6502:1:20",
"nodeType": "YulLiteral",
"src": "6502:1:20",
"type": "",
"value": "1"
}
],
"functionName": {
"name": "add",
"nativeSrc": "6491:3:20",
"nodeType": "YulIdentifier",
"src": "6491:3:20"
},
"nativeSrc": "6491:13:20",
"nodeType": "YulFunctionCall",
"src": "6491:13:20"
},
"variableNames": [
{
"name": "start",
"nativeSrc": "6482:5:20",
"nodeType": "YulIdentifier",
"src": "6482:5:20"
}
]
}
]
},
"pre": {
"nativeSrc": "6462:2:20",
"nodeType": "YulBlock",
"src": "6462:2:20",
"statements": []
},
"src": "6458:120:20"
}
]
},
"name": "clear_storage_range_t_bytes1",
"nativeSrc": "6398:186:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "start",
"nativeSrc": "6436:5:20",
"nodeType": "YulTypedName",
"src": "6436:5:20",
"type": ""
},
{
"name": "end",
"nativeSrc": "6443:3:20",
"nodeType": "YulTypedName",
"src": "6443:3:20",
"type": ""
}
],
"src": "6398:186:20"
},
{
"body": {
"nativeSrc": "6669:464:20",
"nodeType": "YulBlock",
"src": "6669:464:20",
"statements": [
{
"body": {
"nativeSrc": "6695:431:20",
"nodeType": "YulBlock",
"src": "6695:431:20",
"statements": [
{
"nativeSrc": "6709:54:20",
"nodeType": "YulVariableDeclaration",
"src": "6709:54:20",
"value": {
"arguments": [
{
"name": "array",
"nativeSrc": "6757:5:20",
"nodeType": "YulIdentifier",
"src": "6757:5:20"
}
],
"functionName": {
"name": "array_dataslot_t_string_storage",
"nativeSrc": "6725:31:20",
"nodeType": "YulIdentifier",
"src": "6725:31:20"
},
"nativeSrc": "6725:38:20",
"nodeType": "YulFunctionCall",
"src": "6725:38:20"
},
"variables": [
{
"name": "dataArea",
"nativeSrc": "6713:8:20",
"nodeType": "YulTypedName",
"src": "6713:8:20",
"type": ""
}
]
},
{
"nativeSrc": "6776:63:20",
"nodeType": "YulVariableDeclaration",
"src": "6776:63:20",
"value": {
"arguments": [
{
"name": "dataArea",
"nativeSrc": "6799:8:20",
"nodeType": "YulIdentifier",
"src": "6799:8:20"
},
{
"arguments": [
{
"name": "startIndex",
"nativeSrc": "6827:10:20",
"nodeType": "YulIdentifier",
"src": "6827:10:20"
}
],
"functionName": {
"name": "divide_by_32_ceil",
"nativeSrc": "6809:17:20",
"nodeType": "YulIdentifier",
"src": "6809:17:20"
},
"nativeSrc": "6809:29:20",
"nodeType": "YulFunctionCall",
"src": "6809:29:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "6795:3:20",
"nodeType": "YulIdentifier",
"src": "6795:3:20"
},
"nativeSrc": "6795:44:20",
"nodeType": "YulFunctionCall",
"src": "6795:44:20"
},
"variables": [
{
"name": "deleteStart",
"nativeSrc": "6780:11:20",
"nodeType": "YulTypedName",
"src": "6780:11:20",
"type": ""
}
]
},
{
"body": {
"nativeSrc": "6996:27:20",
"nodeType": "YulBlock",
"src": "6996:27:20",
"statements": [
{
"nativeSrc": "6998:23:20",
"nodeType": "YulAssignment",
"src": "6998:23:20",
"value": {
"name": "dataArea",
"nativeSrc": "7013:8:20",
"nodeType": "YulIdentifier",
"src": "7013:8:20"
},
"variableNames": [
{
"name": "deleteStart",
"nativeSrc": "6998:11:20",
"nodeType": "YulIdentifier",
"src": "6998:11:20"
}
]
}
]
},
"condition": {
"arguments": [
{
"name": "startIndex",
"nativeSrc": "6980:10:20",
"nodeType": "YulIdentifier",
"src": "6980:10:20"
},
{
"kind": "number",
"nativeSrc": "6992:2:20",
"nodeType": "YulLiteral",
"src": "6992:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "lt",
"nativeSrc": "6977:2:20",
"nodeType": "YulIdentifier",
"src": "6977:2:20"
},
"nativeSrc": "6977:18:20",
"nodeType": "YulFunctionCall",
"src": "6977:18:20"
},
"nativeSrc": "6974:49:20",
"nodeType": "YulIf",
"src": "6974:49:20"
},
{
"expression": {
"arguments": [
{
"name": "deleteStart",
"nativeSrc": "7065:11:20",
"nodeType": "YulIdentifier",
"src": "7065:11:20"
},
{
"arguments": [
{
"name": "dataArea",
"nativeSrc": "7082:8:20",
"nodeType": "YulIdentifier",
"src": "7082:8:20"
},
{
"arguments": [
{
"name": "len",
"nativeSrc": "7110:3:20",
"nodeType": "YulIdentifier",
"src": "7110:3:20"
}
],
"functionName": {
"name": "divide_by_32_ceil",
"nativeSrc": "7092:17:20",
"nodeType": "YulIdentifier",
"src": "7092:17:20"
},
"nativeSrc": "7092:22:20",
"nodeType": "YulFunctionCall",
"src": "7092:22:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "7078:3:20",
"nodeType": "YulIdentifier",
"src": "7078:3:20"
},
"nativeSrc": "7078:37:20",
"nodeType": "YulFunctionCall",
"src": "7078:37:20"
}
],
"functionName": {
"name": "clear_storage_range_t_bytes1",
"nativeSrc": "7036:28:20",
"nodeType": "YulIdentifier",
"src": "7036:28:20"
},
"nativeSrc": "7036:80:20",
"nodeType": "YulFunctionCall",
"src": "7036:80:20"
},
"nativeSrc": "7036:80:20",
"nodeType": "YulExpressionStatement",
"src": "7036:80:20"
}
]
},
"condition": {
"arguments": [
{
"name": "len",
"nativeSrc": "6686:3:20",
"nodeType": "YulIdentifier",
"src": "6686:3:20"
},
{
"kind": "number",
"nativeSrc": "6691:2:20",
"nodeType": "YulLiteral",
"src": "6691:2:20",
"type": "",
"value": "31"
}
],
"functionName": {
"name": "gt",
"nativeSrc": "6683:2:20",
"nodeType": "YulIdentifier",
"src": "6683:2:20"
},
"nativeSrc": "6683:11:20",
"nodeType": "YulFunctionCall",
"src": "6683:11:20"
},
"nativeSrc": "6680:446:20",
"nodeType": "YulIf",
"src": "6680:446:20"
}
]
},
"name": "clean_up_bytearray_end_slots_t_string_storage",
"nativeSrc": "6590:543:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "array",
"nativeSrc": "6645:5:20",
"nodeType": "YulTypedName",
"src": "6645:5:20",
"type": ""
},
{
"name": "len",
"nativeSrc": "6652:3:20",
"nodeType": "YulTypedName",
"src": "6652:3:20",
"type": ""
},
{
"name": "startIndex",
"nativeSrc": "6657:10:20",
"nodeType": "YulTypedName",
"src": "6657:10:20",
"type": ""
}
],
"src": "6590:543:20"
},
{
"body": {
"nativeSrc": "7202:54:20",
"nodeType": "YulBlock",
"src": "7202:54:20",
"statements": [
{
"nativeSrc": "7212:37:20",
"nodeType": "YulAssignment",
"src": "7212:37:20",
"value": {
"arguments": [
{
"name": "bits",
"nativeSrc": "7237:4:20",
"nodeType": "YulIdentifier",
"src": "7237:4:20"
},
{
"name": "value",
"nativeSrc": "7243:5:20",
"nodeType": "YulIdentifier",
"src": "7243:5:20"
}
],
"functionName": {
"name": "shr",
"nativeSrc": "7233:3:20",
"nodeType": "YulIdentifier",
"src": "7233:3:20"
},
"nativeSrc": "7233:16:20",
"nodeType": "YulFunctionCall",
"src": "7233:16:20"
},
"variableNames": [
{
"name": "newValue",
"nativeSrc": "7212:8:20",
"nodeType": "YulIdentifier",
"src": "7212:8:20"
}
]
}
]
},
"name": "shift_right_unsigned_dynamic",
"nativeSrc": "7139:117:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "bits",
"nativeSrc": "7177:4:20",
"nodeType": "YulTypedName",
"src": "7177:4:20",
"type": ""
},
{
"name": "value",
"nativeSrc": "7183:5:20",
"nodeType": "YulTypedName",
"src": "7183:5:20",
"type": ""
}
],
"returnVariables": [
{
"name": "newValue",
"nativeSrc": "7193:8:20",
"nodeType": "YulTypedName",
"src": "7193:8:20",
"type": ""
}
],
"src": "7139:117:20"
},
{
"body": {
"nativeSrc": "7313:118:20",
"nodeType": "YulBlock",
"src": "7313:118:20",
"statements": [
{
"nativeSrc": "7323:68:20",
"nodeType": "YulVariableDeclaration",
"src": "7323:68:20",
"value": {
"arguments": [
{
"arguments": [
{
"arguments": [
{
"kind": "number",
"nativeSrc": "7372:1:20",
"nodeType": "YulLiteral",
"src": "7372:1:20",
"type": "",
"value": "8"
},
{
"name": "bytes",
"nativeSrc": "7375:5:20",
"nodeType": "YulIdentifier",
"src": "7375:5:20"
}
],
"functionName": {
"name": "mul",
"nativeSrc": "7368:3:20",
"nodeType": "YulIdentifier",
"src": "7368:3:20"
},
"nativeSrc": "7368:13:20",
"nodeType": "YulFunctionCall",
"src": "7368:13:20"
},
{
"arguments": [
{
"kind": "number",
"nativeSrc": "7387:1:20",
"nodeType": "YulLiteral",
"src": "7387:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "not",
"nativeSrc": "7383:3:20",
"nodeType": "YulIdentifier",
"src": "7383:3:20"
},
"nativeSrc": "7383:6:20",
"nodeType": "YulFunctionCall",
"src": "7383:6:20"
}
],
"functionName": {
"name": "shift_right_unsigned_dynamic",
"nativeSrc": "7339:28:20",
"nodeType": "YulIdentifier",
"src": "7339:28:20"
},
"nativeSrc": "7339:51:20",
"nodeType": "YulFunctionCall",
"src": "7339:51:20"
}
],
"functionName": {
"name": "not",
"nativeSrc": "7335:3:20",
"nodeType": "YulIdentifier",
"src": "7335:3:20"
},
"nativeSrc": "7335:56:20",
"nodeType": "YulFunctionCall",
"src": "7335:56:20"
},
"variables": [
{
"name": "mask",
"nativeSrc": "7327:4:20",
"nodeType": "YulTypedName",
"src": "7327:4:20",
"type": ""
}
]
},
{
"nativeSrc": "7400:25:20",
"nodeType": "YulAssignment",
"src": "7400:25:20",
"value": {
"arguments": [
{
"name": "data",
"nativeSrc": "7414:4:20",
"nodeType": "YulIdentifier",
"src": "7414:4:20"
},
{
"name": "mask",
"nativeSrc": "7420:4:20",
"nodeType": "YulIdentifier",
"src": "7420:4:20"
}
],
"functionName": {
"name": "and",
"nativeSrc": "7410:3:20",
"nodeType": "YulIdentifier",
"src": "7410:3:20"
},
"nativeSrc": "7410:15:20",
"nodeType": "YulFunctionCall",
"src": "7410:15:20"
},
"variableNames": [
{
"name": "result",
"nativeSrc": "7400:6:20",
"nodeType": "YulIdentifier",
"src": "7400:6:20"
}
]
}
]
},
"name": "mask_bytes_dynamic",
"nativeSrc": "7262:169:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "data",
"nativeSrc": "7290:4:20",
"nodeType": "YulTypedName",
"src": "7290:4:20",
"type": ""
},
{
"name": "bytes",
"nativeSrc": "7296:5:20",
"nodeType": "YulTypedName",
"src": "7296:5:20",
"type": ""
}
],
"returnVariables": [
{
"name": "result",
"nativeSrc": "7306:6:20",
"nodeType": "YulTypedName",
"src": "7306:6:20",
"type": ""
}
],
"src": "7262:169:20"
},
{
"body": {
"nativeSrc": "7517:214:20",
"nodeType": "YulBlock",
"src": "7517:214:20",
"statements": [
{
"nativeSrc": "7650:37:20",
"nodeType": "YulAssignment",
"src": "7650:37:20",
"value": {
"arguments": [
{
"name": "data",
"nativeSrc": "7677:4:20",
"nodeType": "YulIdentifier",
"src": "7677:4:20"
},
{
"name": "len",
"nativeSrc": "7683:3:20",
"nodeType": "YulIdentifier",
"src": "7683:3:20"
}
],
"functionName": {
"name": "mask_bytes_dynamic",
"nativeSrc": "7658:18:20",
"nodeType": "YulIdentifier",
"src": "7658:18:20"
},
"nativeSrc": "7658:29:20",
"nodeType": "YulFunctionCall",
"src": "7658:29:20"
},
"variableNames": [
{
"name": "data",
"nativeSrc": "7650:4:20",
"nodeType": "YulIdentifier",
"src": "7650:4:20"
}
]
},
{
"nativeSrc": "7696:29:20",
"nodeType": "YulAssignment",
"src": "7696:29:20",
"value": {
"arguments": [
{
"name": "data",
"nativeSrc": "7707:4:20",
"nodeType": "YulIdentifier",
"src": "7707:4:20"
},
{
"arguments": [
{
"kind": "number",
"nativeSrc": "7717:1:20",
"nodeType": "YulLiteral",
"src": "7717:1:20",
"type": "",
"value": "2"
},
{
"name": "len",
"nativeSrc": "7720:3:20",
"nodeType": "YulIdentifier",
"src": "7720:3:20"
}
],
"functionName": {
"name": "mul",
"nativeSrc": "7713:3:20",
"nodeType": "YulIdentifier",
"src": "7713:3:20"
},
"nativeSrc": "7713:11:20",
"nodeType": "YulFunctionCall",
"src": "7713:11:20"
}
],
"functionName": {
"name": "or",
"nativeSrc": "7704:2:20",
"nodeType": "YulIdentifier",
"src": "7704:2:20"
},
"nativeSrc": "7704:21:20",
"nodeType": "YulFunctionCall",
"src": "7704:21:20"
},
"variableNames": [
{
"name": "used",
"nativeSrc": "7696:4:20",
"nodeType": "YulIdentifier",
"src": "7696:4:20"
}
]
}
]
},
"name": "extract_used_part_and_set_length_of_short_byte_array",
"nativeSrc": "7436:295:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "data",
"nativeSrc": "7498:4:20",
"nodeType": "YulTypedName",
"src": "7498:4:20",
"type": ""
},
{
"name": "len",
"nativeSrc": "7504:3:20",
"nodeType": "YulTypedName",
"src": "7504:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "used",
"nativeSrc": "7512:4:20",
"nodeType": "YulTypedName",
"src": "7512:4:20",
"type": ""
}
],
"src": "7436:295:20"
},
{
"body": {
"nativeSrc": "7828:1303:20",
"nodeType": "YulBlock",
"src": "7828:1303:20",
"statements": [
{
"nativeSrc": "7839:51:20",
"nodeType": "YulVariableDeclaration",
"src": "7839:51:20",
"value": {
"arguments": [
{
"name": "src",
"nativeSrc": "7886:3:20",
"nodeType": "YulIdentifier",
"src": "7886:3:20"
}
],
"functionName": {
"name": "array_length_t_string_memory_ptr",
"nativeSrc": "7853:32:20",
"nodeType": "YulIdentifier",
"src": "7853:32:20"
},
"nativeSrc": "7853:37:20",
"nodeType": "YulFunctionCall",
"src": "7853:37:20"
},
"variables": [
{
"name": "newLen",
"nativeSrc": "7843:6:20",
"nodeType": "YulTypedName",
"src": "7843:6:20",
"type": ""
}
]
},
{
"body": {
"nativeSrc": "7975:22:20",
"nodeType": "YulBlock",
"src": "7975:22:20",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x41",
"nativeSrc": "7977:16:20",
"nodeType": "YulIdentifier",
"src": "7977:16:20"
},
"nativeSrc": "7977:18:20",
"nodeType": "YulFunctionCall",
"src": "7977:18:20"
},
"nativeSrc": "7977:18:20",
"nodeType": "YulExpressionStatement",
"src": "7977:18:20"
}
]
},
"condition": {
"arguments": [
{
"name": "newLen",
"nativeSrc": "7947:6:20",
"nodeType": "YulIdentifier",
"src": "7947:6:20"
},
{
"kind": "number",
"nativeSrc": "7955:18:20",
"nodeType": "YulLiteral",
"src": "7955:18:20",
"type": "",
"value": "0xffffffffffffffff"
}
],
"functionName": {
"name": "gt",
"nativeSrc": "7944:2:20",
"nodeType": "YulIdentifier",
"src": "7944:2:20"
},
"nativeSrc": "7944:30:20",
"nodeType": "YulFunctionCall",
"src": "7944:30:20"
},
"nativeSrc": "7941:56:20",
"nodeType": "YulIf",
"src": "7941:56:20"
},
{
"nativeSrc": "8007:52:20",
"nodeType": "YulVariableDeclaration",
"src": "8007:52:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "slot",
"nativeSrc": "8053:4:20",
"nodeType": "YulIdentifier",
"src": "8053:4:20"
}
],
"functionName": {
"name": "sload",
"nativeSrc": "8047:5:20",
"nodeType": "YulIdentifier",
"src": "8047:5:20"
},
"nativeSrc": "8047:11:20",
"nodeType": "YulFunctionCall",
"src": "8047:11:20"
}
],
"functionName": {
"name": "extract_byte_array_length",
"nativeSrc": "8021:25:20",
"nodeType": "YulIdentifier",
"src": "8021:25:20"
},
"nativeSrc": "8021:38:20",
"nodeType": "YulFunctionCall",
"src": "8021:38:20"
},
"variables": [
{
"name": "oldLen",
"nativeSrc": "8011:6:20",
"nodeType": "YulTypedName",
"src": "8011:6:20",
"type": ""
}
]
},
{
"expression": {
"arguments": [
{
"name": "slot",
"nativeSrc": "8152:4:20",
"nodeType": "YulIdentifier",
"src": "8152:4:20"
},
{
"name": "oldLen",
"nativeSrc": "8158:6:20",
"nodeType": "YulIdentifier",
"src": "8158:6:20"
},
{
"name": "newLen",
"nativeSrc": "8166:6:20",
"nodeType": "YulIdentifier",
"src": "8166:6:20"
}
],
"functionName": {
"name": "clean_up_bytearray_end_slots_t_string_storage",
"nativeSrc": "8106:45:20",
"nodeType": "YulIdentifier",
"src": "8106:45:20"
},
"nativeSrc": "8106:67:20",
"nodeType": "YulFunctionCall",
"src": "8106:67:20"
},
"nativeSrc": "8106:67:20",
"nodeType": "YulExpressionStatement",
"src": "8106:67:20"
},
{
"nativeSrc": "8183:18:20",
"nodeType": "YulVariableDeclaration",
"src": "8183:18:20",
"value": {
"kind": "number",
"nativeSrc": "8200:1:20",
"nodeType": "YulLiteral",
"src": "8200:1:20",
"type": "",
"value": "0"
},
"variables": [
{
"name": "srcOffset",
"nativeSrc": "8187:9:20",
"nodeType": "YulTypedName",
"src": "8187:9:20",
"type": ""
}
]
},
{
"nativeSrc": "8211:17:20",
"nodeType": "YulAssignment",
"src": "8211:17:20",
"value": {
"kind": "number",
"nativeSrc": "8224:4:20",
"nodeType": "YulLiteral",
"src": "8224:4:20",
"type": "",
"value": "0x20"
},
"variableNames": [
{
"name": "srcOffset",
"nativeSrc": "8211:9:20",
"nodeType": "YulIdentifier",
"src": "8211:9:20"
}
]
},
{
"cases": [
{
"body": {
"nativeSrc": "8275:611:20",
"nodeType": "YulBlock",
"src": "8275:611:20",
"statements": [
{
"nativeSrc": "8289:37:20",
"nodeType": "YulVariableDeclaration",
"src": "8289:37:20",
"value": {
"arguments": [
{
"name": "newLen",
"nativeSrc": "8308:6:20",
"nodeType": "YulIdentifier",
"src": "8308:6:20"
},
{
"arguments": [
{
"kind": "number",
"nativeSrc": "8320:4:20",
"nodeType": "YulLiteral",
"src": "8320:4:20",
"type": "",
"value": "0x1f"
}
],
"functionName": {
"name": "not",
"nativeSrc": "8316:3:20",
"nodeType": "YulIdentifier",
"src": "8316:3:20"
},
"nativeSrc": "8316:9:20",
"nodeType": "YulFunctionCall",
"src": "8316:9:20"
}
],
"functionName": {
"name": "and",
"nativeSrc": "8304:3:20",
"nodeType": "YulIdentifier",
"src": "8304:3:20"
},
"nativeSrc": "8304:22:20",
"nodeType": "YulFunctionCall",
"src": "8304:22:20"
},
"variables": [
{
"name": "loopEnd",
"nativeSrc": "8293:7:20",
"nodeType": "YulTypedName",
"src": "8293:7:20",
"type": ""
}
]
},
{
"nativeSrc": "8340:51:20",
"nodeType": "YulVariableDeclaration",
"src": "8340:51:20",
"value": {
"arguments": [
{
"name": "slot",
"nativeSrc": "8386:4:20",
"nodeType": "YulIdentifier",
"src": "8386:4:20"
}
],
"functionName": {
"name": "array_dataslot_t_string_storage",
"nativeSrc": "8354:31:20",
"nodeType": "YulIdentifier",
"src": "8354:31:20"
},
"nativeSrc": "8354:37:20",
"nodeType": "YulFunctionCall",
"src": "8354:37:20"
},
"variables": [
{
"name": "dstPtr",
"nativeSrc": "8344:6:20",
"nodeType": "YulTypedName",
"src": "8344:6:20",
"type": ""
}
]
},
{
"nativeSrc": "8404:10:20",
"nodeType": "YulVariableDeclaration",
"src": "8404:10:20",
"value": {
"kind": "number",
"nativeSrc": "8413:1:20",
"nodeType": "YulLiteral",
"src": "8413:1:20",
"type": "",
"value": "0"
},
"variables": [
{
"name": "i",
"nativeSrc": "8408:1:20",
"nodeType": "YulTypedName",
"src": "8408:1:20",
"type": ""
}
]
},
{
"body": {
"nativeSrc": "8472:163:20",
"nodeType": "YulBlock",
"src": "8472:163:20",
"statements": [
{
"expression": {
"arguments": [
{
"name": "dstPtr",
"nativeSrc": "8497:6:20",
"nodeType": "YulIdentifier",
"src": "8497:6:20"
},
{
"arguments": [
{
"arguments": [
{
"name": "src",
"nativeSrc": "8515:3:20",
"nodeType": "YulIdentifier",
"src": "8515:3:20"
},
{
"name": "srcOffset",
"nativeSrc": "8520:9:20",
"nodeType": "YulIdentifier",
"src": "8520:9:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "8511:3:20",
"nodeType": "YulIdentifier",
"src": "8511:3:20"
},
"nativeSrc": "8511:19:20",
"nodeType": "YulFunctionCall",
"src": "8511:19:20"
}
],
"functionName": {
"name": "mload",
"nativeSrc": "8505:5:20",
"nodeType": "YulIdentifier",
"src": "8505:5:20"
},
"nativeSrc": "8505:26:20",
"nodeType": "YulFunctionCall",
"src": "8505:26:20"
}
],
"functionName": {
"name": "sstore",
"nativeSrc": "8490:6:20",
"nodeType": "YulIdentifier",
"src": "8490:6:20"
},
"nativeSrc": "8490:42:20",
"nodeType": "YulFunctionCall",
"src": "8490:42:20"
},
"nativeSrc": "8490:42:20",
"nodeType": "YulExpressionStatement",
"src": "8490:42:20"
},
{
"nativeSrc": "8549:24:20",
"nodeType": "YulAssignment",
"src": "8549:24:20",
"value": {
"arguments": [
{
"name": "dstPtr",
"nativeSrc": "8563:6:20",
"nodeType": "YulIdentifier",
"src": "8563:6:20"
},
{
"kind": "number",
"nativeSrc": "8571:1:20",
"nodeType": "YulLiteral",
"src": "8571:1:20",
"type": "",
"value": "1"
}
],
"functionName": {
"name": "add",
"nativeSrc": "8559:3:20",
"nodeType": "YulIdentifier",
"src": "8559:3:20"
},
"nativeSrc": "8559:14:20",
"nodeType": "YulFunctionCall",
"src": "8559:14:20"
},
"variableNames": [
{
"name": "dstPtr",
"nativeSrc": "8549:6:20",
"nodeType": "YulIdentifier",
"src": "8549:6:20"
}
]
},
{
"nativeSrc": "8590:31:20",
"nodeType": "YulAssignment",
"src": "8590:31:20",
"value": {
"arguments": [
{
"name": "srcOffset",
"nativeSrc": "8607:9:20",
"nodeType": "YulIdentifier",
"src": "8607:9:20"
},
{
"kind": "number",
"nativeSrc": "8618:2:20",
"nodeType": "YulLiteral",
"src": "8618:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "8603:3:20",
"nodeType": "YulIdentifier",
"src": "8603:3:20"
},
"nativeSrc": "8603:18:20",
"nodeType": "YulFunctionCall",
"src": "8603:18:20"
},
"variableNames": [
{
"name": "srcOffset",
"nativeSrc": "8590:9:20",
"nodeType": "YulIdentifier",
"src": "8590:9:20"
}
]
}
]
},
"condition": {
"arguments": [
{
"name": "i",
"nativeSrc": "8438:1:20",
"nodeType": "YulIdentifier",
"src": "8438:1:20"
},
{
"name": "loopEnd",
"nativeSrc": "8441:7:20",
"nodeType": "YulIdentifier",
"src": "8441:7:20"
}
],
"functionName": {
"name": "lt",
"nativeSrc": "8435:2:20",
"nodeType": "YulIdentifier",
"src": "8435:2:20"
},
"nativeSrc": "8435:14:20",
"nodeType": "YulFunctionCall",
"src": "8435:14:20"
},
"nativeSrc": "8427:208:20",
"nodeType": "YulForLoop",
"post": {
"nativeSrc": "8450:21:20",
"nodeType": "YulBlock",
"src": "8450:21:20",
"statements": [
{
"nativeSrc": "8452:17:20",
"nodeType": "YulAssignment",
"src": "8452:17:20",
"value": {
"arguments": [
{
"name": "i",
"nativeSrc": "8461:1:20",
"nodeType": "YulIdentifier",
"src": "8461:1:20"
},
{
"kind": "number",
"nativeSrc": "8464:4:20",
"nodeType": "YulLiteral",
"src": "8464:4:20",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "8457:3:20",
"nodeType": "YulIdentifier",
"src": "8457:3:20"
},
"nativeSrc": "8457:12:20",
"nodeType": "YulFunctionCall",
"src": "8457:12:20"
},
"variableNames": [
{
"name": "i",
"nativeSrc": "8452:1:20",
"nodeType": "YulIdentifier",
"src": "8452:1:20"
}
]
}
]
},
"pre": {
"nativeSrc": "8431:3:20",
"nodeType": "YulBlock",
"src": "8431:3:20",
"statements": []
},
"src": "8427:208:20"
},
{
"body": {
"nativeSrc": "8671:156:20",
"nodeType": "YulBlock",
"src": "8671:156:20",
"statements": [
{
"nativeSrc": "8689:43:20",
"nodeType": "YulVariableDeclaration",
"src": "8689:43:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "src",
"nativeSrc": "8716:3:20",
"nodeType": "YulIdentifier",
"src": "8716:3:20"
},
{
"name": "srcOffset",
"nativeSrc": "8721:9:20",
"nodeType": "YulIdentifier",
"src": "8721:9:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "8712:3:20",
"nodeType": "YulIdentifier",
"src": "8712:3:20"
},
"nativeSrc": "8712:19:20",
"nodeType": "YulFunctionCall",
"src": "8712:19:20"
}
],
"functionName": {
"name": "mload",
"nativeSrc": "8706:5:20",
"nodeType": "YulIdentifier",
"src": "8706:5:20"
},
"nativeSrc": "8706:26:20",
"nodeType": "YulFunctionCall",
"src": "8706:26:20"
},
"variables": [
{
"name": "lastValue",
"nativeSrc": "8693:9:20",
"nodeType": "YulTypedName",
"src": "8693:9:20",
"type": ""
}
]
},
{
"expression": {
"arguments": [
{
"name": "dstPtr",
"nativeSrc": "8756:6:20",
"nodeType": "YulIdentifier",
"src": "8756:6:20"
},
{
"arguments": [
{
"name": "lastValue",
"nativeSrc": "8783:9:20",
"nodeType": "YulIdentifier",
"src": "8783:9:20"
},
{
"arguments": [
{
"name": "newLen",
"nativeSrc": "8798:6:20",
"nodeType": "YulIdentifier",
"src": "8798:6:20"
},
{
"kind": "number",
"nativeSrc": "8806:4:20",
"nodeType": "YulLiteral",
"src": "8806:4:20",
"type": "",
"value": "0x1f"
}
],
"functionName": {
"name": "and",
"nativeSrc": "8794:3:20",
"nodeType": "YulIdentifier",
"src": "8794:3:20"
},
"nativeSrc": "8794:17:20",
"nodeType": "YulFunctionCall",
"src": "8794:17:20"
}
],
"functionName": {
"name": "mask_bytes_dynamic",
"nativeSrc": "8764:18:20",
"nodeType": "YulIdentifier",
"src": "8764:18:20"
},
"nativeSrc": "8764:48:20",
"nodeType": "YulFunctionCall",
"src": "8764:48:20"
}
],
"functionName": {
"name": "sstore",
"nativeSrc": "8749:6:20",
"nodeType": "YulIdentifier",
"src": "8749:6:20"
},
"nativeSrc": "8749:64:20",
"nodeType": "YulFunctionCall",
"src": "8749:64:20"
},
"nativeSrc": "8749:64:20",
"nodeType": "YulExpressionStatement",
"src": "8749:64:20"
}
]
},
"condition": {
"arguments": [
{
"name": "loopEnd",
"nativeSrc": "8654:7:20",
"nodeType": "YulIdentifier",
"src": "8654:7:20"
},
{
"name": "newLen",
"nativeSrc": "8663:6:20",
"nodeType": "YulIdentifier",
"src": "8663:6:20"
}
],
"functionName": {
"name": "lt",
"nativeSrc": "8651:2:20",
"nodeType": "YulIdentifier",
"src": "8651:2:20"
},
"nativeSrc": "8651:19:20",
"nodeType": "YulFunctionCall",
"src": "8651:19:20"
},
"nativeSrc": "8648:179:20",
"nodeType": "YulIf",
"src": "8648:179:20"
},
{
"expression": {
"arguments": [
{
"name": "slot",
"nativeSrc": "8847:4:20",
"nodeType": "YulIdentifier",
"src": "8847:4:20"
},
{
"arguments": [
{
"arguments": [
{
"name": "newLen",
"nativeSrc": "8861:6:20",
"nodeType": "YulIdentifier",
"src": "8861:6:20"
},
{
"kind": "number",
"nativeSrc": "8869:1:20",
"nodeType": "YulLiteral",
"src": "8869:1:20",
"type": "",
"value": "2"
}
],
"functionName": {
"name": "mul",
"nativeSrc": "8857:3:20",
"nodeType": "YulIdentifier",
"src": "8857:3:20"
},
"nativeSrc": "8857:14:20",
"nodeType": "YulFunctionCall",
"src": "8857:14:20"
},
{
"kind": "number",
"nativeSrc": "8873:1:20",
"nodeType": "YulLiteral",
"src": "8873:1:20",
"type": "",
"value": "1"
}
],
"functionName": {
"name": "add",
"nativeSrc": "8853:3:20",
"nodeType": "YulIdentifier",
"src": "8853:3:20"
},
"nativeSrc": "8853:22:20",
"nodeType": "YulFunctionCall",
"src": "8853:22:20"
}
],
"functionName": {
"name": "sstore",
"nativeSrc": "8840:6:20",
"nodeType": "YulIdentifier",
"src": "8840:6:20"
},
"nativeSrc": "8840:36:20",
"nodeType": "YulFunctionCall",
"src": "8840:36:20"
},
"nativeSrc": "8840:36:20",
"nodeType": "YulExpressionStatement",
"src": "8840:36:20"
}
]
},
"nativeSrc": "8268:618:20",
"nodeType": "YulCase",
"src": "8268:618:20",
"value": {
"kind": "number",
"nativeSrc": "8273:1:20",
"nodeType": "YulLiteral",
"src": "8273:1:20",
"type": "",
"value": "1"
}
},
{
"body": {
"nativeSrc": "8903:222:20",
"nodeType": "YulBlock",
"src": "8903:222:20",
"statements": [
{
"nativeSrc": "8917:14:20",
"nodeType": "YulVariableDeclaration",
"src": "8917:14:20",
"value": {
"kind": "number",
"nativeSrc": "8930:1:20",
"nodeType": "YulLiteral",
"src": "8930:1:20",
"type": "",
"value": "0"
},
"variables": [
{
"name": "value",
"nativeSrc": "8921:5:20",
"nodeType": "YulTypedName",
"src": "8921:5:20",
"type": ""
}
]
},
{
"body": {
"nativeSrc": "8954:67:20",
"nodeType": "YulBlock",
"src": "8954:67:20",
"statements": [
{
"nativeSrc": "8972:35:20",
"nodeType": "YulAssignment",
"src": "8972:35:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "src",
"nativeSrc": "8991:3:20",
"nodeType": "YulIdentifier",
"src": "8991:3:20"
},
{
"name": "srcOffset",
"nativeSrc": "8996:9:20",
"nodeType": "YulIdentifier",
"src": "8996:9:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "8987:3:20",
"nodeType": "YulIdentifier",
"src": "8987:3:20"
},
"nativeSrc": "8987:19:20",
"nodeType": "YulFunctionCall",
"src": "8987:19:20"
}
],
"functionName": {
"name": "mload",
"nativeSrc": "8981:5:20",
"nodeType": "YulIdentifier",
"src": "8981:5:20"
},
"nativeSrc": "8981:26:20",
"nodeType": "YulFunctionCall",
"src": "8981:26:20"
},
"variableNames": [
{
"name": "value",
"nativeSrc": "8972:5:20",
"nodeType": "YulIdentifier",
"src": "8972:5:20"
}
]
}
]
},
"condition": {
"name": "newLen",
"nativeSrc": "8947:6:20",
"nodeType": "YulIdentifier",
"src": "8947:6:20"
},
"nativeSrc": "8944:77:20",
"nodeType": "YulIf",
"src": "8944:77:20"
},
{
"expression": {
"arguments": [
{
"name": "slot",
"nativeSrc": "9041:4:20",
"nodeType": "YulIdentifier",
"src": "9041:4:20"
},
{
"arguments": [
{
"name": "value",
"nativeSrc": "9100:5:20",
"nodeType": "YulIdentifier",
"src": "9100:5:20"
},
{
"name": "newLen",
"nativeSrc": "9107:6:20",
"nodeType": "YulIdentifier",
"src": "9107:6:20"
}
],
"functionName": {
"name": "extract_used_part_and_set_length_of_short_byte_array",
"nativeSrc": "9047:52:20",
"nodeType": "YulIdentifier",
"src": "9047:52:20"
},
"nativeSrc": "9047:67:20",
"nodeType": "YulFunctionCall",
"src": "9047:67:20"
}
],
"functionName": {
"name": "sstore",
"nativeSrc": "9034:6:20",
"nodeType": "YulIdentifier",
"src": "9034:6:20"
},
"nativeSrc": "9034:81:20",
"nodeType": "YulFunctionCall",
"src": "9034:81:20"
},
"nativeSrc": "9034:81:20",
"nodeType": "YulExpressionStatement",
"src": "9034:81:20"
}
]
},
"nativeSrc": "8895:230:20",
"nodeType": "YulCase",
"src": "8895:230:20",
"value": "default"
}
],
"expression": {
"arguments": [
{
"name": "newLen",
"nativeSrc": "8248:6:20",
"nodeType": "YulIdentifier",
"src": "8248:6:20"
},
{
"kind": "number",
"nativeSrc": "8256:2:20",
"nodeType": "YulLiteral",
"src": "8256:2:20",
"type": "",
"value": "31"
}
],
"functionName": {
"name": "gt",
"nativeSrc": "8245:2:20",
"nodeType": "YulIdentifier",
"src": "8245:2:20"
},
"nativeSrc": "8245:14:20",
"nodeType": "YulFunctionCall",
"src": "8245:14:20"
},
"nativeSrc": "8238:887:20",
"nodeType": "YulSwitch",
"src": "8238:887:20"
}
]
},
"name": "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage",
"nativeSrc": "7736:1395:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "slot",
"nativeSrc": "7817:4:20",
"nodeType": "YulTypedName",
"src": "7817:4:20",
"type": ""
},
{
"name": "src",
"nativeSrc": "7823:3:20",
"nodeType": "YulTypedName",
"src": "7823:3:20",
"type": ""
}
],
"src": "7736:1395:20"
},
{
"body": {
"nativeSrc": "9182:32:20",
"nodeType": "YulBlock",
"src": "9182:32:20",
"statements": [
{
"nativeSrc": "9192:16:20",
"nodeType": "YulAssignment",
"src": "9192:16:20",
"value": {
"name": "value",
"nativeSrc": "9203:5:20",
"nodeType": "YulIdentifier",
"src": "9203:5:20"
},
"variableNames": [
{
"name": "cleaned",
"nativeSrc": "9192:7:20",
"nodeType": "YulIdentifier",
"src": "9192:7:20"
}
]
}
]
},
"name": "cleanup_t_bytes32",
"nativeSrc": "9137:77:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "9164:5:20",
"nodeType": "YulTypedName",
"src": "9164:5:20",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nativeSrc": "9174:7:20",
"nodeType": "YulTypedName",
"src": "9174:7:20",
"type": ""
}
],
"src": "9137:77:20"
},
{
"body": {
"nativeSrc": "9285:53:20",
"nodeType": "YulBlock",
"src": "9285:53:20",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "9302:3:20",
"nodeType": "YulIdentifier",
"src": "9302:3:20"
},
{
"arguments": [
{
"name": "value",
"nativeSrc": "9325:5:20",
"nodeType": "YulIdentifier",
"src": "9325:5:20"
}
],
"functionName": {
"name": "cleanup_t_bytes32",
"nativeSrc": "9307:17:20",
"nodeType": "YulIdentifier",
"src": "9307:17:20"
},
"nativeSrc": "9307:24:20",
"nodeType": "YulFunctionCall",
"src": "9307:24:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "9295:6:20",
"nodeType": "YulIdentifier",
"src": "9295:6:20"
},
"nativeSrc": "9295:37:20",
"nodeType": "YulFunctionCall",
"src": "9295:37:20"
},
"nativeSrc": "9295:37:20",
"nodeType": "YulExpressionStatement",
"src": "9295:37:20"
}
]
},
"name": "abi_encode_t_bytes32_to_t_bytes32_fromStack",
"nativeSrc": "9220:118:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "9273:5:20",
"nodeType": "YulTypedName",
"src": "9273:5:20",
"type": ""
},
{
"name": "pos",
"nativeSrc": "9280:3:20",
"nodeType": "YulTypedName",
"src": "9280:3:20",
"type": ""
}
],
"src": "9220:118:20"
},
{
"body": {
"nativeSrc": "9409:53:20",
"nodeType": "YulBlock",
"src": "9409:53:20",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "9426:3:20",
"nodeType": "YulIdentifier",
"src": "9426:3:20"
},
{
"arguments": [
{
"name": "value",
"nativeSrc": "9449:5:20",
"nodeType": "YulIdentifier",
"src": "9449:5:20"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nativeSrc": "9431:17:20",
"nodeType": "YulIdentifier",
"src": "9431:17:20"
},
"nativeSrc": "9431:24:20",
"nodeType": "YulFunctionCall",
"src": "9431:24:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "9419:6:20",
"nodeType": "YulIdentifier",
"src": "9419:6:20"
},
"nativeSrc": "9419:37:20",
"nodeType": "YulFunctionCall",
"src": "9419:37:20"
},
"nativeSrc": "9419:37:20",
"nodeType": "YulExpressionStatement",
"src": "9419:37:20"
}
]
},
"name": "abi_encode_t_uint256_to_t_uint256_fromStack",
"nativeSrc": "9344:118:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "9397:5:20",
"nodeType": "YulTypedName",
"src": "9397:5:20",
"type": ""
},
{
"name": "pos",
"nativeSrc": "9404:3:20",
"nodeType": "YulTypedName",
"src": "9404:3:20",
"type": ""
}
],
"src": "9344:118:20"
},
{
"body": {
"nativeSrc": "9533:53:20",
"nodeType": "YulBlock",
"src": "9533:53:20",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "9550:3:20",
"nodeType": "YulIdentifier",
"src": "9550:3:20"
},
{
"arguments": [
{
"name": "value",
"nativeSrc": "9573:5:20",
"nodeType": "YulIdentifier",
"src": "9573:5:20"
}
],
"functionName": {
"name": "cleanup_t_address",
"nativeSrc": "9555:17:20",
"nodeType": "YulIdentifier",
"src": "9555:17:20"
},
"nativeSrc": "9555:24:20",
"nodeType": "YulFunctionCall",
"src": "9555:24:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "9543:6:20",
"nodeType": "YulIdentifier",
"src": "9543:6:20"
},
"nativeSrc": "9543:37:20",
"nodeType": "YulFunctionCall",
"src": "9543:37:20"
},
"nativeSrc": "9543:37:20",
"nodeType": "YulExpressionStatement",
"src": "9543:37:20"
}
]
},
"name": "abi_encode_t_address_to_t_address_fromStack",
"nativeSrc": "9468:118:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "9521:5:20",
"nodeType": "YulTypedName",
"src": "9521:5:20",
"type": ""
},
{
"name": "pos",
"nativeSrc": "9528:3:20",
"nodeType": "YulTypedName",
"src": "9528:3:20",
"type": ""
}
],
"src": "9468:118:20"
},
{
"body": {
"nativeSrc": "9802:454:20",
"nodeType": "YulBlock",
"src": "9802:454:20",
"statements": [
{
"nativeSrc": "9812:27:20",
"nodeType": "YulAssignment",
"src": "9812:27:20",
"value": {
"arguments": [
{
"name": "headStart",
"nativeSrc": "9824:9:20",
"nodeType": "YulIdentifier",
"src": "9824:9:20"
},
{
"kind": "number",
"nativeSrc": "9835:3:20",
"nodeType": "YulLiteral",
"src": "9835:3:20",
"type": "",
"value": "160"
}
],
"functionName": {
"name": "add",
"nativeSrc": "9820:3:20",
"nodeType": "YulIdentifier",
"src": "9820:3:20"
},
"nativeSrc": "9820:19:20",
"nodeType": "YulFunctionCall",
"src": "9820:19:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "9812:4:20",
"nodeType": "YulIdentifier",
"src": "9812:4:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value0",
"nativeSrc": "9893:6:20",
"nodeType": "YulIdentifier",
"src": "9893:6:20"
},
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "9906:9:20",
"nodeType": "YulIdentifier",
"src": "9906:9:20"
},
{
"kind": "number",
"nativeSrc": "9917:1:20",
"nodeType": "YulLiteral",
"src": "9917:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "9902:3:20",
"nodeType": "YulIdentifier",
"src": "9902:3:20"
},
"nativeSrc": "9902:17:20",
"nodeType": "YulFunctionCall",
"src": "9902:17:20"
}
],
"functionName": {
"name": "abi_encode_t_bytes32_to_t_bytes32_fromStack",
"nativeSrc": "9849:43:20",
"nodeType": "YulIdentifier",
"src": "9849:43:20"
},
"nativeSrc": "9849:71:20",
"nodeType": "YulFunctionCall",
"src": "9849:71:20"
},
"nativeSrc": "9849:71:20",
"nodeType": "YulExpressionStatement",
"src": "9849:71:20"
},
{
"expression": {
"arguments": [
{
"name": "value1",
"nativeSrc": "9974:6:20",
"nodeType": "YulIdentifier",
"src": "9974:6:20"
},
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "9987:9:20",
"nodeType": "YulIdentifier",
"src": "9987:9:20"
},
{
"kind": "number",
"nativeSrc": "9998:2:20",
"nodeType": "YulLiteral",
"src": "9998:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "9983:3:20",
"nodeType": "YulIdentifier",
"src": "9983:3:20"
},
"nativeSrc": "9983:18:20",
"nodeType": "YulFunctionCall",
"src": "9983:18:20"
}
],
"functionName": {
"name": "abi_encode_t_bytes32_to_t_bytes32_fromStack",
"nativeSrc": "9930:43:20",
"nodeType": "YulIdentifier",
"src": "9930:43:20"
},
"nativeSrc": "9930:72:20",
"nodeType": "YulFunctionCall",
"src": "9930:72:20"
},
"nativeSrc": "9930:72:20",
"nodeType": "YulExpressionStatement",
"src": "9930:72:20"
},
{
"expression": {
"arguments": [
{
"name": "value2",
"nativeSrc": "10056:6:20",
"nodeType": "YulIdentifier",
"src": "10056:6:20"
},
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "10069:9:20",
"nodeType": "YulIdentifier",
"src": "10069:9:20"
},
{
"kind": "number",
"nativeSrc": "10080:2:20",
"nodeType": "YulLiteral",
"src": "10080:2:20",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "add",
"nativeSrc": "10065:3:20",
"nodeType": "YulIdentifier",
"src": "10065:3:20"
},
"nativeSrc": "10065:18:20",
"nodeType": "YulFunctionCall",
"src": "10065:18:20"
}
],
"functionName": {
"name": "abi_encode_t_bytes32_to_t_bytes32_fromStack",
"nativeSrc": "10012:43:20",
"nodeType": "YulIdentifier",
"src": "10012:43:20"
},
"nativeSrc": "10012:72:20",
"nodeType": "YulFunctionCall",
"src": "10012:72:20"
},
"nativeSrc": "10012:72:20",
"nodeType": "YulExpressionStatement",
"src": "10012:72:20"
},
{
"expression": {
"arguments": [
{
"name": "value3",
"nativeSrc": "10138:6:20",
"nodeType": "YulIdentifier",
"src": "10138:6:20"
},
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "10151:9:20",
"nodeType": "YulIdentifier",
"src": "10151:9:20"
},
{
"kind": "number",
"nativeSrc": "10162:2:20",
"nodeType": "YulLiteral",
"src": "10162:2:20",
"type": "",
"value": "96"
}
],
"functionName": {
"name": "add",
"nativeSrc": "10147:3:20",
"nodeType": "YulIdentifier",
"src": "10147:3:20"
},
"nativeSrc": "10147:18:20",
"nodeType": "YulFunctionCall",
"src": "10147:18:20"
}
],
"functionName": {
"name": "abi_encode_t_uint256_to_t_uint256_fromStack",
"nativeSrc": "10094:43:20",
"nodeType": "YulIdentifier",
"src": "10094:43:20"
},
"nativeSrc": "10094:72:20",
"nodeType": "YulFunctionCall",
"src": "10094:72:20"
},
"nativeSrc": "10094:72:20",
"nodeType": "YulExpressionStatement",
"src": "10094:72:20"
},
{
"expression": {
"arguments": [
{
"name": "value4",
"nativeSrc": "10220:6:20",
"nodeType": "YulIdentifier",
"src": "10220:6:20"
},
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "10233:9:20",
"nodeType": "YulIdentifier",
"src": "10233:9:20"
},
{
"kind": "number",
"nativeSrc": "10244:3:20",
"nodeType": "YulLiteral",
"src": "10244:3:20",
"type": "",
"value": "128"
}
],
"functionName": {
"name": "add",
"nativeSrc": "10229:3:20",
"nodeType": "YulIdentifier",
"src": "10229:3:20"
},
"nativeSrc": "10229:19:20",
"nodeType": "YulFunctionCall",
"src": "10229:19:20"
}
],
"functionName": {
"name": "abi_encode_t_address_to_t_address_fromStack",
"nativeSrc": "10176:43:20",
"nodeType": "YulIdentifier",
"src": "10176:43:20"
},
"nativeSrc": "10176:73:20",
"nodeType": "YulFunctionCall",
"src": "10176:73:20"
},
"nativeSrc": "10176:73:20",
"nodeType": "YulExpressionStatement",
"src": "10176:73:20"
}
]
},
"name": "abi_encode_tuple_t_bytes32_t_bytes32_t_bytes32_t_uint256_t_address__to_t_bytes32_t_bytes32_t_bytes32_t_uint256_t_address__fromStack_reversed",
"nativeSrc": "9592:664:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "9742:9:20",
"nodeType": "YulTypedName",
"src": "9742:9:20",
"type": ""
},
{
"name": "value4",
"nativeSrc": "9754:6:20",
"nodeType": "YulTypedName",
"src": "9754:6:20",
"type": ""
},
{
"name": "value3",
"nativeSrc": "9762:6:20",
"nodeType": "YulTypedName",
"src": "9762:6:20",
"type": ""
},
{
"name": "value2",
"nativeSrc": "9770:6:20",
"nodeType": "YulTypedName",
"src": "9770:6:20",
"type": ""
},
{
"name": "value1",
"nativeSrc": "9778:6:20",
"nodeType": "YulTypedName",
"src": "9778:6:20",
"type": ""
},
{
"name": "value0",
"nativeSrc": "9786:6:20",
"nodeType": "YulTypedName",
"src": "9786:6:20",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nativeSrc": "9797:4:20",
"nodeType": "YulTypedName",
"src": "9797:4:20",
"type": ""
}
],
"src": "9592:664:20"
}
]
},
"contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address_fromMemory(offset, end) -> value {\n value := mload(offset)\n validator_revert_t_address(value)\n }\n\n function revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n revert(0, 0)\n }\n\n function revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() {\n revert(0, 0)\n }\n\n function round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\n }\n\n function panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n\n function finalize_allocation(memPtr, size) {\n let newFreePtr := add(memPtr, round_up_to_mul_of_32(size))\n // protect against overflow\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n\n function allocate_memory(size) -> memPtr {\n memPtr := allocate_unbounded()\n finalize_allocation(memPtr, size)\n }\n\n function array_allocation_size_t_string_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := round_up_to_mul_of_32(length)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function copy_memory_to_memory_with_cleanup(src, dst, length) {\n\n mcopy(dst, src, length)\n mstore(add(dst, length), 0)\n\n }\n\n function abi_decode_available_length_t_string_memory_ptr_fromMemory(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_string_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n copy_memory_to_memory_with_cleanup(src, dst, length)\n }\n\n // string\n function abi_decode_t_string_memory_ptr_fromMemory(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := mload(offset)\n array := abi_decode_available_length_t_string_memory_ptr_fromMemory(add(offset, 0x20), length, end)\n }\n\n function abi_decode_tuple_t_addresst_string_memory_ptrt_string_memory_ptr_fromMemory(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address_fromMemory(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := mload(add(headStart, 32))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value1 := abi_decode_t_string_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := mload(add(headStart, 64))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value2 := abi_decode_t_string_memory_ptr_fromMemory(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_length_t_string_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function panic_error_0x22() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n\n function extract_byte_array_length(data) -> length {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) {\n length := and(length, 0x7f)\n }\n\n if eq(outOfPlaceEncoding, lt(length, 32)) {\n panic_error_0x22()\n }\n }\n\n function array_dataslot_t_string_storage(ptr) -> data {\n data := ptr\n\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n\n }\n\n function divide_by_32_ceil(value) -> result {\n result := div(add(value, 31), 32)\n }\n\n function shift_left_dynamic(bits, value) -> newValue {\n newValue :=\n\n shl(bits, value)\n\n }\n\n function update_byte_slice_dynamic32(value, shiftBytes, toInsert) -> result {\n let shiftBits := mul(shiftBytes, 8)\n let mask := shift_left_dynamic(shiftBits, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff)\n toInsert := shift_left_dynamic(shiftBits, toInsert)\n value := and(value, not(mask))\n result := or(value, and(toInsert, mask))\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function identity(value) -> ret {\n ret := value\n }\n\n function convert_t_uint256_to_t_uint256(value) -> converted {\n converted := cleanup_t_uint256(identity(cleanup_t_uint256(value)))\n }\n\n function prepare_store_t_uint256(value) -> ret {\n ret := value\n }\n\n function update_storage_value_t_uint256_to_t_uint256(slot, offset, value_0) {\n let convertedValue_0 := convert_t_uint256_to_t_uint256(value_0)\n sstore(slot, update_byte_slice_dynamic32(sload(slot), offset, prepare_store_t_uint256(convertedValue_0)))\n }\n\n function zero_value_for_split_t_uint256() -> ret {\n ret := 0\n }\n\n function storage_set_to_zero_t_uint256(slot, offset) {\n let zero_0 := zero_value_for_split_t_uint256()\n update_storage_value_t_uint256_to_t_uint256(slot, offset, zero_0)\n }\n\n function clear_storage_range_t_bytes1(start, end) {\n for {} lt(start, end) { start := add(start, 1) }\n {\n storage_set_to_zero_t_uint256(start, 0)\n }\n }\n\n function clean_up_bytearray_end_slots_t_string_storage(array, len, startIndex) {\n\n if gt(len, 31) {\n let dataArea := array_dataslot_t_string_storage(array)\n let deleteStart := add(dataArea, divide_by_32_ceil(startIndex))\n // If we are clearing array to be short byte array, we want to clear only data starting from array data area.\n if lt(startIndex, 32) { deleteStart := dataArea }\n clear_storage_range_t_bytes1(deleteStart, add(dataArea, divide_by_32_ceil(len)))\n }\n\n }\n\n function shift_right_unsigned_dynamic(bits, value) -> newValue {\n newValue :=\n\n shr(bits, value)\n\n }\n\n function mask_bytes_dynamic(data, bytes) -> result {\n let mask := not(shift_right_unsigned_dynamic(mul(8, bytes), not(0)))\n result := and(data, mask)\n }\n function extract_used_part_and_set_length_of_short_byte_array(data, len) -> used {\n // we want to save only elements that are part of the array after resizing\n // others should be set to zero\n data := mask_bytes_dynamic(data, len)\n used := or(data, mul(2, len))\n }\n function copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage(slot, src) {\n\n let newLen := array_length_t_string_memory_ptr(src)\n // Make sure array length is sane\n if gt(newLen, 0xffffffffffffffff) { panic_error_0x41() }\n\n let oldLen := extract_byte_array_length(sload(slot))\n\n // potentially truncate data\n clean_up_bytearray_end_slots_t_string_storage(slot, oldLen, newLen)\n\n let srcOffset := 0\n\n srcOffset := 0x20\n\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(0x1f))\n\n let dstPtr := array_dataslot_t_string_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, 0x20) } {\n sstore(dstPtr, mload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, 32)\n }\n if lt(loopEnd, newLen) {\n let lastValue := mload(add(src, srcOffset))\n sstore(dstPtr, mask_bytes_dynamic(lastValue, and(newLen, 0x1f)))\n }\n sstore(slot, add(mul(newLen, 2), 1))\n }\n default {\n let value := 0\n if newLen {\n value := mload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n\n function cleanup_t_bytes32(value) -> cleaned {\n cleaned := value\n }\n\n function abi_encode_t_bytes32_to_t_bytes32_fromStack(value, pos) {\n mstore(pos, cleanup_t_bytes32(value))\n }\n\n function abi_encode_t_uint256_to_t_uint256_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n mstore(pos, cleanup_t_address(value))\n }\n\n function abi_encode_tuple_t_bytes32_t_bytes32_t_bytes32_t_uint256_t_address__to_t_bytes32_t_bytes32_t_bytes32_t_uint256_t_address__fromStack_reversed(headStart , value4, value3, value2, value1, value0) -> tail {\n tail := add(headStart, 160)\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value1, add(headStart, 32))\n\n abi_encode_t_bytes32_to_t_bytes32_fromStack(value2, add(headStart, 64))\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value3, add(headStart, 96))\n\n abi_encode_t_address_to_t_address_fromStack(value4, add(headStart, 128))\n\n }\n\n}\n",
"id": 20,
"language": "Yul",
"name": "#utility.yul"
}
],
"linkReferences": {},
"object": "6101006040527f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c960e090815250348015610037575f80fd5b50604051613f2a380380613f2a8339818101604052810190610059919061046c565b81818181816005908161006c9190610701565b50806006908161007c9190610701565b5050504660a081815250503073ffffffffffffffffffffffffffffffffffffffff1660c08173ffffffffffffffffffffffffffffffffffffffff16815250506100c96100e960201b60201c565b6080818152505050506100e18361017260201b60201c565b505050610857565b5f7f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f61011961023560201b60201c565b805190602001207fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc64630604051602001610157959493929190610806565b60405160208183030381529060405280519060200120905090565b5f60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8292fce18fa69edf4db7b94ea2e58241df0ae57f97e0a6c9b29067028bf92d7660405160405180910390a35050565b6060600580546102449061052b565b80601f01602080910402602001604051908101604052809291908181526020018280546102709061052b565b80156102bb5780601f10610292576101008083540402835291602001916102bb565b820191905f5260205f20905b81548152906001019060200180831161029e57829003601f168201915b5050505050905090565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6102ff826102d6565b9050919050565b61030f816102f5565b8114610319575f80fd5b50565b5f8151905061032a81610306565b92915050565b5f80fd5b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b61037e82610338565b810181811067ffffffffffffffff8211171561039d5761039c610348565b5b80604052505050565b5f6103af6102c5565b90506103bb8282610375565b919050565b5f67ffffffffffffffff8211156103da576103d9610348565b5b6103e382610338565b9050602081019050919050565b8281835e5f83830152505050565b5f61041061040b846103c0565b6103a6565b90508281526020810184848401111561042c5761042b610334565b5b6104378482856103f0565b509392505050565b5f82601f83011261045357610452610330565b5b81516104638482602086016103fe565b91505092915050565b5f805f60608486031215610483576104826102ce565b5b5f6104908682870161031c565b935050602084015167ffffffffffffffff8111156104b1576104b06102d2565b5b6104bd8682870161043f565b925050604084015167ffffffffffffffff8111156104de576104dd6102d2565b5b6104ea8682870161043f565b9150509250925092565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061054257607f821691505b602082108103610555576105546104fe565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026105b77fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8261057c565b6105c1868361057c565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f6106056106006105fb846105d9565b6105e2565b6105d9565b9050919050565b5f819050919050565b61061e836105eb565b61063261062a8261060c565b848454610588565b825550505050565b5f90565b61064661063a565b610651818484610615565b505050565b5b81811015610674576106695f8261063e565b600181019050610657565b5050565b601f8211156106b95761068a8161055b565b6106938461056d565b810160208510156106a2578190505b6106b66106ae8561056d565b830182610656565b50505b505050565b5f82821c905092915050565b5f6106d95f19846008026106be565b1980831691505092915050565b5f6106f183836106ca565b9150826002028217905092915050565b61070a826104f4565b67ffffffffffffffff81111561072357610722610348565b5b61072d825461052b565b610738828285610678565b5f60209050601f831160018114610769575f8415610757578287015190505b61076185826106e6565b8655506107c8565b601f1984166107778661055b565b5f5b8281101561079e57848901518255600182019150602085019450602081019050610779565b868310156107bb57848901516107b7601f8916826106ca565b8355505b6001600288020188555050505b505050505050565b5f819050919050565b6107e2816107d0565b82525050565b6107f1816105d9565b82525050565b610800816102f5565b82525050565b5f60a0820190506108195f8301886107d9565b61082660208301876107d9565b61083360408301866107d9565b61084060608301856107e8565b61084d60808301846107f7565b9695505050505050565b60805160a05160c05160e0516136a061088a5f395f610d6101525f6105ac01525f61060201525f61062b01526136a05ff3fe608060405234801561000f575f80fd5b5060043610610140575f3560e01c806379cc6790116100b6578063a457c2d71161007a578063a457c2d714610374578063a9059cbb146103a4578063ac9650d8146103d4578063d505accf14610404578063dd62ed3e14610420578063e8a3d4851461045057610140565b806379cc6790146102d05780637ecebe00146102ec5780638da5cb5b1461031c578063938e3d7b1461033a57806395d89b411461035657610140565b8063313ce56711610108578063313ce567146101fc5780633644e5151461021a578063395093511461023857806342966c6814610268578063449a52f81461028457806370a08231146102a057610140565b806306fdde0314610144578063095ea7b31461016257806313af40351461019257806318160ddd146101ae57806323b872dd146101cc575b5f80fd5b61014c61046e565b6040516101599190611f9e565b60405180910390f35b61017c6004803603810190610177919061205c565b6104fe565b60405161018991906120b4565b60405180910390f35b6101ac60048036038101906101a791906120cd565b610520565b005b6101b661056a565b6040516101c39190612107565b60405180910390f35b6101e660048036038101906101e19190612120565b610573565b6040516101f391906120b4565b60405180910390f35b6102046105a1565b604051610211919061218b565b60405180910390f35b6102226105a9565b60405161022f91906121bc565b60405180910390f35b610252600480360381019061024d919061205c565b61065f565b60405161025f91906120b4565b60405180910390f35b610282600480360381019061027d91906121d5565b610704565b005b61029e6004803603810190610299919061205c565b61075c565b005b6102ba60048036038101906102b591906120cd565b6107f3565b6040516102c79190612107565b60405180910390f35b6102ea60048036038101906102e5919061205c565b610839565b005b610306600480360381019061030191906120cd565b610908565b6040516103139190612107565b60405180910390f35b610324610955565b604051610331919061220f565b60405180910390f35b610354600480360381019061034f9190612354565b61097d565b005b61035e6109c7565b60405161036b9190611f9e565b60405180910390f35b61038e6004803603810190610389919061205c565b610a57565b60405161039b91906120b4565b60405180910390f35b6103be60048036038101906103b9919061205c565b610b3b565b6040516103cb91906120b4565b60405180910390f35b6103ee60048036038101906103e991906123f8565b610b5d565b6040516103fb9190612550565b60405180910390f35b61041e600480360381019061041991906125c4565b610d1b565b005b61043a60048036038101906104359190612661565b610e62565b6040516104479190612107565b60405180910390f35b610458610ee4565b6040516104659190611f9e565b60405180910390f35b60606005805461047d906126cc565b80601f01602080910402602001604051908101604052809291908181526020018280546104a9906126cc565b80156104f45780601f106104cb576101008083540402835291602001916104f4565b820191905f5260205f20905b8154815290600101906020018083116104d757829003601f168201915b5050505050905090565b5f80610508610f6f565b9050610515818585610f76565b600191505092915050565b610528611139565b61055e576040517f2d99739600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61056781611175565b50565b5f600454905090565b5f8061057d610f6f565b905061058a858285611238565b6105958585856112c3565b60019150509392505050565b5f6012905090565b5f7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff1614801561062457507f000000000000000000000000000000000000000000000000000000000000000046145b15610651577f0000000000000000000000000000000000000000000000000000000000000000905061065c565b61065961153b565b90505b90565b5f80610669610f6f565b90506106f981858560035f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20546106f49190612729565b610f76565b600191505092915050565b8061070e336107f3565b101561074f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610746906127a6565b60405180910390fd5b61075933826115be565b50565b61076461178c565b6107a3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161079a9061280e565b60405180910390fd5b5f81036107e5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016107dc90612876565b60405180910390fd5b6107ef82826117c8565b5050565b5f60025f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610841611920565b610880576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610877906128de565b60405180910390fd5b8061088a836107f3565b10156108cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108c2906127a6565b60405180910390fd5b5f816108d78433610e62565b6108e191906128fc565b90506108ee83335f610f76565b6108f9833383610f76565b61090383836115be565b505050565b5f61094e60075f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2061195c565b9050919050565b5f60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b610985611968565b6109bb576040517f9f7f092500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6109c4816119a4565b50565b6060600680546109d6906126cc565b80601f0160208091040260200160405190810160405280929190818152602001828054610a02906126cc565b8015610a4d5780601f10610a2457610100808354040283529160200191610a4d565b820191905f5260205f20905b815481529060010190602001808311610a3057829003601f168201915b5050505050905090565b5f80610a61610f6f565b90505f60035f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905083811015610b22576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b199061299f565b60405180910390fd5b610b2f8286868403610f76565b60019250505092915050565b5f80610b45610f6f565b9050610b528185856112c3565b600191505092915050565b60608282905067ffffffffffffffff811115610b7c57610b7b612230565b5b604051908082528060200260200182016040528015610baf57816020015b6060815260200190600190039081610b9a5790505b5090505f610bbb610f6f565b90505f8173ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141590505f5b85859050811015610d12578115610c7657610c5330878784818110610c1a57610c196129bd565b5b9050602002810190610c2c91906129f6565b86604051602001610c3f93929190612acb565b604051602081830303815290604052611a7b565b848281518110610c6657610c656129bd565b5b6020026020010181905250610d05565b610ce630878784818110610c8d57610c8c6129bd565b5b9050602002810190610c9f91906129f6565b8080601f0160208091040260200160405190810160405280939291908181526020018383808284375f81840152601f19601f82011690508083019250505050505050611a7b565b848281518110610cf957610cf86129bd565b5b60200260200101819052505b8080600101915050610bf2565b50505092915050565b83421115610d5e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d5590612b3e565b60405180910390fd5b5f7f0000000000000000000000000000000000000000000000000000000000000000888888610d8c8c611aa8565b89604051602001610da296959493929190612b5c565b6040516020818303038152906040528051906020012090505f610dcc610dc66105a9565b83611b03565b90505f610ddb82878787611b43565b90508973ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614610e4b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e4290612c05565b60405180910390fd5b610e568a8a8a610f76565b50505050505050505050565b5f60035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b5f8054610ef0906126cc565b80601f0160208091040260200160405190810160405280929190818152602001828054610f1c906126cc565b8015610f675780601f10610f3e57610100808354040283529160200191610f67565b820191905f5260205f20905b815481529060010190602001808311610f4a57829003601f168201915b505050505081565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610fe4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fdb90612c93565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611052576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161104990612d21565b60405180910390fd5b8060035f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161112c9190612107565b60405180910390a3505050565b5f611142610955565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614905090565b5f60015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8292fce18fa69edf4db7b94ea2e58241df0ae57f97e0a6c9b29067028bf92d7660405160405180910390a35050565b5f6112438484610e62565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146112bd57818110156112af576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112a690612d89565b60405180910390fd5b6112bc8484848403610f76565b5b50505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611331576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161132890612e17565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361139f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161139690612ea5565b60405180910390fd5b6113aa838383611b6c565b5f60025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490508181101561142e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161142590612f33565b60405180910390fd5b81810360025f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508160025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546114be9190612729565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516115229190612107565b60405180910390a3611535848484611b71565b50505050565b5f7f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f61156561046e565b805190602001207fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc646306040516020016115a3959493929190612f51565b60405160208183030381529060405280519060200120905090565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361162c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161162390613012565b60405180910390fd5b611637825f83611b6c565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050818110156116bb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116b2906130a0565b60405180910390fd5b81810360025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508160045f82825461171091906128fc565b925050819055505f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516117749190612107565b60405180910390a3611787835f84611b71565b505050565b5f611795610955565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614905090565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611836576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161182d90613108565b60405180910390fd5b6118415f8383611b6c565b8060045f8282546118529190612729565b925050819055508060025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8282546118a59190612729565b925050819055508173ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516119099190612107565b60405180910390a361191c5f8383611b71565b5050565b5f611929610955565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614905090565b5f815f01549050919050565b5f611971610955565b73ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614905090565b5f8080546119b1906126cc565b80601f01602080910402602001604051908101604052809291908181526020018280546119dd906126cc565b8015611a285780601f106119ff57610100808354040283529160200191611a28565b820191905f5260205f20905b815481529060010190602001808311611a0b57829003601f168201915b50505050509050815f9081611a3d91906132c3565b507fc9c7c3fe08b88b4df9d4d47ef47d2c43d55c025a0ba88ca442580ed9e7348a168183604051611a6f929190613392565b60405180910390a15050565b6060611aa0838360405180606001604052806027815260200161364460279139611b76565b905092915050565b5f8060075f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f209050611af28161195c565b9150611afd81611bf8565b50919050565b5f6040517f190100000000000000000000000000000000000000000000000000000000000081528360028201528260228201526042812091505092915050565b5f805f611b5287878787611c0c565b91509150611b5f81611ce4565b8192505050949350505050565b505050565b505050565b60605f808573ffffffffffffffffffffffffffffffffffffffff1685604051611b9f91906133f7565b5f60405180830381855af49150503d805f8114611bd7576040519150601f19603f3d011682016040523d82523d5f602084013e611bdc565b606091505b5091509150611bed86838387611e49565b925050509392505050565b6001815f015f828254019250508190555050565b5f807f7fffffffffffffffffffffffffffffff5d576e7357a4501ddfe92f46681b20a0835f1c1115611c44575f600391509150611cdb565b5f6001878787876040515f8152602001604052604051611c67949392919061340d565b6020604051602081039080840390855afa158015611c87573d5f803e3d5ffd5b5050506020604051035190505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611cd3575f60019250925050611cdb565b805f92509250505b94509492505050565b5f6004811115611cf757611cf6613450565b5b816004811115611d0a57611d09613450565b5b0315611e465760016004811115611d2457611d23613450565b5b816004811115611d3757611d36613450565b5b03611d77576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611d6e906134c7565b60405180910390fd5b60026004811115611d8b57611d8a613450565b5b816004811115611d9e57611d9d613450565b5b03611dde576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611dd59061352f565b60405180910390fd5b60036004811115611df257611df1613450565b5b816004811115611e0557611e04613450565b5b03611e45576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e3c906135bd565b60405180910390fd5b5b50565b60608315611eaa575f835103611ea257611e6285611ebd565b611ea1576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e9890613625565b60405180910390fd5b5b829050611eb5565b611eb48383611edf565b5b949350505050565b5f808273ffffffffffffffffffffffffffffffffffffffff163b119050919050565b5f82511115611ef15781518083602001fd5b806040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f259190611f9e565b60405180910390fd5b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f611f7082611f2e565b611f7a8185611f38565b9350611f8a818560208601611f48565b611f9381611f56565b840191505092915050565b5f6020820190508181035f830152611fb68184611f66565b905092915050565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f611ff882611fcf565b9050919050565b61200881611fee565b8114612012575f80fd5b50565b5f8135905061202381611fff565b92915050565b5f819050919050565b61203b81612029565b8114612045575f80fd5b50565b5f8135905061205681612032565b92915050565b5f806040838503121561207257612071611fc7565b5b5f61207f85828601612015565b925050602061209085828601612048565b9150509250929050565b5f8115159050919050565b6120ae8161209a565b82525050565b5f6020820190506120c75f8301846120a5565b92915050565b5f602082840312156120e2576120e1611fc7565b5b5f6120ef84828501612015565b91505092915050565b61210181612029565b82525050565b5f60208201905061211a5f8301846120f8565b92915050565b5f805f6060848603121561213757612136611fc7565b5b5f61214486828701612015565b935050602061215586828701612015565b925050604061216686828701612048565b9150509250925092565b5f60ff82169050919050565b61218581612170565b82525050565b5f60208201905061219e5f83018461217c565b92915050565b5f819050919050565b6121b6816121a4565b82525050565b5f6020820190506121cf5f8301846121ad565b92915050565b5f602082840312156121ea576121e9611fc7565b5b5f6121f784828501612048565b91505092915050565b61220981611fee565b82525050565b5f6020820190506122225f830184612200565b92915050565b5f80fd5b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b61226682611f56565b810181811067ffffffffffffffff8211171561228557612284612230565b5b80604052505050565b5f612297611fbe565b90506122a3828261225d565b919050565b5f67ffffffffffffffff8211156122c2576122c1612230565b5b6122cb82611f56565b9050602081019050919050565b828183375f83830152505050565b5f6122f86122f3846122a8565b61228e565b9050828152602081018484840111156123145761231361222c565b5b61231f8482856122d8565b509392505050565b5f82601f83011261233b5761233a612228565b5b813561234b8482602086016122e6565b91505092915050565b5f6020828403121561236957612368611fc7565b5b5f82013567ffffffffffffffff81111561238657612385611fcb565b5b61239284828501612327565b91505092915050565b5f80fd5b5f80fd5b5f8083601f8401126123b8576123b7612228565b5b8235905067ffffffffffffffff8111156123d5576123d461239b565b5b6020830191508360208202830111156123f1576123f061239f565b5b9250929050565b5f806020838503121561240e5761240d611fc7565b5b5f83013567ffffffffffffffff81111561242b5761242a611fcb565b5b612437858286016123a3565b92509250509250929050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f81519050919050565b5f82825260208201905092915050565b5f6124908261246c565b61249a8185612476565b93506124aa818560208601611f48565b6124b381611f56565b840191505092915050565b5f6124c98383612486565b905092915050565b5f602082019050919050565b5f6124e782612443565b6124f1818561244d565b9350836020820285016125038561245d565b805f5b8581101561253e578484038952815161251f85826124be565b945061252a836124d1565b925060208a01995050600181019050612506565b50829750879550505050505092915050565b5f6020820190508181035f83015261256881846124dd565b905092915050565b61257981612170565b8114612583575f80fd5b50565b5f8135905061259481612570565b92915050565b6125a3816121a4565b81146125ad575f80fd5b50565b5f813590506125be8161259a565b92915050565b5f805f805f805f60e0888a0312156125df576125de611fc7565b5b5f6125ec8a828b01612015565b97505060206125fd8a828b01612015565b965050604061260e8a828b01612048565b955050606061261f8a828b01612048565b94505060806126308a828b01612586565b93505060a06126418a828b016125b0565b92505060c06126528a828b016125b0565b91505092959891949750929550565b5f806040838503121561267757612676611fc7565b5b5f61268485828601612015565b925050602061269585828601612015565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806126e357607f821691505b6020821081036126f6576126f561269f565b5b50919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61273382612029565b915061273e83612029565b9250828201905080821115612756576127556126fc565b5b92915050565b7f6e6f7420656e6f7567682062616c616e636500000000000000000000000000005f82015250565b5f612790601283611f38565b915061279b8261275c565b602082019050919050565b5f6020820190508181035f8301526127bd81612784565b9050919050565b7f4e6f7420617574686f72697a656420746f206d696e742e0000000000000000005f82015250565b5f6127f8601783611f38565b9150612803826127c4565b602082019050919050565b5f6020820190508181035f830152612825816127ec565b9050919050565b7f4d696e74696e67207a65726f20746f6b656e732e0000000000000000000000005f82015250565b5f612860601483611f38565b915061286b8261282c565b602082019050919050565b5f6020820190508181035f83015261288d81612854565b9050919050565b7f4e6f7420617574686f72697a656420746f206275726e2e0000000000000000005f82015250565b5f6128c8601783611f38565b91506128d382612894565b602082019050919050565b5f6020820190508181035f8301526128f5816128bc565b9050919050565b5f61290682612029565b915061291183612029565b9250828203905081811115612929576129286126fc565b5b92915050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f775f8201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b5f612989602583611f38565b91506129948261292f565b604082019050919050565b5f6020820190508181035f8301526129b68161297d565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f80fd5b5f80fd5b5f80fd5b5f8083356001602003843603038112612a1257612a116129ea565b5b80840192508235915067ffffffffffffffff821115612a3457612a336129ee565b5b602083019250600182023603831315612a5057612a4f6129f2565b5b509250929050565b5f81905092915050565b5f612a6d8385612a58565b9350612a7a8385846122d8565b82840190509392505050565b5f8160601b9050919050565b5f612a9c82612a86565b9050919050565b5f612aad82612a92565b9050919050565b612ac5612ac082611fee565b612aa3565b82525050565b5f612ad7828587612a62565b9150612ae38284612ab4565b601482019150819050949350505050565b7f45524332305065726d69743a206578706972656420646561646c696e650000005f82015250565b5f612b28601d83611f38565b9150612b3382612af4565b602082019050919050565b5f6020820190508181035f830152612b5581612b1c565b9050919050565b5f60c082019050612b6f5f8301896121ad565b612b7c6020830188612200565b612b896040830187612200565b612b9660608301866120f8565b612ba360808301856120f8565b612bb060a08301846120f8565b979650505050505050565b7f45524332305065726d69743a20696e76616c6964207369676e617475726500005f82015250565b5f612bef601e83611f38565b9150612bfa82612bbb565b602082019050919050565b5f6020820190508181035f830152612c1c81612be3565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f612c7d602483611f38565b9150612c8882612c23565b604082019050919050565b5f6020820190508181035f830152612caa81612c71565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f612d0b602283611f38565b9150612d1682612cb1565b604082019050919050565b5f6020820190508181035f830152612d3881612cff565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000005f82015250565b5f612d73601d83611f38565b9150612d7e82612d3f565b602082019050919050565b5f6020820190508181035f830152612da081612d67565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f612e01602583611f38565b9150612e0c82612da7565b604082019050919050565b5f6020820190508181035f830152612e2e81612df5565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f612e8f602383611f38565b9150612e9a82612e35565b604082019050919050565b5f6020820190508181035f830152612ebc81612e83565b9050919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320625f8201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b5f612f1d602683611f38565b9150612f2882612ec3565b604082019050919050565b5f6020820190508181035f830152612f4a81612f11565b9050919050565b5f60a082019050612f645f8301886121ad565b612f7160208301876121ad565b612f7e60408301866121ad565b612f8b60608301856120f8565b612f986080830184612200565b9695505050505050565b7f45524332303a206275726e2066726f6d20746865207a65726f206164647265735f8201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b5f612ffc602183611f38565b915061300782612fa2565b604082019050919050565b5f6020820190508181035f83015261302981612ff0565b9050919050565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e5f8201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b5f61308a602283611f38565b915061309582613030565b604082019050919050565b5f6020820190508181035f8301526130b78161307e565b9050919050565b7f45524332303a206d696e7420746f20746865207a65726f2061646472657373005f82015250565b5f6130f2601f83611f38565b91506130fd826130be565b602082019050919050565b5f6020820190508181035f83015261311f816130e6565b9050919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026131827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82613147565b61318c8683613147565b95508019841693508086168417925050509392505050565b5f819050919050565b5f6131c76131c26131bd84612029565b6131a4565b612029565b9050919050565b5f819050919050565b6131e0836131ad565b6131f46131ec826131ce565b848454613153565b825550505050565b5f90565b6132086131fc565b6132138184846131d7565b505050565b5b818110156132365761322b5f82613200565b600181019050613219565b5050565b601f82111561327b5761324c81613126565b61325584613138565b81016020851015613264578190505b61327861327085613138565b830182613218565b50505b505050565b5f82821c905092915050565b5f61329b5f1984600802613280565b1980831691505092915050565b5f6132b3838361328c565b9150826002028217905092915050565b6132cc82611f2e565b67ffffffffffffffff8111156132e5576132e4612230565b5b6132ef82546126cc565b6132fa82828561323a565b5f60209050601f83116001811461332b575f8415613319578287015190505b61332385826132a8565b86555061338a565b601f19841661333986613126565b5f5b828110156133605784890151825560018201915060208501945060208101905061333b565b8683101561337d5784890151613379601f89168261328c565b8355505b6001600288020188555050505b505050505050565b5f6040820190508181035f8301526133aa8185611f66565b905081810360208301526133be8184611f66565b90509392505050565b5f6133d18261246c565b6133db8185612a58565b93506133eb818560208601611f48565b80840191505092915050565b5f61340282846133c7565b915081905092915050565b5f6080820190506134205f8301876121ad565b61342d602083018661217c565b61343a60408301856121ad565b61344760608301846121ad565b95945050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602160045260245ffd5b7f45434453413a20696e76616c6964207369676e617475726500000000000000005f82015250565b5f6134b1601883611f38565b91506134bc8261347d565b602082019050919050565b5f6020820190508181035f8301526134de816134a5565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265206c656e677468005f82015250565b5f613519601f83611f38565b9150613524826134e5565b602082019050919050565b5f6020820190508181035f8301526135468161350d565b9050919050565b7f45434453413a20696e76616c6964207369676e6174757265202773272076616c5f8201527f7565000000000000000000000000000000000000000000000000000000000000602082015250565b5f6135a7602283611f38565b91506135b28261354d565b604082019050919050565b5f6020820190508181035f8301526135d48161359b565b9050919050565b7f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000005f82015250565b5f61360f601d83611f38565b915061361a826135db565b602082019050919050565b5f6020820190508181035f83015261363c81613603565b905091905056fe416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a26469706673582212209b47402afdae7696a3a583fba04835973d81e642fe4ab0df246a5c35e88ba98464736f6c63430008190033",
"opcodes": "PUSH2 0x100 PUSH1 0x40 MSTORE PUSH32 0x6E71EDAE12B1B97F4D1F60370FEF10105FA2FAAE0126114A169C64845D6126C9 PUSH1 0xE0 SWAP1 DUP2 MSTORE POP CALLVALUE DUP1 ISZERO PUSH2 0x37 JUMPI PUSH0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH2 0x3F2A CODESIZE SUB DUP1 PUSH2 0x3F2A DUP4 CODECOPY DUP2 DUP2 ADD PUSH1 0x40 MSTORE DUP2 ADD SWAP1 PUSH2 0x59 SWAP2 SWAP1 PUSH2 0x46C JUMP JUMPDEST DUP2 DUP2 DUP2 DUP2 DUP2 PUSH1 0x5 SWAP1 DUP2 PUSH2 0x6C SWAP2 SWAP1 PUSH2 0x701 JUMP JUMPDEST POP DUP1 PUSH1 0x6 SWAP1 DUP2 PUSH2 0x7C SWAP2 SWAP1 PUSH2 0x701 JUMP JUMPDEST POP POP POP CHAINID PUSH1 0xA0 DUP2 DUP2 MSTORE POP POP ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH1 0xC0 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP POP PUSH2 0xC9 PUSH2 0xE9 PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x80 DUP2 DUP2 MSTORE POP POP POP POP PUSH2 0xE1 DUP4 PUSH2 0x172 PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST POP POP POP PUSH2 0x857 JUMP JUMPDEST PUSH0 PUSH32 0x8B73C3C69BB8FE3D512ECC4CF759CC79239F7B179B0FFACAA9A75D522B39400F PUSH2 0x119 PUSH2 0x235 PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 PUSH32 0xC89EFDAA54C0F20C7ADF612882DF0950F5A951637E0307CDCB4C672F298B8BC6 CHAINID ADDRESS PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x157 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x806 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 SWAP1 POP SWAP1 JUMP JUMPDEST PUSH0 PUSH1 0x1 PUSH0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP DUP2 PUSH1 0x1 PUSH0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8292FCE18FA69EDF4DB7B94EA2E58241DF0AE57F97E0A6C9B29067028BF92D76 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x5 DUP1 SLOAD PUSH2 0x244 SWAP1 PUSH2 0x52B JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x270 SWAP1 PUSH2 0x52B JUMP JUMPDEST DUP1 ISZERO PUSH2 0x2BB JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x292 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x2BB JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH0 MSTORE PUSH1 0x20 PUSH0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x29E JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH0 DUP1 REVERT JUMPDEST PUSH0 DUP1 REVERT JUMPDEST PUSH0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH2 0x2FF DUP3 PUSH2 0x2D6 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x30F DUP2 PUSH2 0x2F5 JUMP JUMPDEST DUP2 EQ PUSH2 0x319 JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 MLOAD SWAP1 POP PUSH2 0x32A DUP2 PUSH2 0x306 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP1 REVERT JUMPDEST PUSH0 DUP1 REVERT JUMPDEST PUSH0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH0 REVERT JUMPDEST PUSH2 0x37E DUP3 PUSH2 0x338 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x39D JUMPI PUSH2 0x39C PUSH2 0x348 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH0 PUSH2 0x3AF PUSH2 0x2C5 JUMP JUMPDEST SWAP1 POP PUSH2 0x3BB DUP3 DUP3 PUSH2 0x375 JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x3DA JUMPI PUSH2 0x3D9 PUSH2 0x348 JUMP JUMPDEST JUMPDEST PUSH2 0x3E3 DUP3 PUSH2 0x338 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP2 DUP4 MCOPY PUSH0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH0 PUSH2 0x410 PUSH2 0x40B DUP5 PUSH2 0x3C0 JUMP JUMPDEST PUSH2 0x3A6 JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x42C JUMPI PUSH2 0x42B PUSH2 0x334 JUMP JUMPDEST JUMPDEST PUSH2 0x437 DUP5 DUP3 DUP6 PUSH2 0x3F0 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x453 JUMPI PUSH2 0x452 PUSH2 0x330 JUMP JUMPDEST JUMPDEST DUP2 MLOAD PUSH2 0x463 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x3FE JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP1 PUSH0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x483 JUMPI PUSH2 0x482 PUSH2 0x2CE JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0x490 DUP7 DUP3 DUP8 ADD PUSH2 0x31C JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 DUP5 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x4B1 JUMPI PUSH2 0x4B0 PUSH2 0x2D2 JUMP JUMPDEST JUMPDEST PUSH2 0x4BD DUP7 DUP3 DUP8 ADD PUSH2 0x43F JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 DUP5 ADD MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x4DE JUMPI PUSH2 0x4DD PUSH2 0x2D2 JUMP JUMPDEST JUMPDEST PUSH2 0x4EA DUP7 DUP3 DUP8 ADD PUSH2 0x43F JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH0 REVERT JUMPDEST PUSH0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x542 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x555 JUMPI PUSH2 0x554 PUSH2 0x4FE JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 DUP2 SWAP1 POP DUP2 PUSH0 MSTORE PUSH1 0x20 PUSH0 KECCAK256 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 PUSH1 0x1F DUP4 ADD DIV SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 DUP3 DUP3 SHL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH1 0x8 DUP4 MUL PUSH2 0x5B7 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 PUSH2 0x57C JUMP JUMPDEST PUSH2 0x5C1 DUP7 DUP4 PUSH2 0x57C JUMP JUMPDEST SWAP6 POP DUP1 NOT DUP5 AND SWAP4 POP DUP1 DUP7 AND DUP5 OR SWAP3 POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH2 0x605 PUSH2 0x600 PUSH2 0x5FB DUP5 PUSH2 0x5D9 JUMP JUMPDEST PUSH2 0x5E2 JUMP JUMPDEST PUSH2 0x5D9 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x61E DUP4 PUSH2 0x5EB JUMP JUMPDEST PUSH2 0x632 PUSH2 0x62A DUP3 PUSH2 0x60C JUMP JUMPDEST DUP5 DUP5 SLOAD PUSH2 0x588 JUMP JUMPDEST DUP3 SSTORE POP POP POP POP JUMP JUMPDEST PUSH0 SWAP1 JUMP JUMPDEST PUSH2 0x646 PUSH2 0x63A JUMP JUMPDEST PUSH2 0x651 DUP2 DUP5 DUP5 PUSH2 0x615 JUMP JUMPDEST POP POP POP JUMP JUMPDEST JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x674 JUMPI PUSH2 0x669 PUSH0 DUP3 PUSH2 0x63E JUMP JUMPDEST PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x657 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0x6B9 JUMPI PUSH2 0x68A DUP2 PUSH2 0x55B JUMP JUMPDEST PUSH2 0x693 DUP5 PUSH2 0x56D JUMP JUMPDEST DUP2 ADD PUSH1 0x20 DUP6 LT ISZERO PUSH2 0x6A2 JUMPI DUP2 SWAP1 POP JUMPDEST PUSH2 0x6B6 PUSH2 0x6AE DUP6 PUSH2 0x56D JUMP JUMPDEST DUP4 ADD DUP3 PUSH2 0x656 JUMP JUMPDEST POP POP JUMPDEST POP POP POP JUMP JUMPDEST PUSH0 DUP3 DUP3 SHR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH2 0x6D9 PUSH0 NOT DUP5 PUSH1 0x8 MUL PUSH2 0x6BE JUMP JUMPDEST NOT DUP1 DUP4 AND SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH2 0x6F1 DUP4 DUP4 PUSH2 0x6CA JUMP JUMPDEST SWAP2 POP DUP3 PUSH1 0x2 MUL DUP3 OR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x70A DUP3 PUSH2 0x4F4 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x723 JUMPI PUSH2 0x722 PUSH2 0x348 JUMP JUMPDEST JUMPDEST PUSH2 0x72D DUP3 SLOAD PUSH2 0x52B JUMP JUMPDEST PUSH2 0x738 DUP3 DUP3 DUP6 PUSH2 0x678 JUMP JUMPDEST PUSH0 PUSH1 0x20 SWAP1 POP PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0x769 JUMPI PUSH0 DUP5 ISZERO PUSH2 0x757 JUMPI DUP3 DUP8 ADD MLOAD SWAP1 POP JUMPDEST PUSH2 0x761 DUP6 DUP3 PUSH2 0x6E6 JUMP JUMPDEST DUP7 SSTORE POP PUSH2 0x7C8 JUMP JUMPDEST PUSH1 0x1F NOT DUP5 AND PUSH2 0x777 DUP7 PUSH2 0x55B JUMP JUMPDEST PUSH0 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x79E JUMPI DUP5 DUP10 ADD MLOAD DUP3 SSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP6 ADD SWAP5 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x779 JUMP JUMPDEST DUP7 DUP4 LT ISZERO PUSH2 0x7BB JUMPI DUP5 DUP10 ADD MLOAD PUSH2 0x7B7 PUSH1 0x1F DUP10 AND DUP3 PUSH2 0x6CA JUMP JUMPDEST DUP4 SSTORE POP JUMPDEST PUSH1 0x1 PUSH1 0x2 DUP9 MUL ADD DUP9 SSTORE POP POP POP JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x7E2 DUP2 PUSH2 0x7D0 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x7F1 DUP2 PUSH2 0x5D9 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x800 DUP2 PUSH2 0x2F5 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH0 PUSH1 0xA0 DUP3 ADD SWAP1 POP PUSH2 0x819 PUSH0 DUP4 ADD DUP9 PUSH2 0x7D9 JUMP JUMPDEST PUSH2 0x826 PUSH1 0x20 DUP4 ADD DUP8 PUSH2 0x7D9 JUMP JUMPDEST PUSH2 0x833 PUSH1 0x40 DUP4 ADD DUP7 PUSH2 0x7D9 JUMP JUMPDEST PUSH2 0x840 PUSH1 0x60 DUP4 ADD DUP6 PUSH2 0x7E8 JUMP JUMPDEST PUSH2 0x84D PUSH1 0x80 DUP4 ADD DUP5 PUSH2 0x7F7 JUMP JUMPDEST SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x80 MLOAD PUSH1 0xA0 MLOAD PUSH1 0xC0 MLOAD PUSH1 0xE0 MLOAD PUSH2 0x36A0 PUSH2 0x88A PUSH0 CODECOPY PUSH0 PUSH2 0xD61 ADD MSTORE PUSH0 PUSH2 0x5AC ADD MSTORE PUSH0 PUSH2 0x602 ADD MSTORE PUSH0 PUSH2 0x62B ADD MSTORE PUSH2 0x36A0 PUSH0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0xF JUMPI PUSH0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x140 JUMPI PUSH0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x79CC6790 GT PUSH2 0xB6 JUMPI DUP1 PUSH4 0xA457C2D7 GT PUSH2 0x7A JUMPI DUP1 PUSH4 0xA457C2D7 EQ PUSH2 0x374 JUMPI DUP1 PUSH4 0xA9059CBB EQ PUSH2 0x3A4 JUMPI DUP1 PUSH4 0xAC9650D8 EQ PUSH2 0x3D4 JUMPI DUP1 PUSH4 0xD505ACCF EQ PUSH2 0x404 JUMPI DUP1 PUSH4 0xDD62ED3E EQ PUSH2 0x420 JUMPI DUP1 PUSH4 0xE8A3D485 EQ PUSH2 0x450 JUMPI PUSH2 0x140 JUMP JUMPDEST DUP1 PUSH4 0x79CC6790 EQ PUSH2 0x2D0 JUMPI DUP1 PUSH4 0x7ECEBE00 EQ PUSH2 0x2EC JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x31C JUMPI DUP1 PUSH4 0x938E3D7B EQ PUSH2 0x33A JUMPI DUP1 PUSH4 0x95D89B41 EQ PUSH2 0x356 JUMPI PUSH2 0x140 JUMP JUMPDEST DUP1 PUSH4 0x313CE567 GT PUSH2 0x108 JUMPI DUP1 PUSH4 0x313CE567 EQ PUSH2 0x1FC JUMPI DUP1 PUSH4 0x3644E515 EQ PUSH2 0x21A JUMPI DUP1 PUSH4 0x39509351 EQ PUSH2 0x238 JUMPI DUP1 PUSH4 0x42966C68 EQ PUSH2 0x268 JUMPI DUP1 PUSH4 0x449A52F8 EQ PUSH2 0x284 JUMPI DUP1 PUSH4 0x70A08231 EQ PUSH2 0x2A0 JUMPI PUSH2 0x140 JUMP JUMPDEST DUP1 PUSH4 0x6FDDE03 EQ PUSH2 0x144 JUMPI DUP1 PUSH4 0x95EA7B3 EQ PUSH2 0x162 JUMPI DUP1 PUSH4 0x13AF4035 EQ PUSH2 0x192 JUMPI DUP1 PUSH4 0x18160DDD EQ PUSH2 0x1AE JUMPI DUP1 PUSH4 0x23B872DD EQ PUSH2 0x1CC JUMPI JUMPDEST PUSH0 DUP1 REVERT JUMPDEST PUSH2 0x14C PUSH2 0x46E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x159 SWAP2 SWAP1 PUSH2 0x1F9E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x17C PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x177 SWAP2 SWAP1 PUSH2 0x205C JUMP JUMPDEST PUSH2 0x4FE JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x189 SWAP2 SWAP1 PUSH2 0x20B4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1AC PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1A7 SWAP2 SWAP1 PUSH2 0x20CD JUMP JUMPDEST PUSH2 0x520 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x1B6 PUSH2 0x56A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1C3 SWAP2 SWAP1 PUSH2 0x2107 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1E6 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1E1 SWAP2 SWAP1 PUSH2 0x2120 JUMP JUMPDEST PUSH2 0x573 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1F3 SWAP2 SWAP1 PUSH2 0x20B4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x204 PUSH2 0x5A1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x211 SWAP2 SWAP1 PUSH2 0x218B JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x222 PUSH2 0x5A9 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x22F SWAP2 SWAP1 PUSH2 0x21BC JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x252 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x24D SWAP2 SWAP1 PUSH2 0x205C JUMP JUMPDEST PUSH2 0x65F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x25F SWAP2 SWAP1 PUSH2 0x20B4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x282 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x27D SWAP2 SWAP1 PUSH2 0x21D5 JUMP JUMPDEST PUSH2 0x704 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x29E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x299 SWAP2 SWAP1 PUSH2 0x205C JUMP JUMPDEST PUSH2 0x75C JUMP JUMPDEST STOP JUMPDEST PUSH2 0x2BA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2B5 SWAP2 SWAP1 PUSH2 0x20CD JUMP JUMPDEST PUSH2 0x7F3 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2C7 SWAP2 SWAP1 PUSH2 0x2107 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2EA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2E5 SWAP2 SWAP1 PUSH2 0x205C JUMP JUMPDEST PUSH2 0x839 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x306 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x301 SWAP2 SWAP1 PUSH2 0x20CD JUMP JUMPDEST PUSH2 0x908 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x313 SWAP2 SWAP1 PUSH2 0x2107 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x324 PUSH2 0x955 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x331 SWAP2 SWAP1 PUSH2 0x220F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x354 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x34F SWAP2 SWAP1 PUSH2 0x2354 JUMP JUMPDEST PUSH2 0x97D JUMP JUMPDEST STOP JUMPDEST PUSH2 0x35E PUSH2 0x9C7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x36B SWAP2 SWAP1 PUSH2 0x1F9E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x38E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x389 SWAP2 SWAP1 PUSH2 0x205C JUMP JUMPDEST PUSH2 0xA57 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x39B SWAP2 SWAP1 PUSH2 0x20B4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x3BE PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3B9 SWAP2 SWAP1 PUSH2 0x205C JUMP JUMPDEST PUSH2 0xB3B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3CB SWAP2 SWAP1 PUSH2 0x20B4 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x3EE PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3E9 SWAP2 SWAP1 PUSH2 0x23F8 JUMP JUMPDEST PUSH2 0xB5D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3FB SWAP2 SWAP1 PUSH2 0x2550 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x41E PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x419 SWAP2 SWAP1 PUSH2 0x25C4 JUMP JUMPDEST PUSH2 0xD1B JUMP JUMPDEST STOP JUMPDEST PUSH2 0x43A PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x435 SWAP2 SWAP1 PUSH2 0x2661 JUMP JUMPDEST PUSH2 0xE62 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x447 SWAP2 SWAP1 PUSH2 0x2107 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x458 PUSH2 0xEE4 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x465 SWAP2 SWAP1 PUSH2 0x1F9E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x60 PUSH1 0x5 DUP1 SLOAD PUSH2 0x47D SWAP1 PUSH2 0x26CC JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x4A9 SWAP1 PUSH2 0x26CC JUMP JUMPDEST DUP1 ISZERO PUSH2 0x4F4 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x4CB JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x4F4 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH0 MSTORE PUSH1 0x20 PUSH0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x4D7 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH0 DUP1 PUSH2 0x508 PUSH2 0xF6F JUMP JUMPDEST SWAP1 POP PUSH2 0x515 DUP2 DUP6 DUP6 PUSH2 0xF76 JUMP JUMPDEST PUSH1 0x1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x528 PUSH2 0x1139 JUMP JUMPDEST PUSH2 0x55E JUMPI PUSH1 0x40 MLOAD PUSH32 0x2D99739600000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x567 DUP2 PUSH2 0x1175 JUMP JUMPDEST POP JUMP JUMPDEST PUSH0 PUSH1 0x4 SLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH0 DUP1 PUSH2 0x57D PUSH2 0xF6F JUMP JUMPDEST SWAP1 POP PUSH2 0x58A DUP6 DUP3 DUP6 PUSH2 0x1238 JUMP JUMPDEST PUSH2 0x595 DUP6 DUP6 DUP6 PUSH2 0x12C3 JUMP JUMPDEST PUSH1 0x1 SWAP2 POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH0 PUSH1 0x12 SWAP1 POP SWAP1 JUMP JUMPDEST PUSH0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND ADDRESS PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ DUP1 ISZERO PUSH2 0x624 JUMPI POP PUSH32 0x0 CHAINID EQ JUMPDEST ISZERO PUSH2 0x651 JUMPI PUSH32 0x0 SWAP1 POP PUSH2 0x65C JUMP JUMPDEST PUSH2 0x659 PUSH2 0x153B JUMP JUMPDEST SWAP1 POP JUMPDEST SWAP1 JUMP JUMPDEST PUSH0 DUP1 PUSH2 0x669 PUSH2 0xF6F JUMP JUMPDEST SWAP1 POP PUSH2 0x6F9 DUP2 DUP6 DUP6 PUSH1 0x3 PUSH0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH0 KECCAK256 PUSH0 DUP10 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH0 KECCAK256 SLOAD PUSH2 0x6F4 SWAP2 SWAP1 PUSH2 0x2729 JUMP JUMPDEST PUSH2 0xF76 JUMP JUMPDEST PUSH1 0x1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP1 PUSH2 0x70E CALLER PUSH2 0x7F3 JUMP JUMPDEST LT ISZERO PUSH2 0x74F JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x746 SWAP1 PUSH2 0x27A6 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x759 CALLER DUP3 PUSH2 0x15BE JUMP JUMPDEST POP JUMP JUMPDEST PUSH2 0x764 PUSH2 0x178C JUMP JUMPDEST PUSH2 0x7A3 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x79A SWAP1 PUSH2 0x280E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH0 DUP2 SUB PUSH2 0x7E5 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x7DC SWAP1 PUSH2 0x2876 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x7EF DUP3 DUP3 PUSH2 0x17C8 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH0 PUSH1 0x2 PUSH0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH0 KECCAK256 SLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x841 PUSH2 0x1920 JUMP JUMPDEST PUSH2 0x880 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x877 SWAP1 PUSH2 0x28DE JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH2 0x88A DUP4 PUSH2 0x7F3 JUMP JUMPDEST LT ISZERO PUSH2 0x8CB JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x8C2 SWAP1 PUSH2 0x27A6 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH0 DUP2 PUSH2 0x8D7 DUP5 CALLER PUSH2 0xE62 JUMP JUMPDEST PUSH2 0x8E1 SWAP2 SWAP1 PUSH2 0x28FC JUMP JUMPDEST SWAP1 POP PUSH2 0x8EE DUP4 CALLER PUSH0 PUSH2 0xF76 JUMP JUMPDEST PUSH2 0x8F9 DUP4 CALLER DUP4 PUSH2 0xF76 JUMP JUMPDEST PUSH2 0x903 DUP4 DUP4 PUSH2 0x15BE JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH0 PUSH2 0x94E PUSH1 0x7 PUSH0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH0 KECCAK256 PUSH2 0x195C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x1 PUSH0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH2 0x985 PUSH2 0x1968 JUMP JUMPDEST PUSH2 0x9BB JUMPI PUSH1 0x40 MLOAD PUSH32 0x9F7F092500000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x9C4 DUP2 PUSH2 0x19A4 JUMP JUMPDEST POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x6 DUP1 SLOAD PUSH2 0x9D6 SWAP1 PUSH2 0x26CC JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0xA02 SWAP1 PUSH2 0x26CC JUMP JUMPDEST DUP1 ISZERO PUSH2 0xA4D JUMPI DUP1 PUSH1 0x1F LT PUSH2 0xA24 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0xA4D JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH0 MSTORE PUSH1 0x20 PUSH0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0xA30 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH0 DUP1 PUSH2 0xA61 PUSH2 0xF6F JUMP JUMPDEST SWAP1 POP PUSH0 PUSH1 0x3 PUSH0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH0 KECCAK256 PUSH0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH0 KECCAK256 SLOAD SWAP1 POP DUP4 DUP2 LT ISZERO PUSH2 0xB22 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xB19 SWAP1 PUSH2 0x299F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0xB2F DUP3 DUP7 DUP7 DUP5 SUB PUSH2 0xF76 JUMP JUMPDEST PUSH1 0x1 SWAP3 POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP1 PUSH2 0xB45 PUSH2 0xF6F JUMP JUMPDEST SWAP1 POP PUSH2 0xB52 DUP2 DUP6 DUP6 PUSH2 0x12C3 JUMP JUMPDEST PUSH1 0x1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x60 DUP3 DUP3 SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xB7C JUMPI PUSH2 0xB7B PUSH2 0x2230 JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0xBAF JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0xB9A JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH0 PUSH2 0xBBB PUSH2 0xF6F JUMP JUMPDEST SWAP1 POP PUSH0 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ ISZERO SWAP1 POP PUSH0 JUMPDEST DUP6 DUP6 SWAP1 POP DUP2 LT ISZERO PUSH2 0xD12 JUMPI DUP2 ISZERO PUSH2 0xC76 JUMPI PUSH2 0xC53 ADDRESS DUP8 DUP8 DUP5 DUP2 DUP2 LT PUSH2 0xC1A JUMPI PUSH2 0xC19 PUSH2 0x29BD JUMP JUMPDEST JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0xC2C SWAP2 SWAP1 PUSH2 0x29F6 JUMP JUMPDEST DUP7 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xC3F SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2ACB JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH2 0x1A7B JUMP JUMPDEST DUP5 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0xC66 JUMPI PUSH2 0xC65 PUSH2 0x29BD JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP PUSH2 0xD05 JUMP JUMPDEST PUSH2 0xCE6 ADDRESS DUP8 DUP8 DUP5 DUP2 DUP2 LT PUSH2 0xC8D JUMPI PUSH2 0xC8C PUSH2 0x29BD JUMP JUMPDEST JUMPDEST SWAP1 POP PUSH1 0x20 MUL DUP2 ADD SWAP1 PUSH2 0xC9F SWAP2 SWAP1 PUSH2 0x29F6 JUMP JUMPDEST DUP1 DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP4 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP4 DUP1 DUP3 DUP5 CALLDATACOPY PUSH0 DUP2 DUP5 ADD MSTORE PUSH1 0x1F NOT PUSH1 0x1F DUP3 ADD AND SWAP1 POP DUP1 DUP4 ADD SWAP3 POP POP POP POP POP POP POP PUSH2 0x1A7B JUMP JUMPDEST DUP5 DUP3 DUP2 MLOAD DUP2 LT PUSH2 0xCF9 JUMPI PUSH2 0xCF8 PUSH2 0x29BD JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP JUMPDEST DUP1 DUP1 PUSH1 0x1 ADD SWAP2 POP POP PUSH2 0xBF2 JUMP JUMPDEST POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP4 TIMESTAMP GT ISZERO PUSH2 0xD5E JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xD55 SWAP1 PUSH2 0x2B3E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH0 PUSH32 0x0 DUP9 DUP9 DUP9 PUSH2 0xD8C DUP13 PUSH2 0x1AA8 JUMP JUMPDEST DUP10 PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0xDA2 SWAP7 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2B5C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 SWAP1 POP PUSH0 PUSH2 0xDCC PUSH2 0xDC6 PUSH2 0x5A9 JUMP JUMPDEST DUP4 PUSH2 0x1B03 JUMP JUMPDEST SWAP1 POP PUSH0 PUSH2 0xDDB DUP3 DUP8 DUP8 DUP8 PUSH2 0x1B43 JUMP JUMPDEST SWAP1 POP DUP10 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ PUSH2 0xE4B JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xE42 SWAP1 PUSH2 0x2C05 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0xE56 DUP11 DUP11 DUP11 PUSH2 0xF76 JUMP JUMPDEST POP POP POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH0 PUSH1 0x3 PUSH0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH0 KECCAK256 PUSH0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH0 KECCAK256 SLOAD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP1 SLOAD PUSH2 0xEF0 SWAP1 PUSH2 0x26CC JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0xF1C SWAP1 PUSH2 0x26CC JUMP JUMPDEST DUP1 ISZERO PUSH2 0xF67 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0xF3E JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0xF67 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH0 MSTORE PUSH1 0x20 PUSH0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0xF4A JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 JUMP JUMPDEST PUSH0 CALLER SWAP1 POP SWAP1 JUMP JUMPDEST PUSH0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0xFE4 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xFDB SWAP1 PUSH2 0x2C93 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x1052 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1049 SWAP1 PUSH2 0x2D21 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP1 PUSH1 0x3 PUSH0 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH0 KECCAK256 PUSH0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH0 KECCAK256 DUP2 SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8C5BE1E5EBEC7D5BD14F71427D1E84F3DD0314C0F7B2291E5B200AC8C7C3B925 DUP4 PUSH1 0x40 MLOAD PUSH2 0x112C SWAP2 SWAP1 PUSH2 0x2107 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP POP JUMP JUMPDEST PUSH0 PUSH2 0x1142 PUSH2 0x955 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ SWAP1 POP SWAP1 JUMP JUMPDEST PUSH0 PUSH1 0x1 PUSH0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP DUP2 PUSH1 0x1 PUSH0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0x8292FCE18FA69EDF4DB7B94EA2E58241DF0AE57F97E0A6C9B29067028BF92D76 PUSH1 0x40 MLOAD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 POP POP JUMP JUMPDEST PUSH0 PUSH2 0x1243 DUP5 DUP5 PUSH2 0xE62 JUMP JUMPDEST SWAP1 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 EQ PUSH2 0x12BD JUMPI DUP2 DUP2 LT ISZERO PUSH2 0x12AF JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x12A6 SWAP1 PUSH2 0x2D89 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x12BC DUP5 DUP5 DUP5 DUP5 SUB PUSH2 0xF76 JUMP JUMPDEST JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x1331 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1328 SWAP1 PUSH2 0x2E17 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x139F JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1396 SWAP1 PUSH2 0x2EA5 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x13AA DUP4 DUP4 DUP4 PUSH2 0x1B6C JUMP JUMPDEST PUSH0 PUSH1 0x2 PUSH0 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH0 KECCAK256 SLOAD SWAP1 POP DUP2 DUP2 LT ISZERO PUSH2 0x142E JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1425 SWAP1 PUSH2 0x2F33 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 DUP2 SUB PUSH1 0x2 PUSH0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH0 KECCAK256 DUP2 SWAP1 SSTORE POP DUP2 PUSH1 0x2 PUSH0 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH0 KECCAK256 PUSH0 DUP3 DUP3 SLOAD PUSH2 0x14BE SWAP2 SWAP1 PUSH2 0x2729 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF DUP5 PUSH1 0x40 MLOAD PUSH2 0x1522 SWAP2 SWAP1 PUSH2 0x2107 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 PUSH2 0x1535 DUP5 DUP5 DUP5 PUSH2 0x1B71 JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH0 PUSH32 0x8B73C3C69BB8FE3D512ECC4CF759CC79239F7B179B0FFACAA9A75D522B39400F PUSH2 0x1565 PUSH2 0x46E JUMP JUMPDEST DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 PUSH32 0xC89EFDAA54C0F20C7ADF612882DF0950F5A951637E0307CDCB4C672F298B8BC6 CHAINID ADDRESS PUSH1 0x40 MLOAD PUSH1 0x20 ADD PUSH2 0x15A3 SWAP6 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x2F51 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE DUP1 MLOAD SWAP1 PUSH1 0x20 ADD KECCAK256 SWAP1 POP SWAP1 JUMP JUMPDEST PUSH0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x162C JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1623 SWAP1 PUSH2 0x3012 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x1637 DUP3 PUSH0 DUP4 PUSH2 0x1B6C JUMP JUMPDEST PUSH0 PUSH1 0x2 PUSH0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH0 KECCAK256 SLOAD SWAP1 POP DUP2 DUP2 LT ISZERO PUSH2 0x16BB JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x16B2 SWAP1 PUSH2 0x30A0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP2 DUP2 SUB PUSH1 0x2 PUSH0 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH0 KECCAK256 DUP2 SWAP1 SSTORE POP DUP2 PUSH1 0x4 PUSH0 DUP3 DUP3 SLOAD PUSH2 0x1710 SWAP2 SWAP1 PUSH2 0x28FC JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF DUP5 PUSH1 0x40 MLOAD PUSH2 0x1774 SWAP2 SWAP1 PUSH2 0x2107 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 PUSH2 0x1787 DUP4 PUSH0 DUP5 PUSH2 0x1B71 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH0 PUSH2 0x1795 PUSH2 0x955 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ SWAP1 POP SWAP1 JUMP JUMPDEST PUSH0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x1836 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x182D SWAP1 PUSH2 0x3108 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x1841 PUSH0 DUP4 DUP4 PUSH2 0x1B6C JUMP JUMPDEST DUP1 PUSH1 0x4 PUSH0 DUP3 DUP3 SLOAD PUSH2 0x1852 SWAP2 SWAP1 PUSH2 0x2729 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP1 PUSH1 0x2 PUSH0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH0 KECCAK256 PUSH0 DUP3 DUP3 SLOAD PUSH2 0x18A5 SWAP2 SWAP1 PUSH2 0x2729 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH32 0xDDF252AD1BE2C89B69C2B068FC378DAA952BA7F163C4A11628F55A4DF523B3EF DUP4 PUSH1 0x40 MLOAD PUSH2 0x1909 SWAP2 SWAP1 PUSH2 0x2107 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG3 PUSH2 0x191C PUSH0 DUP4 DUP4 PUSH2 0x1B71 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH0 PUSH2 0x1929 PUSH2 0x955 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ SWAP1 POP SWAP1 JUMP JUMPDEST PUSH0 DUP2 PUSH0 ADD SLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH2 0x1971 PUSH2 0x955 JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EQ SWAP1 POP SWAP1 JUMP JUMPDEST PUSH0 DUP1 DUP1 SLOAD PUSH2 0x19B1 SWAP1 PUSH2 0x26CC JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x19DD SWAP1 PUSH2 0x26CC JUMP JUMPDEST DUP1 ISZERO PUSH2 0x1A28 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x19FF JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x1A28 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH0 MSTORE PUSH1 0x20 PUSH0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x1A0B JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP SWAP1 POP DUP2 PUSH0 SWAP1 DUP2 PUSH2 0x1A3D SWAP2 SWAP1 PUSH2 0x32C3 JUMP JUMPDEST POP PUSH32 0xC9C7C3FE08B88B4DF9D4D47EF47D2C43D55C025A0BA88CA442580ED9E7348A16 DUP2 DUP4 PUSH1 0x40 MLOAD PUSH2 0x1A6F SWAP3 SWAP2 SWAP1 PUSH2 0x3392 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 LOG1 POP POP JUMP JUMPDEST PUSH1 0x60 PUSH2 0x1AA0 DUP4 DUP4 PUSH1 0x40 MLOAD DUP1 PUSH1 0x60 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x27 DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x3644 PUSH1 0x27 SWAP2 CODECOPY PUSH2 0x1B76 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP1 PUSH1 0x7 PUSH0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH0 KECCAK256 SWAP1 POP PUSH2 0x1AF2 DUP2 PUSH2 0x195C JUMP JUMPDEST SWAP2 POP PUSH2 0x1AFD DUP2 PUSH2 0x1BF8 JUMP JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x40 MLOAD PUSH32 0x1901000000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE DUP4 PUSH1 0x2 DUP3 ADD MSTORE DUP3 PUSH1 0x22 DUP3 ADD MSTORE PUSH1 0x42 DUP2 KECCAK256 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP1 PUSH0 PUSH2 0x1B52 DUP8 DUP8 DUP8 DUP8 PUSH2 0x1C0C JUMP JUMPDEST SWAP2 POP SWAP2 POP PUSH2 0x1B5F DUP2 PUSH2 0x1CE4 JUMP JUMPDEST DUP2 SWAP3 POP POP POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST POP POP POP JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP6 PUSH1 0x40 MLOAD PUSH2 0x1B9F SWAP2 SWAP1 PUSH2 0x33F7 JUMP JUMPDEST PUSH0 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP6 GAS DELEGATECALL SWAP2 POP POP RETURNDATASIZE DUP1 PUSH0 DUP2 EQ PUSH2 0x1BD7 JUMPI PUSH1 0x40 MLOAD SWAP2 POP PUSH1 0x1F NOT PUSH1 0x3F RETURNDATASIZE ADD AND DUP3 ADD PUSH1 0x40 MSTORE RETURNDATASIZE DUP3 MSTORE RETURNDATASIZE PUSH0 PUSH1 0x20 DUP5 ADD RETURNDATACOPY PUSH2 0x1BDC JUMP JUMPDEST PUSH1 0x60 SWAP2 POP JUMPDEST POP SWAP2 POP SWAP2 POP PUSH2 0x1BED DUP7 DUP4 DUP4 DUP8 PUSH2 0x1E49 JUMP JUMPDEST SWAP3 POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x1 DUP2 PUSH0 ADD PUSH0 DUP3 DUP3 SLOAD ADD SWAP3 POP POP DUP2 SWAP1 SSTORE POP POP JUMP JUMPDEST PUSH0 DUP1 PUSH32 0x7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D576E7357A4501DDFE92F46681B20A0 DUP4 PUSH0 SHR GT ISZERO PUSH2 0x1C44 JUMPI PUSH0 PUSH1 0x3 SWAP2 POP SWAP2 POP PUSH2 0x1CDB JUMP JUMPDEST PUSH0 PUSH1 0x1 DUP8 DUP8 DUP8 DUP8 PUSH1 0x40 MLOAD PUSH0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x40 MSTORE PUSH1 0x40 MLOAD PUSH2 0x1C67 SWAP5 SWAP4 SWAP3 SWAP2 SWAP1 PUSH2 0x340D JUMP JUMPDEST PUSH1 0x20 PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 SUB SWAP1 DUP1 DUP5 SUB SWAP1 DUP6 GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x1C87 JUMPI RETURNDATASIZE PUSH0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH0 REVERT JUMPDEST POP POP POP PUSH1 0x20 PUSH1 0x40 MLOAD SUB MLOAD SWAP1 POP PUSH0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SUB PUSH2 0x1CD3 JUMPI PUSH0 PUSH1 0x1 SWAP3 POP SWAP3 POP POP PUSH2 0x1CDB JUMP JUMPDEST DUP1 PUSH0 SWAP3 POP SWAP3 POP POP JUMPDEST SWAP5 POP SWAP5 SWAP3 POP POP POP JUMP JUMPDEST PUSH0 PUSH1 0x4 DUP2 GT ISZERO PUSH2 0x1CF7 JUMPI PUSH2 0x1CF6 PUSH2 0x3450 JUMP JUMPDEST JUMPDEST DUP2 PUSH1 0x4 DUP2 GT ISZERO PUSH2 0x1D0A JUMPI PUSH2 0x1D09 PUSH2 0x3450 JUMP JUMPDEST JUMPDEST SUB ISZERO PUSH2 0x1E46 JUMPI PUSH1 0x1 PUSH1 0x4 DUP2 GT ISZERO PUSH2 0x1D24 JUMPI PUSH2 0x1D23 PUSH2 0x3450 JUMP JUMPDEST JUMPDEST DUP2 PUSH1 0x4 DUP2 GT ISZERO PUSH2 0x1D37 JUMPI PUSH2 0x1D36 PUSH2 0x3450 JUMP JUMPDEST JUMPDEST SUB PUSH2 0x1D77 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1D6E SWAP1 PUSH2 0x34C7 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x2 PUSH1 0x4 DUP2 GT ISZERO PUSH2 0x1D8B JUMPI PUSH2 0x1D8A PUSH2 0x3450 JUMP JUMPDEST JUMPDEST DUP2 PUSH1 0x4 DUP2 GT ISZERO PUSH2 0x1D9E JUMPI PUSH2 0x1D9D PUSH2 0x3450 JUMP JUMPDEST JUMPDEST SUB PUSH2 0x1DDE JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1DD5 SWAP1 PUSH2 0x352F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x3 PUSH1 0x4 DUP2 GT ISZERO PUSH2 0x1DF2 JUMPI PUSH2 0x1DF1 PUSH2 0x3450 JUMP JUMPDEST JUMPDEST DUP2 PUSH1 0x4 DUP2 GT ISZERO PUSH2 0x1E05 JUMPI PUSH2 0x1E04 PUSH2 0x3450 JUMP JUMPDEST JUMPDEST SUB PUSH2 0x1E45 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1E3C SWAP1 PUSH2 0x35BD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMPDEST POP JUMP JUMPDEST PUSH1 0x60 DUP4 ISZERO PUSH2 0x1EAA JUMPI PUSH0 DUP4 MLOAD SUB PUSH2 0x1EA2 JUMPI PUSH2 0x1E62 DUP6 PUSH2 0x1EBD JUMP JUMPDEST PUSH2 0x1EA1 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1E98 SWAP1 PUSH2 0x3625 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST JUMPDEST DUP3 SWAP1 POP PUSH2 0x1EB5 JUMP JUMPDEST PUSH2 0x1EB4 DUP4 DUP4 PUSH2 0x1EDF JUMP JUMPDEST JUMPDEST SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH0 DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND EXTCODESIZE GT SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 DUP3 MLOAD GT ISZERO PUSH2 0x1EF1 JUMPI DUP2 MLOAD DUP1 DUP4 PUSH1 0x20 ADD REVERT JUMPDEST DUP1 PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1F25 SWAP2 SWAP1 PUSH2 0x1F9E JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST DUP3 DUP2 DUP4 MCOPY PUSH0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH2 0x1F70 DUP3 PUSH2 0x1F2E JUMP JUMPDEST PUSH2 0x1F7A DUP2 DUP6 PUSH2 0x1F38 JUMP JUMPDEST SWAP4 POP PUSH2 0x1F8A DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1F48 JUMP JUMPDEST PUSH2 0x1F93 DUP2 PUSH2 0x1F56 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x1FB6 DUP2 DUP5 PUSH2 0x1F66 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH0 DUP1 REVERT JUMPDEST PUSH0 DUP1 REVERT JUMPDEST PUSH0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH2 0x1FF8 DUP3 PUSH2 0x1FCF JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2008 DUP2 PUSH2 0x1FEE JUMP JUMPDEST DUP2 EQ PUSH2 0x2012 JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x2023 DUP2 PUSH2 0x1FFF JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x203B DUP2 PUSH2 0x2029 JUMP JUMPDEST DUP2 EQ PUSH2 0x2045 JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x2056 DUP2 PUSH2 0x2032 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x2072 JUMPI PUSH2 0x2071 PUSH2 0x1FC7 JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0x207F DUP6 DUP3 DUP7 ADD PUSH2 0x2015 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x2090 DUP6 DUP3 DUP7 ADD PUSH2 0x2048 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x20AE DUP2 PUSH2 0x209A JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x20C7 PUSH0 DUP4 ADD DUP5 PUSH2 0x20A5 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x20E2 JUMPI PUSH2 0x20E1 PUSH2 0x1FC7 JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0x20EF DUP5 DUP3 DUP6 ADD PUSH2 0x2015 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x2101 DUP2 PUSH2 0x2029 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x211A PUSH0 DUP4 ADD DUP5 PUSH2 0x20F8 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP1 PUSH0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x2137 JUMPI PUSH2 0x2136 PUSH2 0x1FC7 JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0x2144 DUP7 DUP3 DUP8 ADD PUSH2 0x2015 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x2155 DUP7 DUP3 DUP8 ADD PUSH2 0x2015 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x2166 DUP7 DUP3 DUP8 ADD PUSH2 0x2048 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH0 PUSH1 0xFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2185 DUP2 PUSH2 0x2170 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x219E PUSH0 DUP4 ADD DUP5 PUSH2 0x217C JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x21B6 DUP2 PUSH2 0x21A4 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x21CF PUSH0 DUP4 ADD DUP5 PUSH2 0x21AD JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x21EA JUMPI PUSH2 0x21E9 PUSH2 0x1FC7 JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0x21F7 DUP5 DUP3 DUP6 ADD PUSH2 0x2048 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x2209 DUP2 PUSH2 0x1FEE JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2222 PUSH0 DUP4 ADD DUP5 PUSH2 0x2200 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP1 REVERT JUMPDEST PUSH0 DUP1 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH0 REVERT JUMPDEST PUSH2 0x2266 DUP3 PUSH2 0x1F56 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x2285 JUMPI PUSH2 0x2284 PUSH2 0x2230 JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH0 PUSH2 0x2297 PUSH2 0x1FBE JUMP JUMPDEST SWAP1 POP PUSH2 0x22A3 DUP3 DUP3 PUSH2 0x225D JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x22C2 JUMPI PUSH2 0x22C1 PUSH2 0x2230 JUMP JUMPDEST JUMPDEST PUSH2 0x22CB DUP3 PUSH2 0x1F56 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH0 PUSH2 0x22F8 PUSH2 0x22F3 DUP5 PUSH2 0x22A8 JUMP JUMPDEST PUSH2 0x228E JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x2314 JUMPI PUSH2 0x2313 PUSH2 0x222C JUMP JUMPDEST JUMPDEST PUSH2 0x231F DUP5 DUP3 DUP6 PUSH2 0x22D8 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x233B JUMPI PUSH2 0x233A PUSH2 0x2228 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x234B DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x22E6 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2369 JUMPI PUSH2 0x2368 PUSH2 0x1FC7 JUMP JUMPDEST JUMPDEST PUSH0 DUP3 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2386 JUMPI PUSH2 0x2385 PUSH2 0x1FCB JUMP JUMPDEST JUMPDEST PUSH2 0x2392 DUP5 DUP3 DUP6 ADD PUSH2 0x2327 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP1 REVERT JUMPDEST PUSH0 DUP1 REVERT JUMPDEST PUSH0 DUP1 DUP4 PUSH1 0x1F DUP5 ADD SLT PUSH2 0x23B8 JUMPI PUSH2 0x23B7 PUSH2 0x2228 JUMP JUMPDEST JUMPDEST DUP3 CALLDATALOAD SWAP1 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x23D5 JUMPI PUSH2 0x23D4 PUSH2 0x239B JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP4 ADD SWAP2 POP DUP4 PUSH1 0x20 DUP3 MUL DUP4 ADD GT ISZERO PUSH2 0x23F1 JUMPI PUSH2 0x23F0 PUSH2 0x239F JUMP JUMPDEST JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH0 DUP1 PUSH1 0x20 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x240E JUMPI PUSH2 0x240D PUSH2 0x1FC7 JUMP JUMPDEST JUMPDEST PUSH0 DUP4 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x242B JUMPI PUSH2 0x242A PUSH2 0x1FCB JUMP JUMPDEST JUMPDEST PUSH2 0x2437 DUP6 DUP3 DUP7 ADD PUSH2 0x23A3 JUMP JUMPDEST SWAP3 POP SWAP3 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP2 SWAP1 POP PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH2 0x2490 DUP3 PUSH2 0x246C JUMP JUMPDEST PUSH2 0x249A DUP2 DUP6 PUSH2 0x2476 JUMP JUMPDEST SWAP4 POP PUSH2 0x24AA DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1F48 JUMP JUMPDEST PUSH2 0x24B3 DUP2 PUSH2 0x1F56 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH2 0x24C9 DUP4 DUP4 PUSH2 0x2486 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH2 0x24E7 DUP3 PUSH2 0x2443 JUMP JUMPDEST PUSH2 0x24F1 DUP2 DUP6 PUSH2 0x244D JUMP JUMPDEST SWAP4 POP DUP4 PUSH1 0x20 DUP3 MUL DUP6 ADD PUSH2 0x2503 DUP6 PUSH2 0x245D JUMP JUMPDEST DUP1 PUSH0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x253E JUMPI DUP5 DUP5 SUB DUP10 MSTORE DUP2 MLOAD PUSH2 0x251F DUP6 DUP3 PUSH2 0x24BE JUMP JUMPDEST SWAP5 POP PUSH2 0x252A DUP4 PUSH2 0x24D1 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP11 ADD SWAP10 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x2506 JUMP JUMPDEST POP DUP3 SWAP8 POP DUP8 SWAP6 POP POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x2568 DUP2 DUP5 PUSH2 0x24DD JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x2579 DUP2 PUSH2 0x2170 JUMP JUMPDEST DUP2 EQ PUSH2 0x2583 JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x2594 DUP2 PUSH2 0x2570 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x25A3 DUP2 PUSH2 0x21A4 JUMP JUMPDEST DUP2 EQ PUSH2 0x25AD JUMPI PUSH0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x25BE DUP2 PUSH2 0x259A JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 DUP1 PUSH0 DUP1 PUSH0 DUP1 PUSH0 PUSH1 0xE0 DUP9 DUP11 SUB SLT ISZERO PUSH2 0x25DF JUMPI PUSH2 0x25DE PUSH2 0x1FC7 JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0x25EC DUP11 DUP3 DUP12 ADD PUSH2 0x2015 JUMP JUMPDEST SWAP8 POP POP PUSH1 0x20 PUSH2 0x25FD DUP11 DUP3 DUP12 ADD PUSH2 0x2015 JUMP JUMPDEST SWAP7 POP POP PUSH1 0x40 PUSH2 0x260E DUP11 DUP3 DUP12 ADD PUSH2 0x2048 JUMP JUMPDEST SWAP6 POP POP PUSH1 0x60 PUSH2 0x261F DUP11 DUP3 DUP12 ADD PUSH2 0x2048 JUMP JUMPDEST SWAP5 POP POP PUSH1 0x80 PUSH2 0x2630 DUP11 DUP3 DUP12 ADD PUSH2 0x2586 JUMP JUMPDEST SWAP4 POP POP PUSH1 0xA0 PUSH2 0x2641 DUP11 DUP3 DUP12 ADD PUSH2 0x25B0 JUMP JUMPDEST SWAP3 POP POP PUSH1 0xC0 PUSH2 0x2652 DUP11 DUP3 DUP12 ADD PUSH2 0x25B0 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 SWAP9 SWAP2 SWAP5 SWAP8 POP SWAP3 SWAP6 POP JUMP JUMPDEST PUSH0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x2677 JUMPI PUSH2 0x2676 PUSH2 0x1FC7 JUMP JUMPDEST JUMPDEST PUSH0 PUSH2 0x2684 DUP6 DUP3 DUP7 ADD PUSH2 0x2015 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x2695 DUP6 DUP3 DUP7 ADD PUSH2 0x2015 JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH0 REVERT JUMPDEST PUSH0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x26E3 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x26F6 JUMPI PUSH2 0x26F5 PUSH2 0x269F JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH0 REVERT JUMPDEST PUSH0 PUSH2 0x2733 DUP3 PUSH2 0x2029 JUMP JUMPDEST SWAP2 POP PUSH2 0x273E DUP4 PUSH2 0x2029 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 ADD SWAP1 POP DUP1 DUP3 GT ISZERO PUSH2 0x2756 JUMPI PUSH2 0x2755 PUSH2 0x26FC JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x6E6F7420656E6F7567682062616C616E63650000000000000000000000000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0x2790 PUSH1 0x12 DUP4 PUSH2 0x1F38 JUMP JUMPDEST SWAP2 POP PUSH2 0x279B DUP3 PUSH2 0x275C JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x27BD DUP2 PUSH2 0x2784 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E6F7420617574686F72697A656420746F206D696E742E000000000000000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0x27F8 PUSH1 0x17 DUP4 PUSH2 0x1F38 JUMP JUMPDEST SWAP2 POP PUSH2 0x2803 DUP3 PUSH2 0x27C4 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x2825 DUP2 PUSH2 0x27EC JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4D696E74696E67207A65726F20746F6B656E732E000000000000000000000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0x2860 PUSH1 0x14 DUP4 PUSH2 0x1F38 JUMP JUMPDEST SWAP2 POP PUSH2 0x286B DUP3 PUSH2 0x282C JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x288D DUP2 PUSH2 0x2854 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E6F7420617574686F72697A656420746F206275726E2E000000000000000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0x28C8 PUSH1 0x17 DUP4 PUSH2 0x1F38 JUMP JUMPDEST SWAP2 POP PUSH2 0x28D3 DUP3 PUSH2 0x2894 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x28F5 DUP2 PUSH2 0x28BC JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH2 0x2906 DUP3 PUSH2 0x2029 JUMP JUMPDEST SWAP2 POP PUSH2 0x2911 DUP4 PUSH2 0x2029 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 SUB SWAP1 POP DUP2 DUP2 GT ISZERO PUSH2 0x2929 JUMPI PUSH2 0x2928 PUSH2 0x26FC JUMP JUMPDEST JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x45524332303A2064656372656173656420616C6C6F77616E63652062656C6F77 PUSH0 DUP3 ADD MSTORE PUSH32 0x207A65726F000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0x2989 PUSH1 0x25 DUP4 PUSH2 0x1F38 JUMP JUMPDEST SWAP2 POP PUSH2 0x2994 DUP3 PUSH2 0x292F JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x29B6 DUP2 PUSH2 0x297D JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH0 REVERT JUMPDEST PUSH0 DUP1 REVERT JUMPDEST PUSH0 DUP1 REVERT JUMPDEST PUSH0 DUP1 REVERT JUMPDEST PUSH0 DUP1 DUP4 CALLDATALOAD PUSH1 0x1 PUSH1 0x20 SUB DUP5 CALLDATASIZE SUB SUB DUP2 SLT PUSH2 0x2A12 JUMPI PUSH2 0x2A11 PUSH2 0x29EA JUMP JUMPDEST JUMPDEST DUP1 DUP5 ADD SWAP3 POP DUP3 CALLDATALOAD SWAP2 POP PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x2A34 JUMPI PUSH2 0x2A33 PUSH2 0x29EE JUMP JUMPDEST JUMPDEST PUSH1 0x20 DUP4 ADD SWAP3 POP PUSH1 0x1 DUP3 MUL CALLDATASIZE SUB DUP4 SGT ISZERO PUSH2 0x2A50 JUMPI PUSH2 0x2A4F PUSH2 0x29F2 JUMP JUMPDEST JUMPDEST POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH0 DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH2 0x2A6D DUP4 DUP6 PUSH2 0x2A58 JUMP JUMPDEST SWAP4 POP PUSH2 0x2A7A DUP4 DUP6 DUP5 PUSH2 0x22D8 JUMP JUMPDEST DUP3 DUP5 ADD SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH0 DUP2 PUSH1 0x60 SHL SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH2 0x2A9C DUP3 PUSH2 0x2A86 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH2 0x2AAD DUP3 PUSH2 0x2A92 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2AC5 PUSH2 0x2AC0 DUP3 PUSH2 0x1FEE JUMP JUMPDEST PUSH2 0x2AA3 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH0 PUSH2 0x2AD7 DUP3 DUP6 DUP8 PUSH2 0x2A62 JUMP JUMPDEST SWAP2 POP PUSH2 0x2AE3 DUP3 DUP5 PUSH2 0x2AB4 JUMP JUMPDEST PUSH1 0x14 DUP3 ADD SWAP2 POP DUP2 SWAP1 POP SWAP5 SWAP4 POP POP POP POP JUMP JUMPDEST PUSH32 0x45524332305065726D69743A206578706972656420646561646C696E65000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0x2B28 PUSH1 0x1D DUP4 PUSH2 0x1F38 JUMP JUMPDEST SWAP2 POP PUSH2 0x2B33 DUP3 PUSH2 0x2AF4 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x2B55 DUP2 PUSH2 0x2B1C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0xC0 DUP3 ADD SWAP1 POP PUSH2 0x2B6F PUSH0 DUP4 ADD DUP10 PUSH2 0x21AD JUMP JUMPDEST PUSH2 0x2B7C PUSH1 0x20 DUP4 ADD DUP9 PUSH2 0x2200 JUMP JUMPDEST PUSH2 0x2B89 PUSH1 0x40 DUP4 ADD DUP8 PUSH2 0x2200 JUMP JUMPDEST PUSH2 0x2B96 PUSH1 0x60 DUP4 ADD DUP7 PUSH2 0x20F8 JUMP JUMPDEST PUSH2 0x2BA3 PUSH1 0x80 DUP4 ADD DUP6 PUSH2 0x20F8 JUMP JUMPDEST PUSH2 0x2BB0 PUSH1 0xA0 DUP4 ADD DUP5 PUSH2 0x20F8 JUMP JUMPDEST SWAP8 SWAP7 POP POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x45524332305065726D69743A20696E76616C6964207369676E61747572650000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0x2BEF PUSH1 0x1E DUP4 PUSH2 0x1F38 JUMP JUMPDEST SWAP2 POP PUSH2 0x2BFA DUP3 PUSH2 0x2BBB JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x2C1C DUP2 PUSH2 0x2BE3 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x45524332303A20617070726F76652066726F6D20746865207A65726F20616464 PUSH0 DUP3 ADD MSTORE PUSH32 0x7265737300000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0x2C7D PUSH1 0x24 DUP4 PUSH2 0x1F38 JUMP JUMPDEST SWAP2 POP PUSH2 0x2C88 DUP3 PUSH2 0x2C23 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x2CAA DUP2 PUSH2 0x2C71 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x45524332303A20617070726F766520746F20746865207A65726F206164647265 PUSH0 DUP3 ADD MSTORE PUSH32 0x7373000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0x2D0B PUSH1 0x22 DUP4 PUSH2 0x1F38 JUMP JUMPDEST SWAP2 POP PUSH2 0x2D16 DUP3 PUSH2 0x2CB1 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x2D38 DUP2 PUSH2 0x2CFF JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x45524332303A20696E73756666696369656E7420616C6C6F77616E6365000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0x2D73 PUSH1 0x1D DUP4 PUSH2 0x1F38 JUMP JUMPDEST SWAP2 POP PUSH2 0x2D7E DUP3 PUSH2 0x2D3F JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x2DA0 DUP2 PUSH2 0x2D67 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x45524332303A207472616E736665722066726F6D20746865207A65726F206164 PUSH0 DUP3 ADD MSTORE PUSH32 0x6472657373000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0x2E01 PUSH1 0x25 DUP4 PUSH2 0x1F38 JUMP JUMPDEST SWAP2 POP PUSH2 0x2E0C DUP3 PUSH2 0x2DA7 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x2E2E DUP2 PUSH2 0x2DF5 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x45524332303A207472616E7366657220746F20746865207A65726F2061646472 PUSH0 DUP3 ADD MSTORE PUSH32 0x6573730000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0x2E8F PUSH1 0x23 DUP4 PUSH2 0x1F38 JUMP JUMPDEST SWAP2 POP PUSH2 0x2E9A DUP3 PUSH2 0x2E35 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x2EBC DUP2 PUSH2 0x2E83 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x45524332303A207472616E7366657220616D6F756E7420657863656564732062 PUSH0 DUP3 ADD MSTORE PUSH32 0x616C616E63650000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0x2F1D PUSH1 0x26 DUP4 PUSH2 0x1F38 JUMP JUMPDEST SWAP2 POP PUSH2 0x2F28 DUP3 PUSH2 0x2EC3 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x2F4A DUP2 PUSH2 0x2F11 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0xA0 DUP3 ADD SWAP1 POP PUSH2 0x2F64 PUSH0 DUP4 ADD DUP9 PUSH2 0x21AD JUMP JUMPDEST PUSH2 0x2F71 PUSH1 0x20 DUP4 ADD DUP8 PUSH2 0x21AD JUMP JUMPDEST PUSH2 0x2F7E PUSH1 0x40 DUP4 ADD DUP7 PUSH2 0x21AD JUMP JUMPDEST PUSH2 0x2F8B PUSH1 0x60 DUP4 ADD DUP6 PUSH2 0x20F8 JUMP JUMPDEST PUSH2 0x2F98 PUSH1 0x80 DUP4 ADD DUP5 PUSH2 0x2200 JUMP JUMPDEST SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH32 0x45524332303A206275726E2066726F6D20746865207A65726F20616464726573 PUSH0 DUP3 ADD MSTORE PUSH32 0x7300000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0x2FFC PUSH1 0x21 DUP4 PUSH2 0x1F38 JUMP JUMPDEST SWAP2 POP PUSH2 0x3007 DUP3 PUSH2 0x2FA2 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x3029 DUP2 PUSH2 0x2FF0 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x45524332303A206275726E20616D6F756E7420657863656564732062616C616E PUSH0 DUP3 ADD MSTORE PUSH32 0x6365000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0x308A PUSH1 0x22 DUP4 PUSH2 0x1F38 JUMP JUMPDEST SWAP2 POP PUSH2 0x3095 DUP3 PUSH2 0x3030 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x30B7 DUP2 PUSH2 0x307E JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x45524332303A206D696E7420746F20746865207A65726F206164647265737300 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0x30F2 PUSH1 0x1F DUP4 PUSH2 0x1F38 JUMP JUMPDEST SWAP2 POP PUSH2 0x30FD DUP3 PUSH2 0x30BE JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x311F DUP2 PUSH2 0x30E6 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 DUP2 SWAP1 POP DUP2 PUSH0 MSTORE PUSH1 0x20 PUSH0 KECCAK256 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 PUSH1 0x1F DUP4 ADD DIV SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 DUP3 DUP3 SHL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH1 0x8 DUP4 MUL PUSH2 0x3182 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 PUSH2 0x3147 JUMP JUMPDEST PUSH2 0x318C DUP7 DUP4 PUSH2 0x3147 JUMP JUMPDEST SWAP6 POP DUP1 NOT DUP5 AND SWAP4 POP DUP1 DUP7 AND DUP5 OR SWAP3 POP POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH2 0x31C7 PUSH2 0x31C2 PUSH2 0x31BD DUP5 PUSH2 0x2029 JUMP JUMPDEST PUSH2 0x31A4 JUMP JUMPDEST PUSH2 0x2029 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x31E0 DUP4 PUSH2 0x31AD JUMP JUMPDEST PUSH2 0x31F4 PUSH2 0x31EC DUP3 PUSH2 0x31CE JUMP JUMPDEST DUP5 DUP5 SLOAD PUSH2 0x3153 JUMP JUMPDEST DUP3 SSTORE POP POP POP POP JUMP JUMPDEST PUSH0 SWAP1 JUMP JUMPDEST PUSH2 0x3208 PUSH2 0x31FC JUMP JUMPDEST PUSH2 0x3213 DUP2 DUP5 DUP5 PUSH2 0x31D7 JUMP JUMPDEST POP POP POP JUMP JUMPDEST JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x3236 JUMPI PUSH2 0x322B PUSH0 DUP3 PUSH2 0x3200 JUMP JUMPDEST PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x3219 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0x327B JUMPI PUSH2 0x324C DUP2 PUSH2 0x3126 JUMP JUMPDEST PUSH2 0x3255 DUP5 PUSH2 0x3138 JUMP JUMPDEST DUP2 ADD PUSH1 0x20 DUP6 LT ISZERO PUSH2 0x3264 JUMPI DUP2 SWAP1 POP JUMPDEST PUSH2 0x3278 PUSH2 0x3270 DUP6 PUSH2 0x3138 JUMP JUMPDEST DUP4 ADD DUP3 PUSH2 0x3218 JUMP JUMPDEST POP POP JUMPDEST POP POP POP JUMP JUMPDEST PUSH0 DUP3 DUP3 SHR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH2 0x329B PUSH0 NOT DUP5 PUSH1 0x8 MUL PUSH2 0x3280 JUMP JUMPDEST NOT DUP1 DUP4 AND SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH2 0x32B3 DUP4 DUP4 PUSH2 0x328C JUMP JUMPDEST SWAP2 POP DUP3 PUSH1 0x2 MUL DUP3 OR SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x32CC DUP3 PUSH2 0x1F2E JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x32E5 JUMPI PUSH2 0x32E4 PUSH2 0x2230 JUMP JUMPDEST JUMPDEST PUSH2 0x32EF DUP3 SLOAD PUSH2 0x26CC JUMP JUMPDEST PUSH2 0x32FA DUP3 DUP3 DUP6 PUSH2 0x323A JUMP JUMPDEST PUSH0 PUSH1 0x20 SWAP1 POP PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0x332B JUMPI PUSH0 DUP5 ISZERO PUSH2 0x3319 JUMPI DUP3 DUP8 ADD MLOAD SWAP1 POP JUMPDEST PUSH2 0x3323 DUP6 DUP3 PUSH2 0x32A8 JUMP JUMPDEST DUP7 SSTORE POP PUSH2 0x338A JUMP JUMPDEST PUSH1 0x1F NOT DUP5 AND PUSH2 0x3339 DUP7 PUSH2 0x3126 JUMP JUMPDEST PUSH0 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x3360 JUMPI DUP5 DUP10 ADD MLOAD DUP3 SSTORE PUSH1 0x1 DUP3 ADD SWAP2 POP PUSH1 0x20 DUP6 ADD SWAP5 POP PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x333B JUMP JUMPDEST DUP7 DUP4 LT ISZERO PUSH2 0x337D JUMPI DUP5 DUP10 ADD MLOAD PUSH2 0x3379 PUSH1 0x1F DUP10 AND DUP3 PUSH2 0x328C JUMP JUMPDEST DUP4 SSTORE POP JUMPDEST PUSH1 0x1 PUSH1 0x2 DUP9 MUL ADD DUP9 SSTORE POP POP POP JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST PUSH0 PUSH1 0x40 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x33AA DUP2 DUP6 PUSH2 0x1F66 JUMP JUMPDEST SWAP1 POP DUP2 DUP2 SUB PUSH1 0x20 DUP4 ADD MSTORE PUSH2 0x33BE DUP2 DUP5 PUSH2 0x1F66 JUMP JUMPDEST SWAP1 POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH0 PUSH2 0x33D1 DUP3 PUSH2 0x246C JUMP JUMPDEST PUSH2 0x33DB DUP2 DUP6 PUSH2 0x2A58 JUMP JUMPDEST SWAP4 POP PUSH2 0x33EB DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1F48 JUMP JUMPDEST DUP1 DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH2 0x3402 DUP3 DUP5 PUSH2 0x33C7 JUMP JUMPDEST SWAP2 POP DUP2 SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH0 PUSH1 0x80 DUP3 ADD SWAP1 POP PUSH2 0x3420 PUSH0 DUP4 ADD DUP8 PUSH2 0x21AD JUMP JUMPDEST PUSH2 0x342D PUSH1 0x20 DUP4 ADD DUP7 PUSH2 0x217C JUMP JUMPDEST PUSH2 0x343A PUSH1 0x40 DUP4 ADD DUP6 PUSH2 0x21AD JUMP JUMPDEST PUSH2 0x3447 PUSH1 0x60 DUP4 ADD DUP5 PUSH2 0x21AD JUMP JUMPDEST SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH0 MSTORE PUSH1 0x21 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH0 REVERT JUMPDEST PUSH32 0x45434453413A20696E76616C6964207369676E61747572650000000000000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0x34B1 PUSH1 0x18 DUP4 PUSH2 0x1F38 JUMP JUMPDEST SWAP2 POP PUSH2 0x34BC DUP3 PUSH2 0x347D JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x34DE DUP2 PUSH2 0x34A5 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x45434453413A20696E76616C6964207369676E6174757265206C656E67746800 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0x3519 PUSH1 0x1F DUP4 PUSH2 0x1F38 JUMP JUMPDEST SWAP2 POP PUSH2 0x3524 DUP3 PUSH2 0x34E5 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x3546 DUP2 PUSH2 0x350D JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x45434453413A20696E76616C6964207369676E6174757265202773272076616C PUSH0 DUP3 ADD MSTORE PUSH32 0x7565000000000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0x35A7 PUSH1 0x22 DUP4 PUSH2 0x1F38 JUMP JUMPDEST SWAP2 POP PUSH2 0x35B2 DUP3 PUSH2 0x354D JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x35D4 DUP2 PUSH2 0x359B JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x416464726573733A2063616C6C20746F206E6F6E2D636F6E7472616374000000 PUSH0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH0 PUSH2 0x360F PUSH1 0x1D DUP4 PUSH2 0x1F38 JUMP JUMPDEST SWAP2 POP PUSH2 0x361A DUP3 PUSH2 0x35DB JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH0 DUP4 ADD MSTORE PUSH2 0x363C DUP2 PUSH2 0x3603 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP INVALID COINBASE PUSH5 0x6472657373 GASPRICE KECCAK256 PUSH13 0x6F772D6C6576656C2064656C65 PUSH8 0x6174652063616C6C KECCAK256 PUSH7 0x61696C6564A264 PUSH10 0x706673582212209B4740 0x2A REVERT 0xAE PUSH23 0x96A3A583FBA04835973D81E642FE4AB0DF246A5C35E88B 0xA9 DUP5 PUSH5 0x736F6C6343 STOP ADDMOD NOT STOP CALLER ",
"sourceMap": "1023:3474:0:-:0;;;1443:95:13;1390:148;;;;;1312:150:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1403:5;1410:7;1832:5:13;1839:7;2089:5:12;2081;:13;;;;;;:::i;:::-;;2114:7;2104;:17;;;;;;:::i;:::-;;2015:113;;1877:13:13::1;1858:32;;;;::::0;::::1;1923:4;1900:28;;;;;;;;::::0;::::1;1965:23;:21;;;:23;;:::i;:::-;1938:50;;;;::::0;::::1;1770:225:::0;;1429:26:0::1;1441:13;1429:11;;;:26;;:::i;:::-;1312:150:::0;;;1023:3474;;3296:438:13;3351:7;3448:95;3581:6;:4;;;:6;;:::i;:::-;3565:24;;;;;;3611:14;3647:13;3690:4;3416:297;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;3389:338;;;;;;3370:357;;3296:438;:::o;1527:172:6:-;1586:18;1607:6;;;;;;;;;;;1586:27;;1632:9;1623:6;;:18;;;;;;;;;;;;;;;;;;1682:9;1657:35;;1670:10;1657:35;;;;;;;;;;;;1576:123;1527:172;:::o;2193:98:12:-;2247:13;2279:5;2272:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2193:98;:::o;7:75:20:-;40:6;73:2;67:9;57:19;;7:75;:::o;88:117::-;197:1;194;187:12;211:117;320:1;317;310:12;334:126;371:7;411:42;404:5;400:54;389:65;;334:126;;;:::o;466:96::-;503:7;532:24;550:5;532:24;:::i;:::-;521:35;;466:96;;;:::o;568:122::-;641:24;659:5;641:24;:::i;:::-;634:5;631:35;621:63;;680:1;677;670:12;621:63;568:122;:::o;696:143::-;753:5;784:6;778:13;769:22;;800:33;827:5;800:33;:::i;:::-;696:143;;;;:::o;845:117::-;954:1;951;944:12;968:117;1077:1;1074;1067:12;1091:102;1132:6;1183:2;1179:7;1174:2;1167:5;1163:14;1159:28;1149:38;;1091:102;;;:::o;1199:180::-;1247:77;1244:1;1237:88;1344:4;1341:1;1334:15;1368:4;1365:1;1358:15;1385:281;1468:27;1490:4;1468:27;:::i;:::-;1460:6;1456:40;1598:6;1586:10;1583:22;1562:18;1550:10;1547:34;1544:62;1541:88;;;1609:18;;:::i;:::-;1541:88;1649:10;1645:2;1638:22;1428:238;1385:281;;:::o;1672:129::-;1706:6;1733:20;;:::i;:::-;1723:30;;1762:33;1790:4;1782:6;1762:33;:::i;:::-;1672:129;;;:::o;1807:308::-;1869:4;1959:18;1951:6;1948:30;1945:56;;;1981:18;;:::i;:::-;1945:56;2019:29;2041:6;2019:29;:::i;:::-;2011:37;;2103:4;2097;2093:15;2085:23;;1807:308;;;:::o;2121:139::-;2210:6;2205:3;2200;2194:23;2251:1;2242:6;2237:3;2233:16;2226:27;2121:139;;;:::o;2266:434::-;2355:5;2380:66;2396:49;2438:6;2396:49;:::i;:::-;2380:66;:::i;:::-;2371:75;;2469:6;2462:5;2455:21;2507:4;2500:5;2496:16;2545:3;2536:6;2531:3;2527:16;2524:25;2521:112;;;2552:79;;:::i;:::-;2521:112;2642:52;2687:6;2682:3;2677;2642:52;:::i;:::-;2361:339;2266:434;;;;;:::o;2720:355::-;2787:5;2836:3;2829:4;2821:6;2817:17;2813:27;2803:122;;2844:79;;:::i;:::-;2803:122;2954:6;2948:13;2979:90;3065:3;3057:6;3050:4;3042:6;3038:17;2979:90;:::i;:::-;2970:99;;2793:282;2720:355;;;;:::o;3081:1009::-;3189:6;3197;3205;3254:2;3242:9;3233:7;3229:23;3225:32;3222:119;;;3260:79;;:::i;:::-;3222:119;3380:1;3405:64;3461:7;3452:6;3441:9;3437:22;3405:64;:::i;:::-;3395:74;;3351:128;3539:2;3528:9;3524:18;3518:25;3570:18;3562:6;3559:30;3556:117;;;3592:79;;:::i;:::-;3556:117;3697:74;3763:7;3754:6;3743:9;3739:22;3697:74;:::i;:::-;3687:84;;3489:292;3841:2;3830:9;3826:18;3820:25;3872:18;3864:6;3861:30;3858:117;;;3894:79;;:::i;:::-;3858:117;3999:74;4065:7;4056:6;4045:9;4041:22;3999:74;:::i;:::-;3989:84;;3791:292;3081:1009;;;;;:::o;4096:99::-;4148:6;4182:5;4176:12;4166:22;;4096:99;;;:::o;4201:180::-;4249:77;4246:1;4239:88;4346:4;4343:1;4336:15;4370:4;4367:1;4360:15;4387:320;4431:6;4468:1;4462:4;4458:12;4448:22;;4515:1;4509:4;4505:12;4536:18;4526:81;;4592:4;4584:6;4580:17;4570:27;;4526:81;4654:2;4646:6;4643:14;4623:18;4620:38;4617:84;;4673:18;;:::i;:::-;4617:84;4438:269;4387:320;;;:::o;4713:141::-;4762:4;4785:3;4777:11;;4808:3;4805:1;4798:14;4842:4;4839:1;4829:18;4821:26;;4713:141;;;:::o;4860:93::-;4897:6;4944:2;4939;4932:5;4928:14;4924:23;4914:33;;4860:93;;;:::o;4959:107::-;5003:8;5053:5;5047:4;5043:16;5022:37;;4959:107;;;;:::o;5072:393::-;5141:6;5191:1;5179:10;5175:18;5214:97;5244:66;5233:9;5214:97;:::i;:::-;5332:39;5362:8;5351:9;5332:39;:::i;:::-;5320:51;;5404:4;5400:9;5393:5;5389:21;5380:30;;5453:4;5443:8;5439:19;5432:5;5429:30;5419:40;;5148:317;;5072:393;;;;;:::o;5471:77::-;5508:7;5537:5;5526:16;;5471:77;;;:::o;5554:60::-;5582:3;5603:5;5596:12;;5554:60;;;:::o;5620:142::-;5670:9;5703:53;5721:34;5730:24;5748:5;5730:24;:::i;:::-;5721:34;:::i;:::-;5703:53;:::i;:::-;5690:66;;5620:142;;;:::o;5768:75::-;5811:3;5832:5;5825:12;;5768:75;;;:::o;5849:269::-;5959:39;5990:7;5959:39;:::i;:::-;6020:91;6069:41;6093:16;6069:41;:::i;:::-;6061:6;6054:4;6048:11;6020:91;:::i;:::-;6014:4;6007:105;5925:193;5849:269;;;:::o;6124:73::-;6169:3;6124:73;:::o;6203:189::-;6280:32;;:::i;:::-;6321:65;6379:6;6371;6365:4;6321:65;:::i;:::-;6256:136;6203:189;;:::o;6398:186::-;6458:120;6475:3;6468:5;6465:14;6458:120;;;6529:39;6566:1;6559:5;6529:39;:::i;:::-;6502:1;6495:5;6491:13;6482:22;;6458:120;;;6398:186;;:::o;6590:543::-;6691:2;6686:3;6683:11;6680:446;;;6725:38;6757:5;6725:38;:::i;:::-;6809:29;6827:10;6809:29;:::i;:::-;6799:8;6795:44;6992:2;6980:10;6977:18;6974:49;;;7013:8;6998:23;;6974:49;7036:80;7092:22;7110:3;7092:22;:::i;:::-;7082:8;7078:37;7065:11;7036:80;:::i;:::-;6695:431;;6680:446;6590:543;;;:::o;7139:117::-;7193:8;7243:5;7237:4;7233:16;7212:37;;7139:117;;;;:::o;7262:169::-;7306:6;7339:51;7387:1;7383:6;7375:5;7372:1;7368:13;7339:51;:::i;:::-;7335:56;7420:4;7414;7410:15;7400:25;;7313:118;7262:169;;;;:::o;7436:295::-;7512:4;7658:29;7683:3;7677:4;7658:29;:::i;:::-;7650:37;;7720:3;7717:1;7713:11;7707:4;7704:21;7696:29;;7436:295;;;;:::o;7736:1395::-;7853:37;7886:3;7853:37;:::i;:::-;7955:18;7947:6;7944:30;7941:56;;;7977:18;;:::i;:::-;7941:56;8021:38;8053:4;8047:11;8021:38;:::i;:::-;8106:67;8166:6;8158;8152:4;8106:67;:::i;:::-;8200:1;8224:4;8211:17;;8256:2;8248:6;8245:14;8273:1;8268:618;;;;8930:1;8947:6;8944:77;;;8996:9;8991:3;8987:19;8981:26;8972:35;;8944:77;9047:67;9107:6;9100:5;9047:67;:::i;:::-;9041:4;9034:81;8903:222;8238:887;;8268:618;8320:4;8316:9;8308:6;8304:22;8354:37;8386:4;8354:37;:::i;:::-;8413:1;8427:208;8441:7;8438:1;8435:14;8427:208;;;8520:9;8515:3;8511:19;8505:26;8497:6;8490:42;8571:1;8563:6;8559:14;8549:24;;8618:2;8607:9;8603:18;8590:31;;8464:4;8461:1;8457:12;8452:17;;8427:208;;;8663:6;8654:7;8651:19;8648:179;;;8721:9;8716:3;8712:19;8706:26;8764:48;8806:4;8798:6;8794:17;8783:9;8764:48;:::i;:::-;8756:6;8749:64;8671:156;8648:179;8873:1;8869;8861:6;8857:14;8853:22;8847:4;8840:36;8275:611;;;8238:887;;7828:1303;;;7736:1395;;:::o;9137:77::-;9174:7;9203:5;9192:16;;9137:77;;;:::o;9220:118::-;9307:24;9325:5;9307:24;:::i;:::-;9302:3;9295:37;9220:118;;:::o;9344:::-;9431:24;9449:5;9431:24;:::i;:::-;9426:3;9419:37;9344:118;;:::o;9468:::-;9555:24;9573:5;9555:24;:::i;:::-;9550:3;9543:37;9468:118;;:::o;9592:664::-;9797:4;9835:3;9824:9;9820:19;9812:27;;9849:71;9917:1;9906:9;9902:17;9893:6;9849:71;:::i;:::-;9930:72;9998:2;9987:9;9983:18;9974:6;9930:72;:::i;:::-;10012;10080:2;10069:9;10065:18;10056:6;10012:72;:::i;:::-;10094;10162:2;10151:9;10147:18;10138:6;10094:72;:::i;:::-;10176:73;10244:3;10233:9;10229:19;10220:6;10176:73;:::i;:::-;9592:664;;;;;;;;:::o;1023:3474:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"
},
"deployedBytecode": {
"functionDebugData": {
"@DOMAIN_SEPARATOR_1447": {
"entryPoint": 1449,
"id": 1447,
"parameterSlots": 0,
"returnSlots": 1
},
"@_afterTokenTransfer_1265": {
"entryPoint": 7025,
"id": 1265,
"parameterSlots": 3,
"returnSlots": 0
},
"@_approve_1200": {
"entryPoint": 3958,
"id": 1200,
"parameterSlots": 3,
"returnSlots": 0
},
"@_beforeTokenTransfer_1254": {
"entryPoint": 7020,
"id": 1254,
"parameterSlots": 3,
"returnSlots": 0
},
"@_buildDomainSeparator_1478": {
"entryPoint": 5435,
"id": 1478,
"parameterSlots": 0,
"returnSlots": 1
},
"@_burn_1155": {
"entryPoint": 5566,
"id": 1155,
"parameterSlots": 2,
"returnSlots": 0
},
"@_canBurn_182": {
"entryPoint": 6432,
"id": 182,
"parameterSlots": 0,
"returnSlots": 1
},
"@_canMint_169": {
"entryPoint": 6028,
"id": 169,
"parameterSlots": 0,
"returnSlots": 1
},
"@_canSetContractURI_156": {
"entryPoint": 6504,
"id": 156,
"parameterSlots": 0,
"returnSlots": 1
},
"@_canSetOwner_196": {
"entryPoint": 4409,
"id": 196,
"parameterSlots": 0,
"returnSlots": 1
},
"@_mint_1083": {
"entryPoint": 6088,
"id": 1083,
"parameterSlots": 2,
"returnSlots": 0
},
"@_msgSender_209": {
"entryPoint": 3951,
"id": 209,
"parameterSlots": 0,
"returnSlots": 1
},
"@_revert_2453": {
"entryPoint": 7903,
"id": 2453,
"parameterSlots": 2,
"returnSlots": 0
},
"@_setupContractURI_388": {
"entryPoint": 6564,
"id": 388,
"parameterSlots": 1,
"returnSlots": 0
},
"@_setupOwner_574": {
"entryPoint": 4469,
"id": 574,
"parameterSlots": 1,
"returnSlots": 0
},
"@_spendAllowance_1243": {
"entryPoint": 4664,
"id": 1243,
"parameterSlots": 3,
"returnSlots": 0
},
"@_throwError_1658": {
"entryPoint": 7396,
"id": 1658,
"parameterSlots": 1,
"returnSlots": 0
},
"@_transfer_1027": {
"entryPoint": 4803,
"id": 1027,
"parameterSlots": 3,
"returnSlots": 0
},
"@_useNonce_1507": {
"entryPoint": 6824,
"id": 1507,
"parameterSlots": 1,
"returnSlots": 1
},
"@allowance_820": {
"entryPoint": 3682,
"id": 820,
"parameterSlots": 2,
"returnSlots": 1
},
"@approve_845": {
"entryPoint": 1278,
"id": 845,
"parameterSlots": 2,
"returnSlots": 1
},
"@balanceOf_777": {
"entryPoint": 2035,
"id": 777,
"parameterSlots": 1,
"returnSlots": 1
},
"@burnFrom_142": {
"entryPoint": 2105,
"id": 142,
"parameterSlots": 2,
"returnSlots": 0
},
"@burn_88": {
"entryPoint": 1796,
"id": 88,
"parameterSlots": 1,
"returnSlots": 0
},
"@contractURI_348": {
"entryPoint": 3812,
"id": 348,
"parameterSlots": 0,
"returnSlots": 0
},
"@current_1548": {
"entryPoint": 6492,
"id": 1548,
"parameterSlots": 1,
"returnSlots": 1
},
"@decimals_753": {
"entryPoint": 1441,
"id": 753,
"parameterSlots": 0,
"returnSlots": 1
},
"@decreaseAllowance_950": {
"entryPoint": 2647,
"id": 950,
"parameterSlots": 2,
"returnSlots": 1
},
"@functionDelegateCall_2341": {
"entryPoint": 6779,
"id": 2341,
"parameterSlots": 2,
"returnSlots": 1
},
"@functionDelegateCall_2370": {
"entryPoint": 7030,
"id": 2370,
"parameterSlots": 3,
"returnSlots": 1
},
"@increaseAllowance_908": {
"entryPoint": 1631,
"id": 908,
"parameterSlots": 2,
"returnSlots": 1
},
"@increment_1562": {
"entryPoint": 7160,
"id": 1562,
"parameterSlots": 1,
"returnSlots": 0
},
"@isContract_2142": {
"entryPoint": 7869,
"id": 2142,
"parameterSlots": 1,
"returnSlots": 1
},
"@mintTo_65": {
"entryPoint": 1884,
"id": 65,
"parameterSlots": 2,
"returnSlots": 0
},
"@multicall_487": {
"entryPoint": 2909,
"id": 487,
"parameterSlots": 2,
"returnSlots": 1
},
"@name_733": {
"entryPoint": 1134,
"id": 733,
"parameterSlots": 0,
"returnSlots": 1
},
"@nonces_1420": {
"entryPoint": 2312,
"id": 1420,
"parameterSlots": 1,
"returnSlots": 1
},
"@owner_534": {
"entryPoint": 2389,
"id": 534,
"parameterSlots": 0,
"returnSlots": 1
},
"@permit_1404": {
"entryPoint": 3355,
"id": 1404,
"parameterSlots": 7,
"returnSlots": 0
},
"@recover_1905": {
"entryPoint": 6979,
"id": 1905,
"parameterSlots": 4,
"returnSlots": 1
},
"@setContractURI_368": {
"entryPoint": 2429,
"id": 368,
"parameterSlots": 1,
"returnSlots": 0
},
"@setOwner_554": {
"entryPoint": 1312,
"id": 554,
"parameterSlots": 1,
"returnSlots": 0
},
"@symbol_743": {
"entryPoint": 2503,
"id": 743,
"parameterSlots": 0,
"returnSlots": 1
},
"@toTypedDataHash_1949": {
"entryPoint": 6915,
"id": 1949,
"parameterSlots": 2,
"returnSlots": 1
},
"@totalSupply_763": {
"entryPoint": 1386,
"id": 763,
"parameterSlots": 0,
"returnSlots": 1
},
"@transferFrom_878": {
"entryPoint": 1395,
"id": 878,
"parameterSlots": 3,
"returnSlots": 1
},
"@transfer_802": {
"entryPoint": 2875,
"id": 802,
"parameterSlots": 2,
"returnSlots": 1
},
"@tryRecover_1872": {
"entryPoint": 7180,
"id": 1872,
"parameterSlots": 4,
"returnSlots": 2
},
"@verifyCallResultFromTarget_2409": {
"entryPoint": 7753,
"id": 2409,
"parameterSlots": 4,
"returnSlots": 1
},
"abi_decode_available_length_t_string_memory_ptr": {
"entryPoint": 8934,
"id": null,
"parameterSlots": 3,
"returnSlots": 1
},
"abi_decode_t_address": {
"entryPoint": 8213,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr": {
"entryPoint": 9123,
"id": null,
"parameterSlots": 2,
"returnSlots": 2
},
"abi_decode_t_bytes32": {
"entryPoint": 9648,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_t_string_memory_ptr": {
"entryPoint": 8999,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_t_uint256": {
"entryPoint": 8264,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_t_uint8": {
"entryPoint": 9606,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_tuple_t_address": {
"entryPoint": 8397,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_tuple_t_addresst_address": {
"entryPoint": 9825,
"id": null,
"parameterSlots": 2,
"returnSlots": 2
},
"abi_decode_tuple_t_addresst_addresst_uint256": {
"entryPoint": 8480,
"id": null,
"parameterSlots": 2,
"returnSlots": 3
},
"abi_decode_tuple_t_addresst_addresst_uint256t_uint256t_uint8t_bytes32t_bytes32": {
"entryPoint": 9668,
"id": null,
"parameterSlots": 2,
"returnSlots": 7
},
"abi_decode_tuple_t_addresst_uint256": {
"entryPoint": 8284,
"id": null,
"parameterSlots": 2,
"returnSlots": 2
},
"abi_decode_tuple_t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr": {
"entryPoint": 9208,
"id": null,
"parameterSlots": 2,
"returnSlots": 2
},
"abi_decode_tuple_t_string_memory_ptr": {
"entryPoint": 9044,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_decode_tuple_t_uint256": {
"entryPoint": 8661,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encodeUpdatedPos_t_bytes_memory_ptr_to_t_bytes_memory_ptr": {
"entryPoint": 9406,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_t_address_to_t_address_fromStack": {
"entryPoint": 8704,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_t_address_to_t_address_nonPadded_inplace_fromStack": {
"entryPoint": 10932,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack": {
"entryPoint": 9437,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_t_bool_to_t_bool_fromStack": {
"entryPoint": 8357,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_t_bytes32_to_t_bytes32_fromStack": {
"entryPoint": 8621,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack": {
"entryPoint": 10850,
"id": null,
"parameterSlots": 3,
"returnSlots": 1
},
"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr": {
"entryPoint": 9350,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack": {
"entryPoint": 13255,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack": {
"entryPoint": 8038,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_t_stringliteral_00043f6bf76368aa97c21698e9b9d4779e31902453daccf3525ddfb36e53e2be_to_t_string_memory_ptr_fromStack": {
"entryPoint": 13477,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_t_stringliteral_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f_to_t_string_memory_ptr_fromStack": {
"entryPoint": 11907,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_t_stringliteral_149b126e7125232b4200af45303d04fba8b74653b1a295a6a561a528c33fefdd_to_t_string_memory_ptr_fromStack": {
"entryPoint": 12414,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_t_stringliteral_1669ff3ba3cdf64474e1193492d05b8434e29b0b495e60095eb5f5c8ec14ce77_to_t_string_memory_ptr_fromStack": {
"entryPoint": 13581,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_t_stringliteral_19fa12bcfa7d6a1607ff6d71275840261c73292c97fc8050f5d1b6b6df578e14_to_t_string_memory_ptr_fromStack": {
"entryPoint": 10220,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_t_stringliteral_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029_to_t_string_memory_ptr_fromStack": {
"entryPoint": 11519,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_t_stringliteral_3b6607e091cba9325f958656d2b5e0622ab7dc0eac71a26ac788cb25bc19f4fe_to_t_string_memory_ptr_fromStack": {
"entryPoint": 11623,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_t_stringliteral_3e89525a63fb9c966b61cf8f5305156de8420bc773a2b60828a2f32c3c5797bd_to_t_string_memory_ptr_fromStack": {
"entryPoint": 11036,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_t_stringliteral_4107e8a8b9e94bf8ff83080ddec1c0bffe897ebc2241b89d44f66b3d274088b6_to_t_string_memory_ptr_fromStack": {
"entryPoint": 12049,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_t_stringliteral_520d1f787dbcafbbfc007fd2c4ecf3d2711ec587f3ee9a1215c0b646c3e530bd_to_t_string_memory_ptr_fromStack": {
"entryPoint": 13723,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_t_stringliteral_596712763af5ad819c1a1c8db05ac93e50918d28937626717ff5e1d919b4454a_to_t_string_memory_ptr_fromStack": {
"entryPoint": 10116,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_t_stringliteral_7acedc89dd3658da26d0488f7e55737f51bdbd8424532db0708cd962cbb1712b_to_t_string_memory_ptr_fromStack": {
"entryPoint": 10324,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_t_stringliteral_94ca1ab58dfda790a1782ffbb0c0a140ec51d4148dbeecc6c39e37b25ff4b124_to_t_string_memory_ptr_fromStack": {
"entryPoint": 11235,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_t_stringliteral_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f_to_t_string_memory_ptr_fromStack": {
"entryPoint": 12272,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_t_stringliteral_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea_to_t_string_memory_ptr_fromStack": {
"entryPoint": 11765,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_t_stringliteral_bfd83d10623a5529dfc6af3e2d36b3506e4ee9af9c8ff0477cf2b779ec460a88_to_t_string_memory_ptr_fromStack": {
"entryPoint": 10428,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_t_stringliteral_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208_to_t_string_memory_ptr_fromStack": {
"entryPoint": 11377,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_t_stringliteral_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad_to_t_string_memory_ptr_fromStack": {
"entryPoint": 13827,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_t_stringliteral_f8b476f7d28209d77d4a4ac1fe36b9f8259aa1bb6bddfa6e89de7e51615cf8a8_to_t_string_memory_ptr_fromStack": {
"entryPoint": 10621,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_t_stringliteral_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e_to_t_string_memory_ptr_fromStack": {
"entryPoint": 12518,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_t_uint256_to_t_uint256_fromStack": {
"entryPoint": 8440,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_t_uint8_to_t_uint8_fromStack": {
"entryPoint": 8572,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"abi_encode_tuple_packed_t_bytes_calldata_ptr_t_address__to_t_bytes_memory_ptr_t_address__nonPadded_inplace_fromStack_reversed": {
"entryPoint": 10955,
"id": null,
"parameterSlots": 4,
"returnSlots": 1
},
"abi_encode_tuple_packed_t_bytes_memory_ptr__to_t_bytes_memory_ptr__nonPadded_inplace_fromStack_reversed": {
"entryPoint": 13303,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_tuple_t_address__to_t_address__fromStack_reversed": {
"entryPoint": 8719,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_tuple_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr__to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr__fromStack_reversed": {
"entryPoint": 9552,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed": {
"entryPoint": 8372,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed": {
"entryPoint": 8636,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_tuple_t_bytes32_t_address_t_address_t_uint256_t_uint256_t_uint256__to_t_bytes32_t_address_t_address_t_uint256_t_uint256_t_uint256__fromStack_reversed": {
"entryPoint": 11100,
"id": null,
"parameterSlots": 7,
"returnSlots": 1
},
"abi_encode_tuple_t_bytes32_t_bytes32_t_bytes32_t_uint256_t_address__to_t_bytes32_t_bytes32_t_bytes32_t_uint256_t_address__fromStack_reversed": {
"entryPoint": 12113,
"id": null,
"parameterSlots": 6,
"returnSlots": 1
},
"abi_encode_tuple_t_bytes32_t_uint8_t_bytes32_t_bytes32__to_t_bytes32_t_uint8_t_bytes32_t_bytes32__fromStack_reversed": {
"entryPoint": 13325,
"id": null,
"parameterSlots": 5,
"returnSlots": 1
},
"abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 8094,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_tuple_t_string_memory_ptr_t_string_memory_ptr__to_t_string_memory_ptr_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 13202,
"id": null,
"parameterSlots": 3,
"returnSlots": 1
},
"abi_encode_tuple_t_stringliteral_00043f6bf76368aa97c21698e9b9d4779e31902453daccf3525ddfb36e53e2be__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 13511,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_t_stringliteral_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 11941,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_t_stringliteral_149b126e7125232b4200af45303d04fba8b74653b1a295a6a561a528c33fefdd__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 12448,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_t_stringliteral_1669ff3ba3cdf64474e1193492d05b8434e29b0b495e60095eb5f5c8ec14ce77__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 13615,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_t_stringliteral_19fa12bcfa7d6a1607ff6d71275840261c73292c97fc8050f5d1b6b6df578e14__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 10254,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_t_stringliteral_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 11553,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_t_stringliteral_3b6607e091cba9325f958656d2b5e0622ab7dc0eac71a26ac788cb25bc19f4fe__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 11657,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_t_stringliteral_3e89525a63fb9c966b61cf8f5305156de8420bc773a2b60828a2f32c3c5797bd__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 11070,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_t_stringliteral_4107e8a8b9e94bf8ff83080ddec1c0bffe897ebc2241b89d44f66b3d274088b6__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 12083,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_t_stringliteral_520d1f787dbcafbbfc007fd2c4ecf3d2711ec587f3ee9a1215c0b646c3e530bd__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 13757,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_t_stringliteral_596712763af5ad819c1a1c8db05ac93e50918d28937626717ff5e1d919b4454a__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 10150,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_t_stringliteral_7acedc89dd3658da26d0488f7e55737f51bdbd8424532db0708cd962cbb1712b__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 10358,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_t_stringliteral_94ca1ab58dfda790a1782ffbb0c0a140ec51d4148dbeecc6c39e37b25ff4b124__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 11269,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_t_stringliteral_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 12306,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_t_stringliteral_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 11799,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_t_stringliteral_bfd83d10623a5529dfc6af3e2d36b3506e4ee9af9c8ff0477cf2b779ec460a88__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 10462,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_t_stringliteral_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 11411,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_t_stringliteral_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 13861,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_t_stringliteral_f8b476f7d28209d77d4a4ac1fe36b9f8259aa1bb6bddfa6e89de7e51615cf8a8__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 10655,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_t_stringliteral_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e__to_t_string_memory_ptr__fromStack_reversed": {
"entryPoint": 12552,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed": {
"entryPoint": 8455,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"abi_encode_tuple_t_uint8__to_t_uint8__fromStack_reversed": {
"entryPoint": 8587,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"access_calldata_tail_t_bytes_calldata_ptr": {
"entryPoint": 10742,
"id": null,
"parameterSlots": 2,
"returnSlots": 2
},
"allocate_memory": {
"entryPoint": 8846,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"allocate_unbounded": {
"entryPoint": 8126,
"id": null,
"parameterSlots": 0,
"returnSlots": 1
},
"array_allocation_size_t_string_memory_ptr": {
"entryPoint": 8872,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"array_dataslot_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr": {
"entryPoint": 9309,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"array_dataslot_t_string_storage": {
"entryPoint": 12582,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"array_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr": {
"entryPoint": 9283,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"array_length_t_bytes_memory_ptr": {
"entryPoint": 9324,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"array_length_t_string_memory_ptr": {
"entryPoint": 7982,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"array_nextElement_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr": {
"entryPoint": 9425,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"array_storeLengthForEncoding_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack": {
"entryPoint": 9293,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"array_storeLengthForEncoding_t_bytes_memory_ptr": {
"entryPoint": 9334,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack": {
"entryPoint": 10840,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"array_storeLengthForEncoding_t_string_memory_ptr_fromStack": {
"entryPoint": 7992,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"checked_add_t_uint256": {
"entryPoint": 10025,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"checked_sub_t_uint256": {
"entryPoint": 10492,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"clean_up_bytearray_end_slots_t_string_storage": {
"entryPoint": 12858,
"id": null,
"parameterSlots": 3,
"returnSlots": 0
},
"cleanup_t_address": {
"entryPoint": 8174,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_bool": {
"entryPoint": 8346,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_bytes32": {
"entryPoint": 8612,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_uint160": {
"entryPoint": 8143,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_uint256": {
"entryPoint": 8233,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"cleanup_t_uint8": {
"entryPoint": 8560,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"clear_storage_range_t_bytes1": {
"entryPoint": 12824,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"convert_t_uint256_to_t_uint256": {
"entryPoint": 12717,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage": {
"entryPoint": 12995,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"copy_calldata_to_memory_with_cleanup": {
"entryPoint": 8920,
"id": null,
"parameterSlots": 3,
"returnSlots": 0
},
"copy_memory_to_memory_with_cleanup": {
"entryPoint": 8008,
"id": null,
"parameterSlots": 3,
"returnSlots": 0
},
"divide_by_32_ceil": {
"entryPoint": 12600,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"extract_byte_array_length": {
"entryPoint": 9932,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"extract_used_part_and_set_length_of_short_byte_array": {
"entryPoint": 12968,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"finalize_allocation": {
"entryPoint": 8797,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"identity": {
"entryPoint": 12708,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"leftAlign_t_address": {
"entryPoint": 10915,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"leftAlign_t_uint160": {
"entryPoint": 10898,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"mask_bytes_dynamic": {
"entryPoint": 12940,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"panic_error_0x11": {
"entryPoint": 9980,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"panic_error_0x21": {
"entryPoint": 13392,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"panic_error_0x22": {
"entryPoint": 9887,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"panic_error_0x32": {
"entryPoint": 10685,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"panic_error_0x41": {
"entryPoint": 8752,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"prepare_store_t_uint256": {
"entryPoint": 12750,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490": {
"entryPoint": 9115,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d": {
"entryPoint": 8744,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_1e55d03107e9c4f1b5e21c76a16fba166a461117ab153bcce65e6a4ea8e5fc8a": {
"entryPoint": 10734,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_356d538aaf70fba12156cc466564b792649f8f3befb07b071c91142253e175ad": {
"entryPoint": 10730,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef": {
"entryPoint": 9119,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_977805620ff29572292dee35f70b0f3f3f73d3fdd0e9f4d7a901c2e43ab18a2e": {
"entryPoint": 10738,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae": {
"entryPoint": 8748,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": {
"entryPoint": 8139,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": {
"entryPoint": 8135,
"id": null,
"parameterSlots": 0,
"returnSlots": 0
},
"round_up_to_mul_of_32": {
"entryPoint": 8022,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"shift_left_96": {
"entryPoint": 10886,
"id": null,
"parameterSlots": 1,
"returnSlots": 1
},
"shift_left_dynamic": {
"entryPoint": 12615,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"shift_right_unsigned_dynamic": {
"entryPoint": 12928,
"id": null,
"parameterSlots": 2,
"returnSlots": 1
},
"storage_set_to_zero_t_uint256": {
"entryPoint": 12800,
"id": null,
"parameterSlots": 2,
"returnSlots": 0
},
"store_literal_in_memory_00043f6bf76368aa97c21698e9b9d4779e31902453daccf3525ddfb36e53e2be": {
"entryPoint": 13437,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"store_literal_in_memory_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f": {
"entryPoint": 11829,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"store_literal_in_memory_149b126e7125232b4200af45303d04fba8b74653b1a295a6a561a528c33fefdd": {
"entryPoint": 12336,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"store_literal_in_memory_1669ff3ba3cdf64474e1193492d05b8434e29b0b495e60095eb5f5c8ec14ce77": {
"entryPoint": 13541,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"store_literal_in_memory_19fa12bcfa7d6a1607ff6d71275840261c73292c97fc8050f5d1b6b6df578e14": {
"entryPoint": 10180,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"store_literal_in_memory_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029": {
"entryPoint": 11441,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"store_literal_in_memory_3b6607e091cba9325f958656d2b5e0622ab7dc0eac71a26ac788cb25bc19f4fe": {
"entryPoint": 11583,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"store_literal_in_memory_3e89525a63fb9c966b61cf8f5305156de8420bc773a2b60828a2f32c3c5797bd": {
"entryPoint": 10996,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"store_literal_in_memory_4107e8a8b9e94bf8ff83080ddec1c0bffe897ebc2241b89d44f66b3d274088b6": {
"entryPoint": 11971,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"store_literal_in_memory_520d1f787dbcafbbfc007fd2c4ecf3d2711ec587f3ee9a1215c0b646c3e530bd": {
"entryPoint": 13645,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"store_literal_in_memory_596712763af5ad819c1a1c8db05ac93e50918d28937626717ff5e1d919b4454a": {
"entryPoint": 10076,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"store_literal_in_memory_7acedc89dd3658da26d0488f7e55737f51bdbd8424532db0708cd962cbb1712b": {
"entryPoint": 10284,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"store_literal_in_memory_94ca1ab58dfda790a1782ffbb0c0a140ec51d4148dbeecc6c39e37b25ff4b124": {
"entryPoint": 11195,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"store_literal_in_memory_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f": {
"entryPoint": 12194,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"store_literal_in_memory_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea": {
"entryPoint": 11687,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"store_literal_in_memory_bfd83d10623a5529dfc6af3e2d36b3506e4ee9af9c8ff0477cf2b779ec460a88": {
"entryPoint": 10388,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"store_literal_in_memory_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208": {
"entryPoint": 11299,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"store_literal_in_memory_cc2e4e38850b7c0a3e942cfed89b71c77302df25bcb2ec297a0c4ff9ff6b90ad": {
"entryPoint": 13787,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"store_literal_in_memory_f8b476f7d28209d77d4a4ac1fe36b9f8259aa1bb6bddfa6e89de7e51615cf8a8": {
"entryPoint": 10543,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"store_literal_in_memory_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e": {
"entryPoint": 12478,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"update_byte_slice_dynamic32": {
"entryPoint": 12627,
"id": null,
"parameterSlots": 3,
"returnSlots": 1
},
"update_storage_value_t_uint256_to_t_uint256": {
"entryPoint": 12759,
"id": null,
"parameterSlots": 3,
"returnSlots": 0
},
"validator_revert_t_address": {
"entryPoint": 8191,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"validator_revert_t_bytes32": {
"entryPoint": 9626,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"validator_revert_t_uint256": {
"entryPoint": 8242,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"validator_revert_t_uint8": {
"entryPoint": 9584,
"id": null,
"parameterSlots": 1,
"returnSlots": 0
},
"zero_value_for_split_t_uint256": {
"entryPoint": 12796,
"id": null,
"parameterSlots": 0,
"returnSlots": 1
}
},
"generatedSources": [
{
"ast": {
"nativeSrc": "0:46853:20",
"nodeType": "YulBlock",
"src": "0:46853:20",
"statements": [
{
"body": {
"nativeSrc": "66:40:20",
"nodeType": "YulBlock",
"src": "66:40:20",
"statements": [
{
"nativeSrc": "77:22:20",
"nodeType": "YulAssignment",
"src": "77:22:20",
"value": {
"arguments": [
{
"name": "value",
"nativeSrc": "93:5:20",
"nodeType": "YulIdentifier",
"src": "93:5:20"
}
],
"functionName": {
"name": "mload",
"nativeSrc": "87:5:20",
"nodeType": "YulIdentifier",
"src": "87:5:20"
},
"nativeSrc": "87:12:20",
"nodeType": "YulFunctionCall",
"src": "87:12:20"
},
"variableNames": [
{
"name": "length",
"nativeSrc": "77:6:20",
"nodeType": "YulIdentifier",
"src": "77:6:20"
}
]
}
]
},
"name": "array_length_t_string_memory_ptr",
"nativeSrc": "7:99:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "49:5:20",
"nodeType": "YulTypedName",
"src": "49:5:20",
"type": ""
}
],
"returnVariables": [
{
"name": "length",
"nativeSrc": "59:6:20",
"nodeType": "YulTypedName",
"src": "59:6:20",
"type": ""
}
],
"src": "7:99:20"
},
{
"body": {
"nativeSrc": "208:73:20",
"nodeType": "YulBlock",
"src": "208:73:20",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "225:3:20",
"nodeType": "YulIdentifier",
"src": "225:3:20"
},
{
"name": "length",
"nativeSrc": "230:6:20",
"nodeType": "YulIdentifier",
"src": "230:6:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "218:6:20",
"nodeType": "YulIdentifier",
"src": "218:6:20"
},
"nativeSrc": "218:19:20",
"nodeType": "YulFunctionCall",
"src": "218:19:20"
},
"nativeSrc": "218:19:20",
"nodeType": "YulExpressionStatement",
"src": "218:19:20"
},
{
"nativeSrc": "246:29:20",
"nodeType": "YulAssignment",
"src": "246:29:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "265:3:20",
"nodeType": "YulIdentifier",
"src": "265:3:20"
},
{
"kind": "number",
"nativeSrc": "270:4:20",
"nodeType": "YulLiteral",
"src": "270:4:20",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "261:3:20",
"nodeType": "YulIdentifier",
"src": "261:3:20"
},
"nativeSrc": "261:14:20",
"nodeType": "YulFunctionCall",
"src": "261:14:20"
},
"variableNames": [
{
"name": "updated_pos",
"nativeSrc": "246:11:20",
"nodeType": "YulIdentifier",
"src": "246:11:20"
}
]
}
]
},
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nativeSrc": "112:169:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nativeSrc": "180:3:20",
"nodeType": "YulTypedName",
"src": "180:3:20",
"type": ""
},
{
"name": "length",
"nativeSrc": "185:6:20",
"nodeType": "YulTypedName",
"src": "185:6:20",
"type": ""
}
],
"returnVariables": [
{
"name": "updated_pos",
"nativeSrc": "196:11:20",
"nodeType": "YulTypedName",
"src": "196:11:20",
"type": ""
}
],
"src": "112:169:20"
},
{
"body": {
"nativeSrc": "349:77:20",
"nodeType": "YulBlock",
"src": "349:77:20",
"statements": [
{
"expression": {
"arguments": [
{
"name": "dst",
"nativeSrc": "366:3:20",
"nodeType": "YulIdentifier",
"src": "366:3:20"
},
{
"name": "src",
"nativeSrc": "371:3:20",
"nodeType": "YulIdentifier",
"src": "371:3:20"
},
{
"name": "length",
"nativeSrc": "376:6:20",
"nodeType": "YulIdentifier",
"src": "376:6:20"
}
],
"functionName": {
"name": "mcopy",
"nativeSrc": "360:5:20",
"nodeType": "YulIdentifier",
"src": "360:5:20"
},
"nativeSrc": "360:23:20",
"nodeType": "YulFunctionCall",
"src": "360:23:20"
},
"nativeSrc": "360:23:20",
"nodeType": "YulExpressionStatement",
"src": "360:23:20"
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "dst",
"nativeSrc": "403:3:20",
"nodeType": "YulIdentifier",
"src": "403:3:20"
},
{
"name": "length",
"nativeSrc": "408:6:20",
"nodeType": "YulIdentifier",
"src": "408:6:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "399:3:20",
"nodeType": "YulIdentifier",
"src": "399:3:20"
},
"nativeSrc": "399:16:20",
"nodeType": "YulFunctionCall",
"src": "399:16:20"
},
{
"kind": "number",
"nativeSrc": "417:1:20",
"nodeType": "YulLiteral",
"src": "417:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "392:6:20",
"nodeType": "YulIdentifier",
"src": "392:6:20"
},
"nativeSrc": "392:27:20",
"nodeType": "YulFunctionCall",
"src": "392:27:20"
},
"nativeSrc": "392:27:20",
"nodeType": "YulExpressionStatement",
"src": "392:27:20"
}
]
},
"name": "copy_memory_to_memory_with_cleanup",
"nativeSrc": "287:139:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "src",
"nativeSrc": "331:3:20",
"nodeType": "YulTypedName",
"src": "331:3:20",
"type": ""
},
{
"name": "dst",
"nativeSrc": "336:3:20",
"nodeType": "YulTypedName",
"src": "336:3:20",
"type": ""
},
{
"name": "length",
"nativeSrc": "341:6:20",
"nodeType": "YulTypedName",
"src": "341:6:20",
"type": ""
}
],
"src": "287:139:20"
},
{
"body": {
"nativeSrc": "480:54:20",
"nodeType": "YulBlock",
"src": "480:54:20",
"statements": [
{
"nativeSrc": "490:38:20",
"nodeType": "YulAssignment",
"src": "490:38:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nativeSrc": "508:5:20",
"nodeType": "YulIdentifier",
"src": "508:5:20"
},
{
"kind": "number",
"nativeSrc": "515:2:20",
"nodeType": "YulLiteral",
"src": "515:2:20",
"type": "",
"value": "31"
}
],
"functionName": {
"name": "add",
"nativeSrc": "504:3:20",
"nodeType": "YulIdentifier",
"src": "504:3:20"
},
"nativeSrc": "504:14:20",
"nodeType": "YulFunctionCall",
"src": "504:14:20"
},
{
"arguments": [
{
"kind": "number",
"nativeSrc": "524:2:20",
"nodeType": "YulLiteral",
"src": "524:2:20",
"type": "",
"value": "31"
}
],
"functionName": {
"name": "not",
"nativeSrc": "520:3:20",
"nodeType": "YulIdentifier",
"src": "520:3:20"
},
"nativeSrc": "520:7:20",
"nodeType": "YulFunctionCall",
"src": "520:7:20"
}
],
"functionName": {
"name": "and",
"nativeSrc": "500:3:20",
"nodeType": "YulIdentifier",
"src": "500:3:20"
},
"nativeSrc": "500:28:20",
"nodeType": "YulFunctionCall",
"src": "500:28:20"
},
"variableNames": [
{
"name": "result",
"nativeSrc": "490:6:20",
"nodeType": "YulIdentifier",
"src": "490:6:20"
}
]
}
]
},
"name": "round_up_to_mul_of_32",
"nativeSrc": "432:102:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "463:5:20",
"nodeType": "YulTypedName",
"src": "463:5:20",
"type": ""
}
],
"returnVariables": [
{
"name": "result",
"nativeSrc": "473:6:20",
"nodeType": "YulTypedName",
"src": "473:6:20",
"type": ""
}
],
"src": "432:102:20"
},
{
"body": {
"nativeSrc": "632:285:20",
"nodeType": "YulBlock",
"src": "632:285:20",
"statements": [
{
"nativeSrc": "642:53:20",
"nodeType": "YulVariableDeclaration",
"src": "642:53:20",
"value": {
"arguments": [
{
"name": "value",
"nativeSrc": "689:5:20",
"nodeType": "YulIdentifier",
"src": "689:5:20"
}
],
"functionName": {
"name": "array_length_t_string_memory_ptr",
"nativeSrc": "656:32:20",
"nodeType": "YulIdentifier",
"src": "656:32:20"
},
"nativeSrc": "656:39:20",
"nodeType": "YulFunctionCall",
"src": "656:39:20"
},
"variables": [
{
"name": "length",
"nativeSrc": "646:6:20",
"nodeType": "YulTypedName",
"src": "646:6:20",
"type": ""
}
]
},
{
"nativeSrc": "704:78:20",
"nodeType": "YulAssignment",
"src": "704:78:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "770:3:20",
"nodeType": "YulIdentifier",
"src": "770:3:20"
},
{
"name": "length",
"nativeSrc": "775:6:20",
"nodeType": "YulIdentifier",
"src": "775:6:20"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nativeSrc": "711:58:20",
"nodeType": "YulIdentifier",
"src": "711:58:20"
},
"nativeSrc": "711:71:20",
"nodeType": "YulFunctionCall",
"src": "711:71:20"
},
"variableNames": [
{
"name": "pos",
"nativeSrc": "704:3:20",
"nodeType": "YulIdentifier",
"src": "704:3:20"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nativeSrc": "830:5:20",
"nodeType": "YulIdentifier",
"src": "830:5:20"
},
{
"kind": "number",
"nativeSrc": "837:4:20",
"nodeType": "YulLiteral",
"src": "837:4:20",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "826:3:20",
"nodeType": "YulIdentifier",
"src": "826:3:20"
},
"nativeSrc": "826:16:20",
"nodeType": "YulFunctionCall",
"src": "826:16:20"
},
{
"name": "pos",
"nativeSrc": "844:3:20",
"nodeType": "YulIdentifier",
"src": "844:3:20"
},
{
"name": "length",
"nativeSrc": "849:6:20",
"nodeType": "YulIdentifier",
"src": "849:6:20"
}
],
"functionName": {
"name": "copy_memory_to_memory_with_cleanup",
"nativeSrc": "791:34:20",
"nodeType": "YulIdentifier",
"src": "791:34:20"
},
"nativeSrc": "791:65:20",
"nodeType": "YulFunctionCall",
"src": "791:65:20"
},
"nativeSrc": "791:65:20",
"nodeType": "YulExpressionStatement",
"src": "791:65:20"
},
{
"nativeSrc": "865:46:20",
"nodeType": "YulAssignment",
"src": "865:46:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "876:3:20",
"nodeType": "YulIdentifier",
"src": "876:3:20"
},
{
"arguments": [
{
"name": "length",
"nativeSrc": "903:6:20",
"nodeType": "YulIdentifier",
"src": "903:6:20"
}
],
"functionName": {
"name": "round_up_to_mul_of_32",
"nativeSrc": "881:21:20",
"nodeType": "YulIdentifier",
"src": "881:21:20"
},
"nativeSrc": "881:29:20",
"nodeType": "YulFunctionCall",
"src": "881:29:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "872:3:20",
"nodeType": "YulIdentifier",
"src": "872:3:20"
},
"nativeSrc": "872:39:20",
"nodeType": "YulFunctionCall",
"src": "872:39:20"
},
"variableNames": [
{
"name": "end",
"nativeSrc": "865:3:20",
"nodeType": "YulIdentifier",
"src": "865:3:20"
}
]
}
]
},
"name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack",
"nativeSrc": "540:377:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "613:5:20",
"nodeType": "YulTypedName",
"src": "613:5:20",
"type": ""
},
{
"name": "pos",
"nativeSrc": "620:3:20",
"nodeType": "YulTypedName",
"src": "620:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nativeSrc": "628:3:20",
"nodeType": "YulTypedName",
"src": "628:3:20",
"type": ""
}
],
"src": "540:377:20"
},
{
"body": {
"nativeSrc": "1041:195:20",
"nodeType": "YulBlock",
"src": "1041:195:20",
"statements": [
{
"nativeSrc": "1051:26:20",
"nodeType": "YulAssignment",
"src": "1051:26:20",
"value": {
"arguments": [
{
"name": "headStart",
"nativeSrc": "1063:9:20",
"nodeType": "YulIdentifier",
"src": "1063:9:20"
},
{
"kind": "number",
"nativeSrc": "1074:2:20",
"nodeType": "YulLiteral",
"src": "1074:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "1059:3:20",
"nodeType": "YulIdentifier",
"src": "1059:3:20"
},
"nativeSrc": "1059:18:20",
"nodeType": "YulFunctionCall",
"src": "1059:18:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "1051:4:20",
"nodeType": "YulIdentifier",
"src": "1051:4:20"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "1098:9:20",
"nodeType": "YulIdentifier",
"src": "1098:9:20"
},
{
"kind": "number",
"nativeSrc": "1109:1:20",
"nodeType": "YulLiteral",
"src": "1109:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "1094:3:20",
"nodeType": "YulIdentifier",
"src": "1094:3:20"
},
"nativeSrc": "1094:17:20",
"nodeType": "YulFunctionCall",
"src": "1094:17:20"
},
{
"arguments": [
{
"name": "tail",
"nativeSrc": "1117:4:20",
"nodeType": "YulIdentifier",
"src": "1117:4:20"
},
{
"name": "headStart",
"nativeSrc": "1123:9:20",
"nodeType": "YulIdentifier",
"src": "1123:9:20"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "1113:3:20",
"nodeType": "YulIdentifier",
"src": "1113:3:20"
},
"nativeSrc": "1113:20:20",
"nodeType": "YulFunctionCall",
"src": "1113:20:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "1087:6:20",
"nodeType": "YulIdentifier",
"src": "1087:6:20"
},
"nativeSrc": "1087:47:20",
"nodeType": "YulFunctionCall",
"src": "1087:47:20"
},
"nativeSrc": "1087:47:20",
"nodeType": "YulExpressionStatement",
"src": "1087:47:20"
},
{
"nativeSrc": "1143:86:20",
"nodeType": "YulAssignment",
"src": "1143:86:20",
"value": {
"arguments": [
{
"name": "value0",
"nativeSrc": "1215:6:20",
"nodeType": "YulIdentifier",
"src": "1215:6:20"
},
{
"name": "tail",
"nativeSrc": "1224:4:20",
"nodeType": "YulIdentifier",
"src": "1224:4:20"
}
],
"functionName": {
"name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr_fromStack",
"nativeSrc": "1151:63:20",
"nodeType": "YulIdentifier",
"src": "1151:63:20"
},
"nativeSrc": "1151:78:20",
"nodeType": "YulFunctionCall",
"src": "1151:78:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "1143:4:20",
"nodeType": "YulIdentifier",
"src": "1143:4:20"
}
]
}
]
},
"name": "abi_encode_tuple_t_string_memory_ptr__to_t_string_memory_ptr__fromStack_reversed",
"nativeSrc": "923:313:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "1013:9:20",
"nodeType": "YulTypedName",
"src": "1013:9:20",
"type": ""
},
{
"name": "value0",
"nativeSrc": "1025:6:20",
"nodeType": "YulTypedName",
"src": "1025:6:20",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nativeSrc": "1036:4:20",
"nodeType": "YulTypedName",
"src": "1036:4:20",
"type": ""
}
],
"src": "923:313:20"
},
{
"body": {
"nativeSrc": "1282:35:20",
"nodeType": "YulBlock",
"src": "1282:35:20",
"statements": [
{
"nativeSrc": "1292:19:20",
"nodeType": "YulAssignment",
"src": "1292:19:20",
"value": {
"arguments": [
{
"kind": "number",
"nativeSrc": "1308:2:20",
"nodeType": "YulLiteral",
"src": "1308:2:20",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "mload",
"nativeSrc": "1302:5:20",
"nodeType": "YulIdentifier",
"src": "1302:5:20"
},
"nativeSrc": "1302:9:20",
"nodeType": "YulFunctionCall",
"src": "1302:9:20"
},
"variableNames": [
{
"name": "memPtr",
"nativeSrc": "1292:6:20",
"nodeType": "YulIdentifier",
"src": "1292:6:20"
}
]
}
]
},
"name": "allocate_unbounded",
"nativeSrc": "1242:75:20",
"nodeType": "YulFunctionDefinition",
"returnVariables": [
{
"name": "memPtr",
"nativeSrc": "1275:6:20",
"nodeType": "YulTypedName",
"src": "1275:6:20",
"type": ""
}
],
"src": "1242:75:20"
},
{
"body": {
"nativeSrc": "1412:28:20",
"nodeType": "YulBlock",
"src": "1412:28:20",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "1429:1:20",
"nodeType": "YulLiteral",
"src": "1429:1:20",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "1432:1:20",
"nodeType": "YulLiteral",
"src": "1432:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "1422:6:20",
"nodeType": "YulIdentifier",
"src": "1422:6:20"
},
"nativeSrc": "1422:12:20",
"nodeType": "YulFunctionCall",
"src": "1422:12:20"
},
"nativeSrc": "1422:12:20",
"nodeType": "YulExpressionStatement",
"src": "1422:12:20"
}
]
},
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nativeSrc": "1323:117:20",
"nodeType": "YulFunctionDefinition",
"src": "1323:117:20"
},
{
"body": {
"nativeSrc": "1535:28:20",
"nodeType": "YulBlock",
"src": "1535:28:20",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "1552:1:20",
"nodeType": "YulLiteral",
"src": "1552:1:20",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "1555:1:20",
"nodeType": "YulLiteral",
"src": "1555:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "1545:6:20",
"nodeType": "YulIdentifier",
"src": "1545:6:20"
},
"nativeSrc": "1545:12:20",
"nodeType": "YulFunctionCall",
"src": "1545:12:20"
},
"nativeSrc": "1545:12:20",
"nodeType": "YulExpressionStatement",
"src": "1545:12:20"
}
]
},
"name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db",
"nativeSrc": "1446:117:20",
"nodeType": "YulFunctionDefinition",
"src": "1446:117:20"
},
{
"body": {
"nativeSrc": "1614:81:20",
"nodeType": "YulBlock",
"src": "1614:81:20",
"statements": [
{
"nativeSrc": "1624:65:20",
"nodeType": "YulAssignment",
"src": "1624:65:20",
"value": {
"arguments": [
{
"name": "value",
"nativeSrc": "1639:5:20",
"nodeType": "YulIdentifier",
"src": "1639:5:20"
},
{
"kind": "number",
"nativeSrc": "1646:42:20",
"nodeType": "YulLiteral",
"src": "1646:42:20",
"type": "",
"value": "0xffffffffffffffffffffffffffffffffffffffff"
}
],
"functionName": {
"name": "and",
"nativeSrc": "1635:3:20",
"nodeType": "YulIdentifier",
"src": "1635:3:20"
},
"nativeSrc": "1635:54:20",
"nodeType": "YulFunctionCall",
"src": "1635:54:20"
},
"variableNames": [
{
"name": "cleaned",
"nativeSrc": "1624:7:20",
"nodeType": "YulIdentifier",
"src": "1624:7:20"
}
]
}
]
},
"name": "cleanup_t_uint160",
"nativeSrc": "1569:126:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "1596:5:20",
"nodeType": "YulTypedName",
"src": "1596:5:20",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nativeSrc": "1606:7:20",
"nodeType": "YulTypedName",
"src": "1606:7:20",
"type": ""
}
],
"src": "1569:126:20"
},
{
"body": {
"nativeSrc": "1746:51:20",
"nodeType": "YulBlock",
"src": "1746:51:20",
"statements": [
{
"nativeSrc": "1756:35:20",
"nodeType": "YulAssignment",
"src": "1756:35:20",
"value": {
"arguments": [
{
"name": "value",
"nativeSrc": "1785:5:20",
"nodeType": "YulIdentifier",
"src": "1785:5:20"
}
],
"functionName": {
"name": "cleanup_t_uint160",
"nativeSrc": "1767:17:20",
"nodeType": "YulIdentifier",
"src": "1767:17:20"
},
"nativeSrc": "1767:24:20",
"nodeType": "YulFunctionCall",
"src": "1767:24:20"
},
"variableNames": [
{
"name": "cleaned",
"nativeSrc": "1756:7:20",
"nodeType": "YulIdentifier",
"src": "1756:7:20"
}
]
}
]
},
"name": "cleanup_t_address",
"nativeSrc": "1701:96:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "1728:5:20",
"nodeType": "YulTypedName",
"src": "1728:5:20",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nativeSrc": "1738:7:20",
"nodeType": "YulTypedName",
"src": "1738:7:20",
"type": ""
}
],
"src": "1701:96:20"
},
{
"body": {
"nativeSrc": "1846:79:20",
"nodeType": "YulBlock",
"src": "1846:79:20",
"statements": [
{
"body": {
"nativeSrc": "1903:16:20",
"nodeType": "YulBlock",
"src": "1903:16:20",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "1912:1:20",
"nodeType": "YulLiteral",
"src": "1912:1:20",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "1915:1:20",
"nodeType": "YulLiteral",
"src": "1915:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "1905:6:20",
"nodeType": "YulIdentifier",
"src": "1905:6:20"
},
"nativeSrc": "1905:12:20",
"nodeType": "YulFunctionCall",
"src": "1905:12:20"
},
"nativeSrc": "1905:12:20",
"nodeType": "YulExpressionStatement",
"src": "1905:12:20"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nativeSrc": "1869:5:20",
"nodeType": "YulIdentifier",
"src": "1869:5:20"
},
{
"arguments": [
{
"name": "value",
"nativeSrc": "1894:5:20",
"nodeType": "YulIdentifier",
"src": "1894:5:20"
}
],
"functionName": {
"name": "cleanup_t_address",
"nativeSrc": "1876:17:20",
"nodeType": "YulIdentifier",
"src": "1876:17:20"
},
"nativeSrc": "1876:24:20",
"nodeType": "YulFunctionCall",
"src": "1876:24:20"
}
],
"functionName": {
"name": "eq",
"nativeSrc": "1866:2:20",
"nodeType": "YulIdentifier",
"src": "1866:2:20"
},
"nativeSrc": "1866:35:20",
"nodeType": "YulFunctionCall",
"src": "1866:35:20"
}
],
"functionName": {
"name": "iszero",
"nativeSrc": "1859:6:20",
"nodeType": "YulIdentifier",
"src": "1859:6:20"
},
"nativeSrc": "1859:43:20",
"nodeType": "YulFunctionCall",
"src": "1859:43:20"
},
"nativeSrc": "1856:63:20",
"nodeType": "YulIf",
"src": "1856:63:20"
}
]
},
"name": "validator_revert_t_address",
"nativeSrc": "1803:122:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "1839:5:20",
"nodeType": "YulTypedName",
"src": "1839:5:20",
"type": ""
}
],
"src": "1803:122:20"
},
{
"body": {
"nativeSrc": "1983:87:20",
"nodeType": "YulBlock",
"src": "1983:87:20",
"statements": [
{
"nativeSrc": "1993:29:20",
"nodeType": "YulAssignment",
"src": "1993:29:20",
"value": {
"arguments": [
{
"name": "offset",
"nativeSrc": "2015:6:20",
"nodeType": "YulIdentifier",
"src": "2015:6:20"
}
],
"functionName": {
"name": "calldataload",
"nativeSrc": "2002:12:20",
"nodeType": "YulIdentifier",
"src": "2002:12:20"
},
"nativeSrc": "2002:20:20",
"nodeType": "YulFunctionCall",
"src": "2002:20:20"
},
"variableNames": [
{
"name": "value",
"nativeSrc": "1993:5:20",
"nodeType": "YulIdentifier",
"src": "1993:5:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value",
"nativeSrc": "2058:5:20",
"nodeType": "YulIdentifier",
"src": "2058:5:20"
}
],
"functionName": {
"name": "validator_revert_t_address",
"nativeSrc": "2031:26:20",
"nodeType": "YulIdentifier",
"src": "2031:26:20"
},
"nativeSrc": "2031:33:20",
"nodeType": "YulFunctionCall",
"src": "2031:33:20"
},
"nativeSrc": "2031:33:20",
"nodeType": "YulExpressionStatement",
"src": "2031:33:20"
}
]
},
"name": "abi_decode_t_address",
"nativeSrc": "1931:139:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nativeSrc": "1961:6:20",
"nodeType": "YulTypedName",
"src": "1961:6:20",
"type": ""
},
{
"name": "end",
"nativeSrc": "1969:3:20",
"nodeType": "YulTypedName",
"src": "1969:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "value",
"nativeSrc": "1977:5:20",
"nodeType": "YulTypedName",
"src": "1977:5:20",
"type": ""
}
],
"src": "1931:139:20"
},
{
"body": {
"nativeSrc": "2121:32:20",
"nodeType": "YulBlock",
"src": "2121:32:20",
"statements": [
{
"nativeSrc": "2131:16:20",
"nodeType": "YulAssignment",
"src": "2131:16:20",
"value": {
"name": "value",
"nativeSrc": "2142:5:20",
"nodeType": "YulIdentifier",
"src": "2142:5:20"
},
"variableNames": [
{
"name": "cleaned",
"nativeSrc": "2131:7:20",
"nodeType": "YulIdentifier",
"src": "2131:7:20"
}
]
}
]
},
"name": "cleanup_t_uint256",
"nativeSrc": "2076:77:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "2103:5:20",
"nodeType": "YulTypedName",
"src": "2103:5:20",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nativeSrc": "2113:7:20",
"nodeType": "YulTypedName",
"src": "2113:7:20",
"type": ""
}
],
"src": "2076:77:20"
},
{
"body": {
"nativeSrc": "2202:79:20",
"nodeType": "YulBlock",
"src": "2202:79:20",
"statements": [
{
"body": {
"nativeSrc": "2259:16:20",
"nodeType": "YulBlock",
"src": "2259:16:20",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "2268:1:20",
"nodeType": "YulLiteral",
"src": "2268:1:20",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "2271:1:20",
"nodeType": "YulLiteral",
"src": "2271:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "2261:6:20",
"nodeType": "YulIdentifier",
"src": "2261:6:20"
},
"nativeSrc": "2261:12:20",
"nodeType": "YulFunctionCall",
"src": "2261:12:20"
},
"nativeSrc": "2261:12:20",
"nodeType": "YulExpressionStatement",
"src": "2261:12:20"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nativeSrc": "2225:5:20",
"nodeType": "YulIdentifier",
"src": "2225:5:20"
},
{
"arguments": [
{
"name": "value",
"nativeSrc": "2250:5:20",
"nodeType": "YulIdentifier",
"src": "2250:5:20"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nativeSrc": "2232:17:20",
"nodeType": "YulIdentifier",
"src": "2232:17:20"
},
"nativeSrc": "2232:24:20",
"nodeType": "YulFunctionCall",
"src": "2232:24:20"
}
],
"functionName": {
"name": "eq",
"nativeSrc": "2222:2:20",
"nodeType": "YulIdentifier",
"src": "2222:2:20"
},
"nativeSrc": "2222:35:20",
"nodeType": "YulFunctionCall",
"src": "2222:35:20"
}
],
"functionName": {
"name": "iszero",
"nativeSrc": "2215:6:20",
"nodeType": "YulIdentifier",
"src": "2215:6:20"
},
"nativeSrc": "2215:43:20",
"nodeType": "YulFunctionCall",
"src": "2215:43:20"
},
"nativeSrc": "2212:63:20",
"nodeType": "YulIf",
"src": "2212:63:20"
}
]
},
"name": "validator_revert_t_uint256",
"nativeSrc": "2159:122:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "2195:5:20",
"nodeType": "YulTypedName",
"src": "2195:5:20",
"type": ""
}
],
"src": "2159:122:20"
},
{
"body": {
"nativeSrc": "2339:87:20",
"nodeType": "YulBlock",
"src": "2339:87:20",
"statements": [
{
"nativeSrc": "2349:29:20",
"nodeType": "YulAssignment",
"src": "2349:29:20",
"value": {
"arguments": [
{
"name": "offset",
"nativeSrc": "2371:6:20",
"nodeType": "YulIdentifier",
"src": "2371:6:20"
}
],
"functionName": {
"name": "calldataload",
"nativeSrc": "2358:12:20",
"nodeType": "YulIdentifier",
"src": "2358:12:20"
},
"nativeSrc": "2358:20:20",
"nodeType": "YulFunctionCall",
"src": "2358:20:20"
},
"variableNames": [
{
"name": "value",
"nativeSrc": "2349:5:20",
"nodeType": "YulIdentifier",
"src": "2349:5:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value",
"nativeSrc": "2414:5:20",
"nodeType": "YulIdentifier",
"src": "2414:5:20"
}
],
"functionName": {
"name": "validator_revert_t_uint256",
"nativeSrc": "2387:26:20",
"nodeType": "YulIdentifier",
"src": "2387:26:20"
},
"nativeSrc": "2387:33:20",
"nodeType": "YulFunctionCall",
"src": "2387:33:20"
},
"nativeSrc": "2387:33:20",
"nodeType": "YulExpressionStatement",
"src": "2387:33:20"
}
]
},
"name": "abi_decode_t_uint256",
"nativeSrc": "2287:139:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nativeSrc": "2317:6:20",
"nodeType": "YulTypedName",
"src": "2317:6:20",
"type": ""
},
{
"name": "end",
"nativeSrc": "2325:3:20",
"nodeType": "YulTypedName",
"src": "2325:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "value",
"nativeSrc": "2333:5:20",
"nodeType": "YulTypedName",
"src": "2333:5:20",
"type": ""
}
],
"src": "2287:139:20"
},
{
"body": {
"nativeSrc": "2515:391:20",
"nodeType": "YulBlock",
"src": "2515:391:20",
"statements": [
{
"body": {
"nativeSrc": "2561:83:20",
"nodeType": "YulBlock",
"src": "2561:83:20",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nativeSrc": "2563:77:20",
"nodeType": "YulIdentifier",
"src": "2563:77:20"
},
"nativeSrc": "2563:79:20",
"nodeType": "YulFunctionCall",
"src": "2563:79:20"
},
"nativeSrc": "2563:79:20",
"nodeType": "YulExpressionStatement",
"src": "2563:79:20"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "dataEnd",
"nativeSrc": "2536:7:20",
"nodeType": "YulIdentifier",
"src": "2536:7:20"
},
{
"name": "headStart",
"nativeSrc": "2545:9:20",
"nodeType": "YulIdentifier",
"src": "2545:9:20"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "2532:3:20",
"nodeType": "YulIdentifier",
"src": "2532:3:20"
},
"nativeSrc": "2532:23:20",
"nodeType": "YulFunctionCall",
"src": "2532:23:20"
},
{
"kind": "number",
"nativeSrc": "2557:2:20",
"nodeType": "YulLiteral",
"src": "2557:2:20",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "slt",
"nativeSrc": "2528:3:20",
"nodeType": "YulIdentifier",
"src": "2528:3:20"
},
"nativeSrc": "2528:32:20",
"nodeType": "YulFunctionCall",
"src": "2528:32:20"
},
"nativeSrc": "2525:119:20",
"nodeType": "YulIf",
"src": "2525:119:20"
},
{
"nativeSrc": "2654:117:20",
"nodeType": "YulBlock",
"src": "2654:117:20",
"statements": [
{
"nativeSrc": "2669:15:20",
"nodeType": "YulVariableDeclaration",
"src": "2669:15:20",
"value": {
"kind": "number",
"nativeSrc": "2683:1:20",
"nodeType": "YulLiteral",
"src": "2683:1:20",
"type": "",
"value": "0"
},
"variables": [
{
"name": "offset",
"nativeSrc": "2673:6:20",
"nodeType": "YulTypedName",
"src": "2673:6:20",
"type": ""
}
]
},
{
"nativeSrc": "2698:63:20",
"nodeType": "YulAssignment",
"src": "2698:63:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "2733:9:20",
"nodeType": "YulIdentifier",
"src": "2733:9:20"
},
{
"name": "offset",
"nativeSrc": "2744:6:20",
"nodeType": "YulIdentifier",
"src": "2744:6:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "2729:3:20",
"nodeType": "YulIdentifier",
"src": "2729:3:20"
},
"nativeSrc": "2729:22:20",
"nodeType": "YulFunctionCall",
"src": "2729:22:20"
},
{
"name": "dataEnd",
"nativeSrc": "2753:7:20",
"nodeType": "YulIdentifier",
"src": "2753:7:20"
}
],
"functionName": {
"name": "abi_decode_t_address",
"nativeSrc": "2708:20:20",
"nodeType": "YulIdentifier",
"src": "2708:20:20"
},
"nativeSrc": "2708:53:20",
"nodeType": "YulFunctionCall",
"src": "2708:53:20"
},
"variableNames": [
{
"name": "value0",
"nativeSrc": "2698:6:20",
"nodeType": "YulIdentifier",
"src": "2698:6:20"
}
]
}
]
},
{
"nativeSrc": "2781:118:20",
"nodeType": "YulBlock",
"src": "2781:118:20",
"statements": [
{
"nativeSrc": "2796:16:20",
"nodeType": "YulVariableDeclaration",
"src": "2796:16:20",
"value": {
"kind": "number",
"nativeSrc": "2810:2:20",
"nodeType": "YulLiteral",
"src": "2810:2:20",
"type": "",
"value": "32"
},
"variables": [
{
"name": "offset",
"nativeSrc": "2800:6:20",
"nodeType": "YulTypedName",
"src": "2800:6:20",
"type": ""
}
]
},
{
"nativeSrc": "2826:63:20",
"nodeType": "YulAssignment",
"src": "2826:63:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "2861:9:20",
"nodeType": "YulIdentifier",
"src": "2861:9:20"
},
{
"name": "offset",
"nativeSrc": "2872:6:20",
"nodeType": "YulIdentifier",
"src": "2872:6:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "2857:3:20",
"nodeType": "YulIdentifier",
"src": "2857:3:20"
},
"nativeSrc": "2857:22:20",
"nodeType": "YulFunctionCall",
"src": "2857:22:20"
},
{
"name": "dataEnd",
"nativeSrc": "2881:7:20",
"nodeType": "YulIdentifier",
"src": "2881:7:20"
}
],
"functionName": {
"name": "abi_decode_t_uint256",
"nativeSrc": "2836:20:20",
"nodeType": "YulIdentifier",
"src": "2836:20:20"
},
"nativeSrc": "2836:53:20",
"nodeType": "YulFunctionCall",
"src": "2836:53:20"
},
"variableNames": [
{
"name": "value1",
"nativeSrc": "2826:6:20",
"nodeType": "YulIdentifier",
"src": "2826:6:20"
}
]
}
]
}
]
},
"name": "abi_decode_tuple_t_addresst_uint256",
"nativeSrc": "2432:474:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "2477:9:20",
"nodeType": "YulTypedName",
"src": "2477:9:20",
"type": ""
},
{
"name": "dataEnd",
"nativeSrc": "2488:7:20",
"nodeType": "YulTypedName",
"src": "2488:7:20",
"type": ""
}
],
"returnVariables": [
{
"name": "value0",
"nativeSrc": "2500:6:20",
"nodeType": "YulTypedName",
"src": "2500:6:20",
"type": ""
},
{
"name": "value1",
"nativeSrc": "2508:6:20",
"nodeType": "YulTypedName",
"src": "2508:6:20",
"type": ""
}
],
"src": "2432:474:20"
},
{
"body": {
"nativeSrc": "2954:48:20",
"nodeType": "YulBlock",
"src": "2954:48:20",
"statements": [
{
"nativeSrc": "2964:32:20",
"nodeType": "YulAssignment",
"src": "2964:32:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nativeSrc": "2989:5:20",
"nodeType": "YulIdentifier",
"src": "2989:5:20"
}
],
"functionName": {
"name": "iszero",
"nativeSrc": "2982:6:20",
"nodeType": "YulIdentifier",
"src": "2982:6:20"
},
"nativeSrc": "2982:13:20",
"nodeType": "YulFunctionCall",
"src": "2982:13:20"
}
],
"functionName": {
"name": "iszero",
"nativeSrc": "2975:6:20",
"nodeType": "YulIdentifier",
"src": "2975:6:20"
},
"nativeSrc": "2975:21:20",
"nodeType": "YulFunctionCall",
"src": "2975:21:20"
},
"variableNames": [
{
"name": "cleaned",
"nativeSrc": "2964:7:20",
"nodeType": "YulIdentifier",
"src": "2964:7:20"
}
]
}
]
},
"name": "cleanup_t_bool",
"nativeSrc": "2912:90:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "2936:5:20",
"nodeType": "YulTypedName",
"src": "2936:5:20",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nativeSrc": "2946:7:20",
"nodeType": "YulTypedName",
"src": "2946:7:20",
"type": ""
}
],
"src": "2912:90:20"
},
{
"body": {
"nativeSrc": "3067:50:20",
"nodeType": "YulBlock",
"src": "3067:50:20",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "3084:3:20",
"nodeType": "YulIdentifier",
"src": "3084:3:20"
},
{
"arguments": [
{
"name": "value",
"nativeSrc": "3104:5:20",
"nodeType": "YulIdentifier",
"src": "3104:5:20"
}
],
"functionName": {
"name": "cleanup_t_bool",
"nativeSrc": "3089:14:20",
"nodeType": "YulIdentifier",
"src": "3089:14:20"
},
"nativeSrc": "3089:21:20",
"nodeType": "YulFunctionCall",
"src": "3089:21:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "3077:6:20",
"nodeType": "YulIdentifier",
"src": "3077:6:20"
},
"nativeSrc": "3077:34:20",
"nodeType": "YulFunctionCall",
"src": "3077:34:20"
},
"nativeSrc": "3077:34:20",
"nodeType": "YulExpressionStatement",
"src": "3077:34:20"
}
]
},
"name": "abi_encode_t_bool_to_t_bool_fromStack",
"nativeSrc": "3008:109:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "3055:5:20",
"nodeType": "YulTypedName",
"src": "3055:5:20",
"type": ""
},
{
"name": "pos",
"nativeSrc": "3062:3:20",
"nodeType": "YulTypedName",
"src": "3062:3:20",
"type": ""
}
],
"src": "3008:109:20"
},
{
"body": {
"nativeSrc": "3215:118:20",
"nodeType": "YulBlock",
"src": "3215:118:20",
"statements": [
{
"nativeSrc": "3225:26:20",
"nodeType": "YulAssignment",
"src": "3225:26:20",
"value": {
"arguments": [
{
"name": "headStart",
"nativeSrc": "3237:9:20",
"nodeType": "YulIdentifier",
"src": "3237:9:20"
},
{
"kind": "number",
"nativeSrc": "3248:2:20",
"nodeType": "YulLiteral",
"src": "3248:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "3233:3:20",
"nodeType": "YulIdentifier",
"src": "3233:3:20"
},
"nativeSrc": "3233:18:20",
"nodeType": "YulFunctionCall",
"src": "3233:18:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "3225:4:20",
"nodeType": "YulIdentifier",
"src": "3225:4:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value0",
"nativeSrc": "3299:6:20",
"nodeType": "YulIdentifier",
"src": "3299:6:20"
},
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "3312:9:20",
"nodeType": "YulIdentifier",
"src": "3312:9:20"
},
{
"kind": "number",
"nativeSrc": "3323:1:20",
"nodeType": "YulLiteral",
"src": "3323:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "3308:3:20",
"nodeType": "YulIdentifier",
"src": "3308:3:20"
},
"nativeSrc": "3308:17:20",
"nodeType": "YulFunctionCall",
"src": "3308:17:20"
}
],
"functionName": {
"name": "abi_encode_t_bool_to_t_bool_fromStack",
"nativeSrc": "3261:37:20",
"nodeType": "YulIdentifier",
"src": "3261:37:20"
},
"nativeSrc": "3261:65:20",
"nodeType": "YulFunctionCall",
"src": "3261:65:20"
},
"nativeSrc": "3261:65:20",
"nodeType": "YulExpressionStatement",
"src": "3261:65:20"
}
]
},
"name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed",
"nativeSrc": "3123:210:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "3187:9:20",
"nodeType": "YulTypedName",
"src": "3187:9:20",
"type": ""
},
{
"name": "value0",
"nativeSrc": "3199:6:20",
"nodeType": "YulTypedName",
"src": "3199:6:20",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nativeSrc": "3210:4:20",
"nodeType": "YulTypedName",
"src": "3210:4:20",
"type": ""
}
],
"src": "3123:210:20"
},
{
"body": {
"nativeSrc": "3405:263:20",
"nodeType": "YulBlock",
"src": "3405:263:20",
"statements": [
{
"body": {
"nativeSrc": "3451:83:20",
"nodeType": "YulBlock",
"src": "3451:83:20",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nativeSrc": "3453:77:20",
"nodeType": "YulIdentifier",
"src": "3453:77:20"
},
"nativeSrc": "3453:79:20",
"nodeType": "YulFunctionCall",
"src": "3453:79:20"
},
"nativeSrc": "3453:79:20",
"nodeType": "YulExpressionStatement",
"src": "3453:79:20"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "dataEnd",
"nativeSrc": "3426:7:20",
"nodeType": "YulIdentifier",
"src": "3426:7:20"
},
{
"name": "headStart",
"nativeSrc": "3435:9:20",
"nodeType": "YulIdentifier",
"src": "3435:9:20"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "3422:3:20",
"nodeType": "YulIdentifier",
"src": "3422:3:20"
},
"nativeSrc": "3422:23:20",
"nodeType": "YulFunctionCall",
"src": "3422:23:20"
},
{
"kind": "number",
"nativeSrc": "3447:2:20",
"nodeType": "YulLiteral",
"src": "3447:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "slt",
"nativeSrc": "3418:3:20",
"nodeType": "YulIdentifier",
"src": "3418:3:20"
},
"nativeSrc": "3418:32:20",
"nodeType": "YulFunctionCall",
"src": "3418:32:20"
},
"nativeSrc": "3415:119:20",
"nodeType": "YulIf",
"src": "3415:119:20"
},
{
"nativeSrc": "3544:117:20",
"nodeType": "YulBlock",
"src": "3544:117:20",
"statements": [
{
"nativeSrc": "3559:15:20",
"nodeType": "YulVariableDeclaration",
"src": "3559:15:20",
"value": {
"kind": "number",
"nativeSrc": "3573:1:20",
"nodeType": "YulLiteral",
"src": "3573:1:20",
"type": "",
"value": "0"
},
"variables": [
{
"name": "offset",
"nativeSrc": "3563:6:20",
"nodeType": "YulTypedName",
"src": "3563:6:20",
"type": ""
}
]
},
{
"nativeSrc": "3588:63:20",
"nodeType": "YulAssignment",
"src": "3588:63:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "3623:9:20",
"nodeType": "YulIdentifier",
"src": "3623:9:20"
},
{
"name": "offset",
"nativeSrc": "3634:6:20",
"nodeType": "YulIdentifier",
"src": "3634:6:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "3619:3:20",
"nodeType": "YulIdentifier",
"src": "3619:3:20"
},
"nativeSrc": "3619:22:20",
"nodeType": "YulFunctionCall",
"src": "3619:22:20"
},
{
"name": "dataEnd",
"nativeSrc": "3643:7:20",
"nodeType": "YulIdentifier",
"src": "3643:7:20"
}
],
"functionName": {
"name": "abi_decode_t_address",
"nativeSrc": "3598:20:20",
"nodeType": "YulIdentifier",
"src": "3598:20:20"
},
"nativeSrc": "3598:53:20",
"nodeType": "YulFunctionCall",
"src": "3598:53:20"
},
"variableNames": [
{
"name": "value0",
"nativeSrc": "3588:6:20",
"nodeType": "YulIdentifier",
"src": "3588:6:20"
}
]
}
]
}
]
},
"name": "abi_decode_tuple_t_address",
"nativeSrc": "3339:329:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "3375:9:20",
"nodeType": "YulTypedName",
"src": "3375:9:20",
"type": ""
},
{
"name": "dataEnd",
"nativeSrc": "3386:7:20",
"nodeType": "YulTypedName",
"src": "3386:7:20",
"type": ""
}
],
"returnVariables": [
{
"name": "value0",
"nativeSrc": "3398:6:20",
"nodeType": "YulTypedName",
"src": "3398:6:20",
"type": ""
}
],
"src": "3339:329:20"
},
{
"body": {
"nativeSrc": "3739:53:20",
"nodeType": "YulBlock",
"src": "3739:53:20",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "3756:3:20",
"nodeType": "YulIdentifier",
"src": "3756:3:20"
},
{
"arguments": [
{
"name": "value",
"nativeSrc": "3779:5:20",
"nodeType": "YulIdentifier",
"src": "3779:5:20"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nativeSrc": "3761:17:20",
"nodeType": "YulIdentifier",
"src": "3761:17:20"
},
"nativeSrc": "3761:24:20",
"nodeType": "YulFunctionCall",
"src": "3761:24:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "3749:6:20",
"nodeType": "YulIdentifier",
"src": "3749:6:20"
},
"nativeSrc": "3749:37:20",
"nodeType": "YulFunctionCall",
"src": "3749:37:20"
},
"nativeSrc": "3749:37:20",
"nodeType": "YulExpressionStatement",
"src": "3749:37:20"
}
]
},
"name": "abi_encode_t_uint256_to_t_uint256_fromStack",
"nativeSrc": "3674:118:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "3727:5:20",
"nodeType": "YulTypedName",
"src": "3727:5:20",
"type": ""
},
{
"name": "pos",
"nativeSrc": "3734:3:20",
"nodeType": "YulTypedName",
"src": "3734:3:20",
"type": ""
}
],
"src": "3674:118:20"
},
{
"body": {
"nativeSrc": "3896:124:20",
"nodeType": "YulBlock",
"src": "3896:124:20",
"statements": [
{
"nativeSrc": "3906:26:20",
"nodeType": "YulAssignment",
"src": "3906:26:20",
"value": {
"arguments": [
{
"name": "headStart",
"nativeSrc": "3918:9:20",
"nodeType": "YulIdentifier",
"src": "3918:9:20"
},
{
"kind": "number",
"nativeSrc": "3929:2:20",
"nodeType": "YulLiteral",
"src": "3929:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "3914:3:20",
"nodeType": "YulIdentifier",
"src": "3914:3:20"
},
"nativeSrc": "3914:18:20",
"nodeType": "YulFunctionCall",
"src": "3914:18:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "3906:4:20",
"nodeType": "YulIdentifier",
"src": "3906:4:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value0",
"nativeSrc": "3986:6:20",
"nodeType": "YulIdentifier",
"src": "3986:6:20"
},
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "3999:9:20",
"nodeType": "YulIdentifier",
"src": "3999:9:20"
},
{
"kind": "number",
"nativeSrc": "4010:1:20",
"nodeType": "YulLiteral",
"src": "4010:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "3995:3:20",
"nodeType": "YulIdentifier",
"src": "3995:3:20"
},
"nativeSrc": "3995:17:20",
"nodeType": "YulFunctionCall",
"src": "3995:17:20"
}
],
"functionName": {
"name": "abi_encode_t_uint256_to_t_uint256_fromStack",
"nativeSrc": "3942:43:20",
"nodeType": "YulIdentifier",
"src": "3942:43:20"
},
"nativeSrc": "3942:71:20",
"nodeType": "YulFunctionCall",
"src": "3942:71:20"
},
"nativeSrc": "3942:71:20",
"nodeType": "YulExpressionStatement",
"src": "3942:71:20"
}
]
},
"name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed",
"nativeSrc": "3798:222:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "3868:9:20",
"nodeType": "YulTypedName",
"src": "3868:9:20",
"type": ""
},
{
"name": "value0",
"nativeSrc": "3880:6:20",
"nodeType": "YulTypedName",
"src": "3880:6:20",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nativeSrc": "3891:4:20",
"nodeType": "YulTypedName",
"src": "3891:4:20",
"type": ""
}
],
"src": "3798:222:20"
},
{
"body": {
"nativeSrc": "4126:519:20",
"nodeType": "YulBlock",
"src": "4126:519:20",
"statements": [
{
"body": {
"nativeSrc": "4172:83:20",
"nodeType": "YulBlock",
"src": "4172:83:20",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nativeSrc": "4174:77:20",
"nodeType": "YulIdentifier",
"src": "4174:77:20"
},
"nativeSrc": "4174:79:20",
"nodeType": "YulFunctionCall",
"src": "4174:79:20"
},
"nativeSrc": "4174:79:20",
"nodeType": "YulExpressionStatement",
"src": "4174:79:20"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "dataEnd",
"nativeSrc": "4147:7:20",
"nodeType": "YulIdentifier",
"src": "4147:7:20"
},
{
"name": "headStart",
"nativeSrc": "4156:9:20",
"nodeType": "YulIdentifier",
"src": "4156:9:20"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "4143:3:20",
"nodeType": "YulIdentifier",
"src": "4143:3:20"
},
"nativeSrc": "4143:23:20",
"nodeType": "YulFunctionCall",
"src": "4143:23:20"
},
{
"kind": "number",
"nativeSrc": "4168:2:20",
"nodeType": "YulLiteral",
"src": "4168:2:20",
"type": "",
"value": "96"
}
],
"functionName": {
"name": "slt",
"nativeSrc": "4139:3:20",
"nodeType": "YulIdentifier",
"src": "4139:3:20"
},
"nativeSrc": "4139:32:20",
"nodeType": "YulFunctionCall",
"src": "4139:32:20"
},
"nativeSrc": "4136:119:20",
"nodeType": "YulIf",
"src": "4136:119:20"
},
{
"nativeSrc": "4265:117:20",
"nodeType": "YulBlock",
"src": "4265:117:20",
"statements": [
{
"nativeSrc": "4280:15:20",
"nodeType": "YulVariableDeclaration",
"src": "4280:15:20",
"value": {
"kind": "number",
"nativeSrc": "4294:1:20",
"nodeType": "YulLiteral",
"src": "4294:1:20",
"type": "",
"value": "0"
},
"variables": [
{
"name": "offset",
"nativeSrc": "4284:6:20",
"nodeType": "YulTypedName",
"src": "4284:6:20",
"type": ""
}
]
},
{
"nativeSrc": "4309:63:20",
"nodeType": "YulAssignment",
"src": "4309:63:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "4344:9:20",
"nodeType": "YulIdentifier",
"src": "4344:9:20"
},
{
"name": "offset",
"nativeSrc": "4355:6:20",
"nodeType": "YulIdentifier",
"src": "4355:6:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "4340:3:20",
"nodeType": "YulIdentifier",
"src": "4340:3:20"
},
"nativeSrc": "4340:22:20",
"nodeType": "YulFunctionCall",
"src": "4340:22:20"
},
{
"name": "dataEnd",
"nativeSrc": "4364:7:20",
"nodeType": "YulIdentifier",
"src": "4364:7:20"
}
],
"functionName": {
"name": "abi_decode_t_address",
"nativeSrc": "4319:20:20",
"nodeType": "YulIdentifier",
"src": "4319:20:20"
},
"nativeSrc": "4319:53:20",
"nodeType": "YulFunctionCall",
"src": "4319:53:20"
},
"variableNames": [
{
"name": "value0",
"nativeSrc": "4309:6:20",
"nodeType": "YulIdentifier",
"src": "4309:6:20"
}
]
}
]
},
{
"nativeSrc": "4392:118:20",
"nodeType": "YulBlock",
"src": "4392:118:20",
"statements": [
{
"nativeSrc": "4407:16:20",
"nodeType": "YulVariableDeclaration",
"src": "4407:16:20",
"value": {
"kind": "number",
"nativeSrc": "4421:2:20",
"nodeType": "YulLiteral",
"src": "4421:2:20",
"type": "",
"value": "32"
},
"variables": [
{
"name": "offset",
"nativeSrc": "4411:6:20",
"nodeType": "YulTypedName",
"src": "4411:6:20",
"type": ""
}
]
},
{
"nativeSrc": "4437:63:20",
"nodeType": "YulAssignment",
"src": "4437:63:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "4472:9:20",
"nodeType": "YulIdentifier",
"src": "4472:9:20"
},
{
"name": "offset",
"nativeSrc": "4483:6:20",
"nodeType": "YulIdentifier",
"src": "4483:6:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "4468:3:20",
"nodeType": "YulIdentifier",
"src": "4468:3:20"
},
"nativeSrc": "4468:22:20",
"nodeType": "YulFunctionCall",
"src": "4468:22:20"
},
{
"name": "dataEnd",
"nativeSrc": "4492:7:20",
"nodeType": "YulIdentifier",
"src": "4492:7:20"
}
],
"functionName": {
"name": "abi_decode_t_address",
"nativeSrc": "4447:20:20",
"nodeType": "YulIdentifier",
"src": "4447:20:20"
},
"nativeSrc": "4447:53:20",
"nodeType": "YulFunctionCall",
"src": "4447:53:20"
},
"variableNames": [
{
"name": "value1",
"nativeSrc": "4437:6:20",
"nodeType": "YulIdentifier",
"src": "4437:6:20"
}
]
}
]
},
{
"nativeSrc": "4520:118:20",
"nodeType": "YulBlock",
"src": "4520:118:20",
"statements": [
{
"nativeSrc": "4535:16:20",
"nodeType": "YulVariableDeclaration",
"src": "4535:16:20",
"value": {
"kind": "number",
"nativeSrc": "4549:2:20",
"nodeType": "YulLiteral",
"src": "4549:2:20",
"type": "",
"value": "64"
},
"variables": [
{
"name": "offset",
"nativeSrc": "4539:6:20",
"nodeType": "YulTypedName",
"src": "4539:6:20",
"type": ""
}
]
},
{
"nativeSrc": "4565:63:20",
"nodeType": "YulAssignment",
"src": "4565:63:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "4600:9:20",
"nodeType": "YulIdentifier",
"src": "4600:9:20"
},
{
"name": "offset",
"nativeSrc": "4611:6:20",
"nodeType": "YulIdentifier",
"src": "4611:6:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "4596:3:20",
"nodeType": "YulIdentifier",
"src": "4596:3:20"
},
"nativeSrc": "4596:22:20",
"nodeType": "YulFunctionCall",
"src": "4596:22:20"
},
{
"name": "dataEnd",
"nativeSrc": "4620:7:20",
"nodeType": "YulIdentifier",
"src": "4620:7:20"
}
],
"functionName": {
"name": "abi_decode_t_uint256",
"nativeSrc": "4575:20:20",
"nodeType": "YulIdentifier",
"src": "4575:20:20"
},
"nativeSrc": "4575:53:20",
"nodeType": "YulFunctionCall",
"src": "4575:53:20"
},
"variableNames": [
{
"name": "value2",
"nativeSrc": "4565:6:20",
"nodeType": "YulIdentifier",
"src": "4565:6:20"
}
]
}
]
}
]
},
"name": "abi_decode_tuple_t_addresst_addresst_uint256",
"nativeSrc": "4026:619:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "4080:9:20",
"nodeType": "YulTypedName",
"src": "4080:9:20",
"type": ""
},
{
"name": "dataEnd",
"nativeSrc": "4091:7:20",
"nodeType": "YulTypedName",
"src": "4091:7:20",
"type": ""
}
],
"returnVariables": [
{
"name": "value0",
"nativeSrc": "4103:6:20",
"nodeType": "YulTypedName",
"src": "4103:6:20",
"type": ""
},
{
"name": "value1",
"nativeSrc": "4111:6:20",
"nodeType": "YulTypedName",
"src": "4111:6:20",
"type": ""
},
{
"name": "value2",
"nativeSrc": "4119:6:20",
"nodeType": "YulTypedName",
"src": "4119:6:20",
"type": ""
}
],
"src": "4026:619:20"
},
{
"body": {
"nativeSrc": "4694:43:20",
"nodeType": "YulBlock",
"src": "4694:43:20",
"statements": [
{
"nativeSrc": "4704:27:20",
"nodeType": "YulAssignment",
"src": "4704:27:20",
"value": {
"arguments": [
{
"name": "value",
"nativeSrc": "4719:5:20",
"nodeType": "YulIdentifier",
"src": "4719:5:20"
},
{
"kind": "number",
"nativeSrc": "4726:4:20",
"nodeType": "YulLiteral",
"src": "4726:4:20",
"type": "",
"value": "0xff"
}
],
"functionName": {
"name": "and",
"nativeSrc": "4715:3:20",
"nodeType": "YulIdentifier",
"src": "4715:3:20"
},
"nativeSrc": "4715:16:20",
"nodeType": "YulFunctionCall",
"src": "4715:16:20"
},
"variableNames": [
{
"name": "cleaned",
"nativeSrc": "4704:7:20",
"nodeType": "YulIdentifier",
"src": "4704:7:20"
}
]
}
]
},
"name": "cleanup_t_uint8",
"nativeSrc": "4651:86:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "4676:5:20",
"nodeType": "YulTypedName",
"src": "4676:5:20",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nativeSrc": "4686:7:20",
"nodeType": "YulTypedName",
"src": "4686:7:20",
"type": ""
}
],
"src": "4651:86:20"
},
{
"body": {
"nativeSrc": "4804:51:20",
"nodeType": "YulBlock",
"src": "4804:51:20",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "4821:3:20",
"nodeType": "YulIdentifier",
"src": "4821:3:20"
},
{
"arguments": [
{
"name": "value",
"nativeSrc": "4842:5:20",
"nodeType": "YulIdentifier",
"src": "4842:5:20"
}
],
"functionName": {
"name": "cleanup_t_uint8",
"nativeSrc": "4826:15:20",
"nodeType": "YulIdentifier",
"src": "4826:15:20"
},
"nativeSrc": "4826:22:20",
"nodeType": "YulFunctionCall",
"src": "4826:22:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "4814:6:20",
"nodeType": "YulIdentifier",
"src": "4814:6:20"
},
"nativeSrc": "4814:35:20",
"nodeType": "YulFunctionCall",
"src": "4814:35:20"
},
"nativeSrc": "4814:35:20",
"nodeType": "YulExpressionStatement",
"src": "4814:35:20"
}
]
},
"name": "abi_encode_t_uint8_to_t_uint8_fromStack",
"nativeSrc": "4743:112:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "4792:5:20",
"nodeType": "YulTypedName",
"src": "4792:5:20",
"type": ""
},
{
"name": "pos",
"nativeSrc": "4799:3:20",
"nodeType": "YulTypedName",
"src": "4799:3:20",
"type": ""
}
],
"src": "4743:112:20"
},
{
"body": {
"nativeSrc": "4955:120:20",
"nodeType": "YulBlock",
"src": "4955:120:20",
"statements": [
{
"nativeSrc": "4965:26:20",
"nodeType": "YulAssignment",
"src": "4965:26:20",
"value": {
"arguments": [
{
"name": "headStart",
"nativeSrc": "4977:9:20",
"nodeType": "YulIdentifier",
"src": "4977:9:20"
},
{
"kind": "number",
"nativeSrc": "4988:2:20",
"nodeType": "YulLiteral",
"src": "4988:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "4973:3:20",
"nodeType": "YulIdentifier",
"src": "4973:3:20"
},
"nativeSrc": "4973:18:20",
"nodeType": "YulFunctionCall",
"src": "4973:18:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "4965:4:20",
"nodeType": "YulIdentifier",
"src": "4965:4:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value0",
"nativeSrc": "5041:6:20",
"nodeType": "YulIdentifier",
"src": "5041:6:20"
},
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "5054:9:20",
"nodeType": "YulIdentifier",
"src": "5054:9:20"
},
{
"kind": "number",
"nativeSrc": "5065:1:20",
"nodeType": "YulLiteral",
"src": "5065:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "5050:3:20",
"nodeType": "YulIdentifier",
"src": "5050:3:20"
},
"nativeSrc": "5050:17:20",
"nodeType": "YulFunctionCall",
"src": "5050:17:20"
}
],
"functionName": {
"name": "abi_encode_t_uint8_to_t_uint8_fromStack",
"nativeSrc": "5001:39:20",
"nodeType": "YulIdentifier",
"src": "5001:39:20"
},
"nativeSrc": "5001:67:20",
"nodeType": "YulFunctionCall",
"src": "5001:67:20"
},
"nativeSrc": "5001:67:20",
"nodeType": "YulExpressionStatement",
"src": "5001:67:20"
}
]
},
"name": "abi_encode_tuple_t_uint8__to_t_uint8__fromStack_reversed",
"nativeSrc": "4861:214:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "4927:9:20",
"nodeType": "YulTypedName",
"src": "4927:9:20",
"type": ""
},
{
"name": "value0",
"nativeSrc": "4939:6:20",
"nodeType": "YulTypedName",
"src": "4939:6:20",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nativeSrc": "4950:4:20",
"nodeType": "YulTypedName",
"src": "4950:4:20",
"type": ""
}
],
"src": "4861:214:20"
},
{
"body": {
"nativeSrc": "5126:32:20",
"nodeType": "YulBlock",
"src": "5126:32:20",
"statements": [
{
"nativeSrc": "5136:16:20",
"nodeType": "YulAssignment",
"src": "5136:16:20",
"value": {
"name": "value",
"nativeSrc": "5147:5:20",
"nodeType": "YulIdentifier",
"src": "5147:5:20"
},
"variableNames": [
{
"name": "cleaned",
"nativeSrc": "5136:7:20",
"nodeType": "YulIdentifier",
"src": "5136:7:20"
}
]
}
]
},
"name": "cleanup_t_bytes32",
"nativeSrc": "5081:77:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "5108:5:20",
"nodeType": "YulTypedName",
"src": "5108:5:20",
"type": ""
}
],
"returnVariables": [
{
"name": "cleaned",
"nativeSrc": "5118:7:20",
"nodeType": "YulTypedName",
"src": "5118:7:20",
"type": ""
}
],
"src": "5081:77:20"
},
{
"body": {
"nativeSrc": "5229:53:20",
"nodeType": "YulBlock",
"src": "5229:53:20",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "5246:3:20",
"nodeType": "YulIdentifier",
"src": "5246:3:20"
},
{
"arguments": [
{
"name": "value",
"nativeSrc": "5269:5:20",
"nodeType": "YulIdentifier",
"src": "5269:5:20"
}
],
"functionName": {
"name": "cleanup_t_bytes32",
"nativeSrc": "5251:17:20",
"nodeType": "YulIdentifier",
"src": "5251:17:20"
},
"nativeSrc": "5251:24:20",
"nodeType": "YulFunctionCall",
"src": "5251:24:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "5239:6:20",
"nodeType": "YulIdentifier",
"src": "5239:6:20"
},
"nativeSrc": "5239:37:20",
"nodeType": "YulFunctionCall",
"src": "5239:37:20"
},
"nativeSrc": "5239:37:20",
"nodeType": "YulExpressionStatement",
"src": "5239:37:20"
}
]
},
"name": "abi_encode_t_bytes32_to_t_bytes32_fromStack",
"nativeSrc": "5164:118:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "5217:5:20",
"nodeType": "YulTypedName",
"src": "5217:5:20",
"type": ""
},
{
"name": "pos",
"nativeSrc": "5224:3:20",
"nodeType": "YulTypedName",
"src": "5224:3:20",
"type": ""
}
],
"src": "5164:118:20"
},
{
"body": {
"nativeSrc": "5386:124:20",
"nodeType": "YulBlock",
"src": "5386:124:20",
"statements": [
{
"nativeSrc": "5396:26:20",
"nodeType": "YulAssignment",
"src": "5396:26:20",
"value": {
"arguments": [
{
"name": "headStart",
"nativeSrc": "5408:9:20",
"nodeType": "YulIdentifier",
"src": "5408:9:20"
},
{
"kind": "number",
"nativeSrc": "5419:2:20",
"nodeType": "YulLiteral",
"src": "5419:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "5404:3:20",
"nodeType": "YulIdentifier",
"src": "5404:3:20"
},
"nativeSrc": "5404:18:20",
"nodeType": "YulFunctionCall",
"src": "5404:18:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "5396:4:20",
"nodeType": "YulIdentifier",
"src": "5396:4:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value0",
"nativeSrc": "5476:6:20",
"nodeType": "YulIdentifier",
"src": "5476:6:20"
},
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "5489:9:20",
"nodeType": "YulIdentifier",
"src": "5489:9:20"
},
{
"kind": "number",
"nativeSrc": "5500:1:20",
"nodeType": "YulLiteral",
"src": "5500:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "5485:3:20",
"nodeType": "YulIdentifier",
"src": "5485:3:20"
},
"nativeSrc": "5485:17:20",
"nodeType": "YulFunctionCall",
"src": "5485:17:20"
}
],
"functionName": {
"name": "abi_encode_t_bytes32_to_t_bytes32_fromStack",
"nativeSrc": "5432:43:20",
"nodeType": "YulIdentifier",
"src": "5432:43:20"
},
"nativeSrc": "5432:71:20",
"nodeType": "YulFunctionCall",
"src": "5432:71:20"
},
"nativeSrc": "5432:71:20",
"nodeType": "YulExpressionStatement",
"src": "5432:71:20"
}
]
},
"name": "abi_encode_tuple_t_bytes32__to_t_bytes32__fromStack_reversed",
"nativeSrc": "5288:222:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "5358:9:20",
"nodeType": "YulTypedName",
"src": "5358:9:20",
"type": ""
},
{
"name": "value0",
"nativeSrc": "5370:6:20",
"nodeType": "YulTypedName",
"src": "5370:6:20",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nativeSrc": "5381:4:20",
"nodeType": "YulTypedName",
"src": "5381:4:20",
"type": ""
}
],
"src": "5288:222:20"
},
{
"body": {
"nativeSrc": "5582:263:20",
"nodeType": "YulBlock",
"src": "5582:263:20",
"statements": [
{
"body": {
"nativeSrc": "5628:83:20",
"nodeType": "YulBlock",
"src": "5628:83:20",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nativeSrc": "5630:77:20",
"nodeType": "YulIdentifier",
"src": "5630:77:20"
},
"nativeSrc": "5630:79:20",
"nodeType": "YulFunctionCall",
"src": "5630:79:20"
},
"nativeSrc": "5630:79:20",
"nodeType": "YulExpressionStatement",
"src": "5630:79:20"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "dataEnd",
"nativeSrc": "5603:7:20",
"nodeType": "YulIdentifier",
"src": "5603:7:20"
},
{
"name": "headStart",
"nativeSrc": "5612:9:20",
"nodeType": "YulIdentifier",
"src": "5612:9:20"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "5599:3:20",
"nodeType": "YulIdentifier",
"src": "5599:3:20"
},
"nativeSrc": "5599:23:20",
"nodeType": "YulFunctionCall",
"src": "5599:23:20"
},
{
"kind": "number",
"nativeSrc": "5624:2:20",
"nodeType": "YulLiteral",
"src": "5624:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "slt",
"nativeSrc": "5595:3:20",
"nodeType": "YulIdentifier",
"src": "5595:3:20"
},
"nativeSrc": "5595:32:20",
"nodeType": "YulFunctionCall",
"src": "5595:32:20"
},
"nativeSrc": "5592:119:20",
"nodeType": "YulIf",
"src": "5592:119:20"
},
{
"nativeSrc": "5721:117:20",
"nodeType": "YulBlock",
"src": "5721:117:20",
"statements": [
{
"nativeSrc": "5736:15:20",
"nodeType": "YulVariableDeclaration",
"src": "5736:15:20",
"value": {
"kind": "number",
"nativeSrc": "5750:1:20",
"nodeType": "YulLiteral",
"src": "5750:1:20",
"type": "",
"value": "0"
},
"variables": [
{
"name": "offset",
"nativeSrc": "5740:6:20",
"nodeType": "YulTypedName",
"src": "5740:6:20",
"type": ""
}
]
},
{
"nativeSrc": "5765:63:20",
"nodeType": "YulAssignment",
"src": "5765:63:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "5800:9:20",
"nodeType": "YulIdentifier",
"src": "5800:9:20"
},
{
"name": "offset",
"nativeSrc": "5811:6:20",
"nodeType": "YulIdentifier",
"src": "5811:6:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "5796:3:20",
"nodeType": "YulIdentifier",
"src": "5796:3:20"
},
"nativeSrc": "5796:22:20",
"nodeType": "YulFunctionCall",
"src": "5796:22:20"
},
{
"name": "dataEnd",
"nativeSrc": "5820:7:20",
"nodeType": "YulIdentifier",
"src": "5820:7:20"
}
],
"functionName": {
"name": "abi_decode_t_uint256",
"nativeSrc": "5775:20:20",
"nodeType": "YulIdentifier",
"src": "5775:20:20"
},
"nativeSrc": "5775:53:20",
"nodeType": "YulFunctionCall",
"src": "5775:53:20"
},
"variableNames": [
{
"name": "value0",
"nativeSrc": "5765:6:20",
"nodeType": "YulIdentifier",
"src": "5765:6:20"
}
]
}
]
}
]
},
"name": "abi_decode_tuple_t_uint256",
"nativeSrc": "5516:329:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "5552:9:20",
"nodeType": "YulTypedName",
"src": "5552:9:20",
"type": ""
},
{
"name": "dataEnd",
"nativeSrc": "5563:7:20",
"nodeType": "YulTypedName",
"src": "5563:7:20",
"type": ""
}
],
"returnVariables": [
{
"name": "value0",
"nativeSrc": "5575:6:20",
"nodeType": "YulTypedName",
"src": "5575:6:20",
"type": ""
}
],
"src": "5516:329:20"
},
{
"body": {
"nativeSrc": "5916:53:20",
"nodeType": "YulBlock",
"src": "5916:53:20",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "5933:3:20",
"nodeType": "YulIdentifier",
"src": "5933:3:20"
},
{
"arguments": [
{
"name": "value",
"nativeSrc": "5956:5:20",
"nodeType": "YulIdentifier",
"src": "5956:5:20"
}
],
"functionName": {
"name": "cleanup_t_address",
"nativeSrc": "5938:17:20",
"nodeType": "YulIdentifier",
"src": "5938:17:20"
},
"nativeSrc": "5938:24:20",
"nodeType": "YulFunctionCall",
"src": "5938:24:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "5926:6:20",
"nodeType": "YulIdentifier",
"src": "5926:6:20"
},
"nativeSrc": "5926:37:20",
"nodeType": "YulFunctionCall",
"src": "5926:37:20"
},
"nativeSrc": "5926:37:20",
"nodeType": "YulExpressionStatement",
"src": "5926:37:20"
}
]
},
"name": "abi_encode_t_address_to_t_address_fromStack",
"nativeSrc": "5851:118:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "5904:5:20",
"nodeType": "YulTypedName",
"src": "5904:5:20",
"type": ""
},
{
"name": "pos",
"nativeSrc": "5911:3:20",
"nodeType": "YulTypedName",
"src": "5911:3:20",
"type": ""
}
],
"src": "5851:118:20"
},
{
"body": {
"nativeSrc": "6073:124:20",
"nodeType": "YulBlock",
"src": "6073:124:20",
"statements": [
{
"nativeSrc": "6083:26:20",
"nodeType": "YulAssignment",
"src": "6083:26:20",
"value": {
"arguments": [
{
"name": "headStart",
"nativeSrc": "6095:9:20",
"nodeType": "YulIdentifier",
"src": "6095:9:20"
},
{
"kind": "number",
"nativeSrc": "6106:2:20",
"nodeType": "YulLiteral",
"src": "6106:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "6091:3:20",
"nodeType": "YulIdentifier",
"src": "6091:3:20"
},
"nativeSrc": "6091:18:20",
"nodeType": "YulFunctionCall",
"src": "6091:18:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "6083:4:20",
"nodeType": "YulIdentifier",
"src": "6083:4:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value0",
"nativeSrc": "6163:6:20",
"nodeType": "YulIdentifier",
"src": "6163:6:20"
},
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "6176:9:20",
"nodeType": "YulIdentifier",
"src": "6176:9:20"
},
{
"kind": "number",
"nativeSrc": "6187:1:20",
"nodeType": "YulLiteral",
"src": "6187:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "6172:3:20",
"nodeType": "YulIdentifier",
"src": "6172:3:20"
},
"nativeSrc": "6172:17:20",
"nodeType": "YulFunctionCall",
"src": "6172:17:20"
}
],
"functionName": {
"name": "abi_encode_t_address_to_t_address_fromStack",
"nativeSrc": "6119:43:20",
"nodeType": "YulIdentifier",
"src": "6119:43:20"
},
"nativeSrc": "6119:71:20",
"nodeType": "YulFunctionCall",
"src": "6119:71:20"
},
"nativeSrc": "6119:71:20",
"nodeType": "YulExpressionStatement",
"src": "6119:71:20"
}
]
},
"name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed",
"nativeSrc": "5975:222:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "6045:9:20",
"nodeType": "YulTypedName",
"src": "6045:9:20",
"type": ""
},
{
"name": "value0",
"nativeSrc": "6057:6:20",
"nodeType": "YulTypedName",
"src": "6057:6:20",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nativeSrc": "6068:4:20",
"nodeType": "YulTypedName",
"src": "6068:4:20",
"type": ""
}
],
"src": "5975:222:20"
},
{
"body": {
"nativeSrc": "6292:28:20",
"nodeType": "YulBlock",
"src": "6292:28:20",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "6309:1:20",
"nodeType": "YulLiteral",
"src": "6309:1:20",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "6312:1:20",
"nodeType": "YulLiteral",
"src": "6312:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "6302:6:20",
"nodeType": "YulIdentifier",
"src": "6302:6:20"
},
"nativeSrc": "6302:12:20",
"nodeType": "YulFunctionCall",
"src": "6302:12:20"
},
"nativeSrc": "6302:12:20",
"nodeType": "YulExpressionStatement",
"src": "6302:12:20"
}
]
},
"name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d",
"nativeSrc": "6203:117:20",
"nodeType": "YulFunctionDefinition",
"src": "6203:117:20"
},
{
"body": {
"nativeSrc": "6415:28:20",
"nodeType": "YulBlock",
"src": "6415:28:20",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "6432:1:20",
"nodeType": "YulLiteral",
"src": "6432:1:20",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "6435:1:20",
"nodeType": "YulLiteral",
"src": "6435:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "6425:6:20",
"nodeType": "YulIdentifier",
"src": "6425:6:20"
},
"nativeSrc": "6425:12:20",
"nodeType": "YulFunctionCall",
"src": "6425:12:20"
},
"nativeSrc": "6425:12:20",
"nodeType": "YulExpressionStatement",
"src": "6425:12:20"
}
]
},
"name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae",
"nativeSrc": "6326:117:20",
"nodeType": "YulFunctionDefinition",
"src": "6326:117:20"
},
{
"body": {
"nativeSrc": "6477:152:20",
"nodeType": "YulBlock",
"src": "6477:152:20",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "6494:1:20",
"nodeType": "YulLiteral",
"src": "6494:1:20",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "6497:77:20",
"nodeType": "YulLiteral",
"src": "6497:77:20",
"type": "",
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "6487:6:20",
"nodeType": "YulIdentifier",
"src": "6487:6:20"
},
"nativeSrc": "6487:88:20",
"nodeType": "YulFunctionCall",
"src": "6487:88:20"
},
"nativeSrc": "6487:88:20",
"nodeType": "YulExpressionStatement",
"src": "6487:88:20"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "6591:1:20",
"nodeType": "YulLiteral",
"src": "6591:1:20",
"type": "",
"value": "4"
},
{
"kind": "number",
"nativeSrc": "6594:4:20",
"nodeType": "YulLiteral",
"src": "6594:4:20",
"type": "",
"value": "0x41"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "6584:6:20",
"nodeType": "YulIdentifier",
"src": "6584:6:20"
},
"nativeSrc": "6584:15:20",
"nodeType": "YulFunctionCall",
"src": "6584:15:20"
},
"nativeSrc": "6584:15:20",
"nodeType": "YulExpressionStatement",
"src": "6584:15:20"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "6615:1:20",
"nodeType": "YulLiteral",
"src": "6615:1:20",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "6618:4:20",
"nodeType": "YulLiteral",
"src": "6618:4:20",
"type": "",
"value": "0x24"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "6608:6:20",
"nodeType": "YulIdentifier",
"src": "6608:6:20"
},
"nativeSrc": "6608:15:20",
"nodeType": "YulFunctionCall",
"src": "6608:15:20"
},
"nativeSrc": "6608:15:20",
"nodeType": "YulExpressionStatement",
"src": "6608:15:20"
}
]
},
"name": "panic_error_0x41",
"nativeSrc": "6449:180:20",
"nodeType": "YulFunctionDefinition",
"src": "6449:180:20"
},
{
"body": {
"nativeSrc": "6678:238:20",
"nodeType": "YulBlock",
"src": "6678:238:20",
"statements": [
{
"nativeSrc": "6688:58:20",
"nodeType": "YulVariableDeclaration",
"src": "6688:58:20",
"value": {
"arguments": [
{
"name": "memPtr",
"nativeSrc": "6710:6:20",
"nodeType": "YulIdentifier",
"src": "6710:6:20"
},
{
"arguments": [
{
"name": "size",
"nativeSrc": "6740:4:20",
"nodeType": "YulIdentifier",
"src": "6740:4:20"
}
],
"functionName": {
"name": "round_up_to_mul_of_32",
"nativeSrc": "6718:21:20",
"nodeType": "YulIdentifier",
"src": "6718:21:20"
},
"nativeSrc": "6718:27:20",
"nodeType": "YulFunctionCall",
"src": "6718:27:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "6706:3:20",
"nodeType": "YulIdentifier",
"src": "6706:3:20"
},
"nativeSrc": "6706:40:20",
"nodeType": "YulFunctionCall",
"src": "6706:40:20"
},
"variables": [
{
"name": "newFreePtr",
"nativeSrc": "6692:10:20",
"nodeType": "YulTypedName",
"src": "6692:10:20",
"type": ""
}
]
},
{
"body": {
"nativeSrc": "6857:22:20",
"nodeType": "YulBlock",
"src": "6857:22:20",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x41",
"nativeSrc": "6859:16:20",
"nodeType": "YulIdentifier",
"src": "6859:16:20"
},
"nativeSrc": "6859:18:20",
"nodeType": "YulFunctionCall",
"src": "6859:18:20"
},
"nativeSrc": "6859:18:20",
"nodeType": "YulExpressionStatement",
"src": "6859:18:20"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "newFreePtr",
"nativeSrc": "6800:10:20",
"nodeType": "YulIdentifier",
"src": "6800:10:20"
},
{
"kind": "number",
"nativeSrc": "6812:18:20",
"nodeType": "YulLiteral",
"src": "6812:18:20",
"type": "",
"value": "0xffffffffffffffff"
}
],
"functionName": {
"name": "gt",
"nativeSrc": "6797:2:20",
"nodeType": "YulIdentifier",
"src": "6797:2:20"
},
"nativeSrc": "6797:34:20",
"nodeType": "YulFunctionCall",
"src": "6797:34:20"
},
{
"arguments": [
{
"name": "newFreePtr",
"nativeSrc": "6836:10:20",
"nodeType": "YulIdentifier",
"src": "6836:10:20"
},
{
"name": "memPtr",
"nativeSrc": "6848:6:20",
"nodeType": "YulIdentifier",
"src": "6848:6:20"
}
],
"functionName": {
"name": "lt",
"nativeSrc": "6833:2:20",
"nodeType": "YulIdentifier",
"src": "6833:2:20"
},
"nativeSrc": "6833:22:20",
"nodeType": "YulFunctionCall",
"src": "6833:22:20"
}
],
"functionName": {
"name": "or",
"nativeSrc": "6794:2:20",
"nodeType": "YulIdentifier",
"src": "6794:2:20"
},
"nativeSrc": "6794:62:20",
"nodeType": "YulFunctionCall",
"src": "6794:62:20"
},
"nativeSrc": "6791:88:20",
"nodeType": "YulIf",
"src": "6791:88:20"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "6895:2:20",
"nodeType": "YulLiteral",
"src": "6895:2:20",
"type": "",
"value": "64"
},
{
"name": "newFreePtr",
"nativeSrc": "6899:10:20",
"nodeType": "YulIdentifier",
"src": "6899:10:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "6888:6:20",
"nodeType": "YulIdentifier",
"src": "6888:6:20"
},
"nativeSrc": "6888:22:20",
"nodeType": "YulFunctionCall",
"src": "6888:22:20"
},
"nativeSrc": "6888:22:20",
"nodeType": "YulExpressionStatement",
"src": "6888:22:20"
}
]
},
"name": "finalize_allocation",
"nativeSrc": "6635:281:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nativeSrc": "6664:6:20",
"nodeType": "YulTypedName",
"src": "6664:6:20",
"type": ""
},
{
"name": "size",
"nativeSrc": "6672:4:20",
"nodeType": "YulTypedName",
"src": "6672:4:20",
"type": ""
}
],
"src": "6635:281:20"
},
{
"body": {
"nativeSrc": "6963:88:20",
"nodeType": "YulBlock",
"src": "6963:88:20",
"statements": [
{
"nativeSrc": "6973:30:20",
"nodeType": "YulAssignment",
"src": "6973:30:20",
"value": {
"arguments": [],
"functionName": {
"name": "allocate_unbounded",
"nativeSrc": "6983:18:20",
"nodeType": "YulIdentifier",
"src": "6983:18:20"
},
"nativeSrc": "6983:20:20",
"nodeType": "YulFunctionCall",
"src": "6983:20:20"
},
"variableNames": [
{
"name": "memPtr",
"nativeSrc": "6973:6:20",
"nodeType": "YulIdentifier",
"src": "6973:6:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "memPtr",
"nativeSrc": "7032:6:20",
"nodeType": "YulIdentifier",
"src": "7032:6:20"
},
{
"name": "size",
"nativeSrc": "7040:4:20",
"nodeType": "YulIdentifier",
"src": "7040:4:20"
}
],
"functionName": {
"name": "finalize_allocation",
"nativeSrc": "7012:19:20",
"nodeType": "YulIdentifier",
"src": "7012:19:20"
},
"nativeSrc": "7012:33:20",
"nodeType": "YulFunctionCall",
"src": "7012:33:20"
},
"nativeSrc": "7012:33:20",
"nodeType": "YulExpressionStatement",
"src": "7012:33:20"
}
]
},
"name": "allocate_memory",
"nativeSrc": "6922:129:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "size",
"nativeSrc": "6947:4:20",
"nodeType": "YulTypedName",
"src": "6947:4:20",
"type": ""
}
],
"returnVariables": [
{
"name": "memPtr",
"nativeSrc": "6956:6:20",
"nodeType": "YulTypedName",
"src": "6956:6:20",
"type": ""
}
],
"src": "6922:129:20"
},
{
"body": {
"nativeSrc": "7124:241:20",
"nodeType": "YulBlock",
"src": "7124:241:20",
"statements": [
{
"body": {
"nativeSrc": "7229:22:20",
"nodeType": "YulBlock",
"src": "7229:22:20",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x41",
"nativeSrc": "7231:16:20",
"nodeType": "YulIdentifier",
"src": "7231:16:20"
},
"nativeSrc": "7231:18:20",
"nodeType": "YulFunctionCall",
"src": "7231:18:20"
},
"nativeSrc": "7231:18:20",
"nodeType": "YulExpressionStatement",
"src": "7231:18:20"
}
]
},
"condition": {
"arguments": [
{
"name": "length",
"nativeSrc": "7201:6:20",
"nodeType": "YulIdentifier",
"src": "7201:6:20"
},
{
"kind": "number",
"nativeSrc": "7209:18:20",
"nodeType": "YulLiteral",
"src": "7209:18:20",
"type": "",
"value": "0xffffffffffffffff"
}
],
"functionName": {
"name": "gt",
"nativeSrc": "7198:2:20",
"nodeType": "YulIdentifier",
"src": "7198:2:20"
},
"nativeSrc": "7198:30:20",
"nodeType": "YulFunctionCall",
"src": "7198:30:20"
},
"nativeSrc": "7195:56:20",
"nodeType": "YulIf",
"src": "7195:56:20"
},
{
"nativeSrc": "7261:37:20",
"nodeType": "YulAssignment",
"src": "7261:37:20",
"value": {
"arguments": [
{
"name": "length",
"nativeSrc": "7291:6:20",
"nodeType": "YulIdentifier",
"src": "7291:6:20"
}
],
"functionName": {
"name": "round_up_to_mul_of_32",
"nativeSrc": "7269:21:20",
"nodeType": "YulIdentifier",
"src": "7269:21:20"
},
"nativeSrc": "7269:29:20",
"nodeType": "YulFunctionCall",
"src": "7269:29:20"
},
"variableNames": [
{
"name": "size",
"nativeSrc": "7261:4:20",
"nodeType": "YulIdentifier",
"src": "7261:4:20"
}
]
},
{
"nativeSrc": "7335:23:20",
"nodeType": "YulAssignment",
"src": "7335:23:20",
"value": {
"arguments": [
{
"name": "size",
"nativeSrc": "7347:4:20",
"nodeType": "YulIdentifier",
"src": "7347:4:20"
},
{
"kind": "number",
"nativeSrc": "7353:4:20",
"nodeType": "YulLiteral",
"src": "7353:4:20",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "7343:3:20",
"nodeType": "YulIdentifier",
"src": "7343:3:20"
},
"nativeSrc": "7343:15:20",
"nodeType": "YulFunctionCall",
"src": "7343:15:20"
},
"variableNames": [
{
"name": "size",
"nativeSrc": "7335:4:20",
"nodeType": "YulIdentifier",
"src": "7335:4:20"
}
]
}
]
},
"name": "array_allocation_size_t_string_memory_ptr",
"nativeSrc": "7057:308:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "length",
"nativeSrc": "7108:6:20",
"nodeType": "YulTypedName",
"src": "7108:6:20",
"type": ""
}
],
"returnVariables": [
{
"name": "size",
"nativeSrc": "7119:4:20",
"nodeType": "YulTypedName",
"src": "7119:4:20",
"type": ""
}
],
"src": "7057:308:20"
},
{
"body": {
"nativeSrc": "7435:84:20",
"nodeType": "YulBlock",
"src": "7435:84:20",
"statements": [
{
"expression": {
"arguments": [
{
"name": "dst",
"nativeSrc": "7459:3:20",
"nodeType": "YulIdentifier",
"src": "7459:3:20"
},
{
"name": "src",
"nativeSrc": "7464:3:20",
"nodeType": "YulIdentifier",
"src": "7464:3:20"
},
{
"name": "length",
"nativeSrc": "7469:6:20",
"nodeType": "YulIdentifier",
"src": "7469:6:20"
}
],
"functionName": {
"name": "calldatacopy",
"nativeSrc": "7446:12:20",
"nodeType": "YulIdentifier",
"src": "7446:12:20"
},
"nativeSrc": "7446:30:20",
"nodeType": "YulFunctionCall",
"src": "7446:30:20"
},
"nativeSrc": "7446:30:20",
"nodeType": "YulExpressionStatement",
"src": "7446:30:20"
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "dst",
"nativeSrc": "7496:3:20",
"nodeType": "YulIdentifier",
"src": "7496:3:20"
},
{
"name": "length",
"nativeSrc": "7501:6:20",
"nodeType": "YulIdentifier",
"src": "7501:6:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "7492:3:20",
"nodeType": "YulIdentifier",
"src": "7492:3:20"
},
"nativeSrc": "7492:16:20",
"nodeType": "YulFunctionCall",
"src": "7492:16:20"
},
{
"kind": "number",
"nativeSrc": "7510:1:20",
"nodeType": "YulLiteral",
"src": "7510:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "7485:6:20",
"nodeType": "YulIdentifier",
"src": "7485:6:20"
},
"nativeSrc": "7485:27:20",
"nodeType": "YulFunctionCall",
"src": "7485:27:20"
},
"nativeSrc": "7485:27:20",
"nodeType": "YulExpressionStatement",
"src": "7485:27:20"
}
]
},
"name": "copy_calldata_to_memory_with_cleanup",
"nativeSrc": "7371:148:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "src",
"nativeSrc": "7417:3:20",
"nodeType": "YulTypedName",
"src": "7417:3:20",
"type": ""
},
{
"name": "dst",
"nativeSrc": "7422:3:20",
"nodeType": "YulTypedName",
"src": "7422:3:20",
"type": ""
},
{
"name": "length",
"nativeSrc": "7427:6:20",
"nodeType": "YulTypedName",
"src": "7427:6:20",
"type": ""
}
],
"src": "7371:148:20"
},
{
"body": {
"nativeSrc": "7609:341:20",
"nodeType": "YulBlock",
"src": "7609:341:20",
"statements": [
{
"nativeSrc": "7619:75:20",
"nodeType": "YulAssignment",
"src": "7619:75:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "length",
"nativeSrc": "7686:6:20",
"nodeType": "YulIdentifier",
"src": "7686:6:20"
}
],
"functionName": {
"name": "array_allocation_size_t_string_memory_ptr",
"nativeSrc": "7644:41:20",
"nodeType": "YulIdentifier",
"src": "7644:41:20"
},
"nativeSrc": "7644:49:20",
"nodeType": "YulFunctionCall",
"src": "7644:49:20"
}
],
"functionName": {
"name": "allocate_memory",
"nativeSrc": "7628:15:20",
"nodeType": "YulIdentifier",
"src": "7628:15:20"
},
"nativeSrc": "7628:66:20",
"nodeType": "YulFunctionCall",
"src": "7628:66:20"
},
"variableNames": [
{
"name": "array",
"nativeSrc": "7619:5:20",
"nodeType": "YulIdentifier",
"src": "7619:5:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "array",
"nativeSrc": "7710:5:20",
"nodeType": "YulIdentifier",
"src": "7710:5:20"
},
{
"name": "length",
"nativeSrc": "7717:6:20",
"nodeType": "YulIdentifier",
"src": "7717:6:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "7703:6:20",
"nodeType": "YulIdentifier",
"src": "7703:6:20"
},
"nativeSrc": "7703:21:20",
"nodeType": "YulFunctionCall",
"src": "7703:21:20"
},
"nativeSrc": "7703:21:20",
"nodeType": "YulExpressionStatement",
"src": "7703:21:20"
},
{
"nativeSrc": "7733:27:20",
"nodeType": "YulVariableDeclaration",
"src": "7733:27:20",
"value": {
"arguments": [
{
"name": "array",
"nativeSrc": "7748:5:20",
"nodeType": "YulIdentifier",
"src": "7748:5:20"
},
{
"kind": "number",
"nativeSrc": "7755:4:20",
"nodeType": "YulLiteral",
"src": "7755:4:20",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "7744:3:20",
"nodeType": "YulIdentifier",
"src": "7744:3:20"
},
"nativeSrc": "7744:16:20",
"nodeType": "YulFunctionCall",
"src": "7744:16:20"
},
"variables": [
{
"name": "dst",
"nativeSrc": "7737:3:20",
"nodeType": "YulTypedName",
"src": "7737:3:20",
"type": ""
}
]
},
{
"body": {
"nativeSrc": "7798:83:20",
"nodeType": "YulBlock",
"src": "7798:83:20",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae",
"nativeSrc": "7800:77:20",
"nodeType": "YulIdentifier",
"src": "7800:77:20"
},
"nativeSrc": "7800:79:20",
"nodeType": "YulFunctionCall",
"src": "7800:79:20"
},
"nativeSrc": "7800:79:20",
"nodeType": "YulExpressionStatement",
"src": "7800:79:20"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "src",
"nativeSrc": "7779:3:20",
"nodeType": "YulIdentifier",
"src": "7779:3:20"
},
{
"name": "length",
"nativeSrc": "7784:6:20",
"nodeType": "YulIdentifier",
"src": "7784:6:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "7775:3:20",
"nodeType": "YulIdentifier",
"src": "7775:3:20"
},
"nativeSrc": "7775:16:20",
"nodeType": "YulFunctionCall",
"src": "7775:16:20"
},
{
"name": "end",
"nativeSrc": "7793:3:20",
"nodeType": "YulIdentifier",
"src": "7793:3:20"
}
],
"functionName": {
"name": "gt",
"nativeSrc": "7772:2:20",
"nodeType": "YulIdentifier",
"src": "7772:2:20"
},
"nativeSrc": "7772:25:20",
"nodeType": "YulFunctionCall",
"src": "7772:25:20"
},
"nativeSrc": "7769:112:20",
"nodeType": "YulIf",
"src": "7769:112:20"
},
{
"expression": {
"arguments": [
{
"name": "src",
"nativeSrc": "7927:3:20",
"nodeType": "YulIdentifier",
"src": "7927:3:20"
},
{
"name": "dst",
"nativeSrc": "7932:3:20",
"nodeType": "YulIdentifier",
"src": "7932:3:20"
},
{
"name": "length",
"nativeSrc": "7937:6:20",
"nodeType": "YulIdentifier",
"src": "7937:6:20"
}
],
"functionName": {
"name": "copy_calldata_to_memory_with_cleanup",
"nativeSrc": "7890:36:20",
"nodeType": "YulIdentifier",
"src": "7890:36:20"
},
"nativeSrc": "7890:54:20",
"nodeType": "YulFunctionCall",
"src": "7890:54:20"
},
"nativeSrc": "7890:54:20",
"nodeType": "YulExpressionStatement",
"src": "7890:54:20"
}
]
},
"name": "abi_decode_available_length_t_string_memory_ptr",
"nativeSrc": "7525:425:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "src",
"nativeSrc": "7582:3:20",
"nodeType": "YulTypedName",
"src": "7582:3:20",
"type": ""
},
{
"name": "length",
"nativeSrc": "7587:6:20",
"nodeType": "YulTypedName",
"src": "7587:6:20",
"type": ""
},
{
"name": "end",
"nativeSrc": "7595:3:20",
"nodeType": "YulTypedName",
"src": "7595:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "array",
"nativeSrc": "7603:5:20",
"nodeType": "YulTypedName",
"src": "7603:5:20",
"type": ""
}
],
"src": "7525:425:20"
},
{
"body": {
"nativeSrc": "8032:278:20",
"nodeType": "YulBlock",
"src": "8032:278:20",
"statements": [
{
"body": {
"nativeSrc": "8081:83:20",
"nodeType": "YulBlock",
"src": "8081:83:20",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d",
"nativeSrc": "8083:77:20",
"nodeType": "YulIdentifier",
"src": "8083:77:20"
},
"nativeSrc": "8083:79:20",
"nodeType": "YulFunctionCall",
"src": "8083:79:20"
},
"nativeSrc": "8083:79:20",
"nodeType": "YulExpressionStatement",
"src": "8083:79:20"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"arguments": [
{
"name": "offset",
"nativeSrc": "8060:6:20",
"nodeType": "YulIdentifier",
"src": "8060:6:20"
},
{
"kind": "number",
"nativeSrc": "8068:4:20",
"nodeType": "YulLiteral",
"src": "8068:4:20",
"type": "",
"value": "0x1f"
}
],
"functionName": {
"name": "add",
"nativeSrc": "8056:3:20",
"nodeType": "YulIdentifier",
"src": "8056:3:20"
},
"nativeSrc": "8056:17:20",
"nodeType": "YulFunctionCall",
"src": "8056:17:20"
},
{
"name": "end",
"nativeSrc": "8075:3:20",
"nodeType": "YulIdentifier",
"src": "8075:3:20"
}
],
"functionName": {
"name": "slt",
"nativeSrc": "8052:3:20",
"nodeType": "YulIdentifier",
"src": "8052:3:20"
},
"nativeSrc": "8052:27:20",
"nodeType": "YulFunctionCall",
"src": "8052:27:20"
}
],
"functionName": {
"name": "iszero",
"nativeSrc": "8045:6:20",
"nodeType": "YulIdentifier",
"src": "8045:6:20"
},
"nativeSrc": "8045:35:20",
"nodeType": "YulFunctionCall",
"src": "8045:35:20"
},
"nativeSrc": "8042:122:20",
"nodeType": "YulIf",
"src": "8042:122:20"
},
{
"nativeSrc": "8173:34:20",
"nodeType": "YulVariableDeclaration",
"src": "8173:34:20",
"value": {
"arguments": [
{
"name": "offset",
"nativeSrc": "8200:6:20",
"nodeType": "YulIdentifier",
"src": "8200:6:20"
}
],
"functionName": {
"name": "calldataload",
"nativeSrc": "8187:12:20",
"nodeType": "YulIdentifier",
"src": "8187:12:20"
},
"nativeSrc": "8187:20:20",
"nodeType": "YulFunctionCall",
"src": "8187:20:20"
},
"variables": [
{
"name": "length",
"nativeSrc": "8177:6:20",
"nodeType": "YulTypedName",
"src": "8177:6:20",
"type": ""
}
]
},
{
"nativeSrc": "8216:88:20",
"nodeType": "YulAssignment",
"src": "8216:88:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "offset",
"nativeSrc": "8277:6:20",
"nodeType": "YulIdentifier",
"src": "8277:6:20"
},
{
"kind": "number",
"nativeSrc": "8285:4:20",
"nodeType": "YulLiteral",
"src": "8285:4:20",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "8273:3:20",
"nodeType": "YulIdentifier",
"src": "8273:3:20"
},
"nativeSrc": "8273:17:20",
"nodeType": "YulFunctionCall",
"src": "8273:17:20"
},
{
"name": "length",
"nativeSrc": "8292:6:20",
"nodeType": "YulIdentifier",
"src": "8292:6:20"
},
{
"name": "end",
"nativeSrc": "8300:3:20",
"nodeType": "YulIdentifier",
"src": "8300:3:20"
}
],
"functionName": {
"name": "abi_decode_available_length_t_string_memory_ptr",
"nativeSrc": "8225:47:20",
"nodeType": "YulIdentifier",
"src": "8225:47:20"
},
"nativeSrc": "8225:79:20",
"nodeType": "YulFunctionCall",
"src": "8225:79:20"
},
"variableNames": [
{
"name": "array",
"nativeSrc": "8216:5:20",
"nodeType": "YulIdentifier",
"src": "8216:5:20"
}
]
}
]
},
"name": "abi_decode_t_string_memory_ptr",
"nativeSrc": "7970:340:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nativeSrc": "8010:6:20",
"nodeType": "YulTypedName",
"src": "8010:6:20",
"type": ""
},
{
"name": "end",
"nativeSrc": "8018:3:20",
"nodeType": "YulTypedName",
"src": "8018:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "array",
"nativeSrc": "8026:5:20",
"nodeType": "YulTypedName",
"src": "8026:5:20",
"type": ""
}
],
"src": "7970:340:20"
},
{
"body": {
"nativeSrc": "8392:433:20",
"nodeType": "YulBlock",
"src": "8392:433:20",
"statements": [
{
"body": {
"nativeSrc": "8438:83:20",
"nodeType": "YulBlock",
"src": "8438:83:20",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nativeSrc": "8440:77:20",
"nodeType": "YulIdentifier",
"src": "8440:77:20"
},
"nativeSrc": "8440:79:20",
"nodeType": "YulFunctionCall",
"src": "8440:79:20"
},
"nativeSrc": "8440:79:20",
"nodeType": "YulExpressionStatement",
"src": "8440:79:20"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "dataEnd",
"nativeSrc": "8413:7:20",
"nodeType": "YulIdentifier",
"src": "8413:7:20"
},
{
"name": "headStart",
"nativeSrc": "8422:9:20",
"nodeType": "YulIdentifier",
"src": "8422:9:20"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "8409:3:20",
"nodeType": "YulIdentifier",
"src": "8409:3:20"
},
"nativeSrc": "8409:23:20",
"nodeType": "YulFunctionCall",
"src": "8409:23:20"
},
{
"kind": "number",
"nativeSrc": "8434:2:20",
"nodeType": "YulLiteral",
"src": "8434:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "slt",
"nativeSrc": "8405:3:20",
"nodeType": "YulIdentifier",
"src": "8405:3:20"
},
"nativeSrc": "8405:32:20",
"nodeType": "YulFunctionCall",
"src": "8405:32:20"
},
"nativeSrc": "8402:119:20",
"nodeType": "YulIf",
"src": "8402:119:20"
},
{
"nativeSrc": "8531:287:20",
"nodeType": "YulBlock",
"src": "8531:287:20",
"statements": [
{
"nativeSrc": "8546:45:20",
"nodeType": "YulVariableDeclaration",
"src": "8546:45:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "8577:9:20",
"nodeType": "YulIdentifier",
"src": "8577:9:20"
},
{
"kind": "number",
"nativeSrc": "8588:1:20",
"nodeType": "YulLiteral",
"src": "8588:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "8573:3:20",
"nodeType": "YulIdentifier",
"src": "8573:3:20"
},
"nativeSrc": "8573:17:20",
"nodeType": "YulFunctionCall",
"src": "8573:17:20"
}
],
"functionName": {
"name": "calldataload",
"nativeSrc": "8560:12:20",
"nodeType": "YulIdentifier",
"src": "8560:12:20"
},
"nativeSrc": "8560:31:20",
"nodeType": "YulFunctionCall",
"src": "8560:31:20"
},
"variables": [
{
"name": "offset",
"nativeSrc": "8550:6:20",
"nodeType": "YulTypedName",
"src": "8550:6:20",
"type": ""
}
]
},
{
"body": {
"nativeSrc": "8638:83:20",
"nodeType": "YulBlock",
"src": "8638:83:20",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db",
"nativeSrc": "8640:77:20",
"nodeType": "YulIdentifier",
"src": "8640:77:20"
},
"nativeSrc": "8640:79:20",
"nodeType": "YulFunctionCall",
"src": "8640:79:20"
},
"nativeSrc": "8640:79:20",
"nodeType": "YulExpressionStatement",
"src": "8640:79:20"
}
]
},
"condition": {
"arguments": [
{
"name": "offset",
"nativeSrc": "8610:6:20",
"nodeType": "YulIdentifier",
"src": "8610:6:20"
},
{
"kind": "number",
"nativeSrc": "8618:18:20",
"nodeType": "YulLiteral",
"src": "8618:18:20",
"type": "",
"value": "0xffffffffffffffff"
}
],
"functionName": {
"name": "gt",
"nativeSrc": "8607:2:20",
"nodeType": "YulIdentifier",
"src": "8607:2:20"
},
"nativeSrc": "8607:30:20",
"nodeType": "YulFunctionCall",
"src": "8607:30:20"
},
"nativeSrc": "8604:117:20",
"nodeType": "YulIf",
"src": "8604:117:20"
},
{
"nativeSrc": "8735:73:20",
"nodeType": "YulAssignment",
"src": "8735:73:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "8780:9:20",
"nodeType": "YulIdentifier",
"src": "8780:9:20"
},
{
"name": "offset",
"nativeSrc": "8791:6:20",
"nodeType": "YulIdentifier",
"src": "8791:6:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "8776:3:20",
"nodeType": "YulIdentifier",
"src": "8776:3:20"
},
"nativeSrc": "8776:22:20",
"nodeType": "YulFunctionCall",
"src": "8776:22:20"
},
{
"name": "dataEnd",
"nativeSrc": "8800:7:20",
"nodeType": "YulIdentifier",
"src": "8800:7:20"
}
],
"functionName": {
"name": "abi_decode_t_string_memory_ptr",
"nativeSrc": "8745:30:20",
"nodeType": "YulIdentifier",
"src": "8745:30:20"
},
"nativeSrc": "8745:63:20",
"nodeType": "YulFunctionCall",
"src": "8745:63:20"
},
"variableNames": [
{
"name": "value0",
"nativeSrc": "8735:6:20",
"nodeType": "YulIdentifier",
"src": "8735:6:20"
}
]
}
]
}
]
},
"name": "abi_decode_tuple_t_string_memory_ptr",
"nativeSrc": "8316:509:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "8362:9:20",
"nodeType": "YulTypedName",
"src": "8362:9:20",
"type": ""
},
{
"name": "dataEnd",
"nativeSrc": "8373:7:20",
"nodeType": "YulTypedName",
"src": "8373:7:20",
"type": ""
}
],
"returnVariables": [
{
"name": "value0",
"nativeSrc": "8385:6:20",
"nodeType": "YulTypedName",
"src": "8385:6:20",
"type": ""
}
],
"src": "8316:509:20"
},
{
"body": {
"nativeSrc": "8920:28:20",
"nodeType": "YulBlock",
"src": "8920:28:20",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "8937:1:20",
"nodeType": "YulLiteral",
"src": "8937:1:20",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "8940:1:20",
"nodeType": "YulLiteral",
"src": "8940:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "8930:6:20",
"nodeType": "YulIdentifier",
"src": "8930:6:20"
},
"nativeSrc": "8930:12:20",
"nodeType": "YulFunctionCall",
"src": "8930:12:20"
},
"nativeSrc": "8930:12:20",
"nodeType": "YulExpressionStatement",
"src": "8930:12:20"
}
]
},
"name": "revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490",
"nativeSrc": "8831:117:20",
"nodeType": "YulFunctionDefinition",
"src": "8831:117:20"
},
{
"body": {
"nativeSrc": "9043:28:20",
"nodeType": "YulBlock",
"src": "9043:28:20",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "9060:1:20",
"nodeType": "YulLiteral",
"src": "9060:1:20",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "9063:1:20",
"nodeType": "YulLiteral",
"src": "9063:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "9053:6:20",
"nodeType": "YulIdentifier",
"src": "9053:6:20"
},
"nativeSrc": "9053:12:20",
"nodeType": "YulFunctionCall",
"src": "9053:12:20"
},
"nativeSrc": "9053:12:20",
"nodeType": "YulExpressionStatement",
"src": "9053:12:20"
}
]
},
"name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef",
"nativeSrc": "8954:117:20",
"nodeType": "YulFunctionDefinition",
"src": "8954:117:20"
},
{
"body": {
"nativeSrc": "9193:478:20",
"nodeType": "YulBlock",
"src": "9193:478:20",
"statements": [
{
"body": {
"nativeSrc": "9242:83:20",
"nodeType": "YulBlock",
"src": "9242:83:20",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d",
"nativeSrc": "9244:77:20",
"nodeType": "YulIdentifier",
"src": "9244:77:20"
},
"nativeSrc": "9244:79:20",
"nodeType": "YulFunctionCall",
"src": "9244:79:20"
},
"nativeSrc": "9244:79:20",
"nodeType": "YulExpressionStatement",
"src": "9244:79:20"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"arguments": [
{
"name": "offset",
"nativeSrc": "9221:6:20",
"nodeType": "YulIdentifier",
"src": "9221:6:20"
},
{
"kind": "number",
"nativeSrc": "9229:4:20",
"nodeType": "YulLiteral",
"src": "9229:4:20",
"type": "",
"value": "0x1f"
}
],
"functionName": {
"name": "add",
"nativeSrc": "9217:3:20",
"nodeType": "YulIdentifier",
"src": "9217:3:20"
},
"nativeSrc": "9217:17:20",
"nodeType": "YulFunctionCall",
"src": "9217:17:20"
},
{
"name": "end",
"nativeSrc": "9236:3:20",
"nodeType": "YulIdentifier",
"src": "9236:3:20"
}
],
"functionName": {
"name": "slt",
"nativeSrc": "9213:3:20",
"nodeType": "YulIdentifier",
"src": "9213:3:20"
},
"nativeSrc": "9213:27:20",
"nodeType": "YulFunctionCall",
"src": "9213:27:20"
}
],
"functionName": {
"name": "iszero",
"nativeSrc": "9206:6:20",
"nodeType": "YulIdentifier",
"src": "9206:6:20"
},
"nativeSrc": "9206:35:20",
"nodeType": "YulFunctionCall",
"src": "9206:35:20"
},
"nativeSrc": "9203:122:20",
"nodeType": "YulIf",
"src": "9203:122:20"
},
{
"nativeSrc": "9334:30:20",
"nodeType": "YulAssignment",
"src": "9334:30:20",
"value": {
"arguments": [
{
"name": "offset",
"nativeSrc": "9357:6:20",
"nodeType": "YulIdentifier",
"src": "9357:6:20"
}
],
"functionName": {
"name": "calldataload",
"nativeSrc": "9344:12:20",
"nodeType": "YulIdentifier",
"src": "9344:12:20"
},
"nativeSrc": "9344:20:20",
"nodeType": "YulFunctionCall",
"src": "9344:20:20"
},
"variableNames": [
{
"name": "length",
"nativeSrc": "9334:6:20",
"nodeType": "YulIdentifier",
"src": "9334:6:20"
}
]
},
{
"body": {
"nativeSrc": "9407:83:20",
"nodeType": "YulBlock",
"src": "9407:83:20",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_15abf5612cd996bc235ba1e55a4a30ac60e6bb601ff7ba4ad3f179b6be8d0490",
"nativeSrc": "9409:77:20",
"nodeType": "YulIdentifier",
"src": "9409:77:20"
},
"nativeSrc": "9409:79:20",
"nodeType": "YulFunctionCall",
"src": "9409:79:20"
},
"nativeSrc": "9409:79:20",
"nodeType": "YulExpressionStatement",
"src": "9409:79:20"
}
]
},
"condition": {
"arguments": [
{
"name": "length",
"nativeSrc": "9379:6:20",
"nodeType": "YulIdentifier",
"src": "9379:6:20"
},
{
"kind": "number",
"nativeSrc": "9387:18:20",
"nodeType": "YulLiteral",
"src": "9387:18:20",
"type": "",
"value": "0xffffffffffffffff"
}
],
"functionName": {
"name": "gt",
"nativeSrc": "9376:2:20",
"nodeType": "YulIdentifier",
"src": "9376:2:20"
},
"nativeSrc": "9376:30:20",
"nodeType": "YulFunctionCall",
"src": "9376:30:20"
},
"nativeSrc": "9373:117:20",
"nodeType": "YulIf",
"src": "9373:117:20"
},
{
"nativeSrc": "9499:29:20",
"nodeType": "YulAssignment",
"src": "9499:29:20",
"value": {
"arguments": [
{
"name": "offset",
"nativeSrc": "9515:6:20",
"nodeType": "YulIdentifier",
"src": "9515:6:20"
},
{
"kind": "number",
"nativeSrc": "9523:4:20",
"nodeType": "YulLiteral",
"src": "9523:4:20",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "9511:3:20",
"nodeType": "YulIdentifier",
"src": "9511:3:20"
},
"nativeSrc": "9511:17:20",
"nodeType": "YulFunctionCall",
"src": "9511:17:20"
},
"variableNames": [
{
"name": "arrayPos",
"nativeSrc": "9499:8:20",
"nodeType": "YulIdentifier",
"src": "9499:8:20"
}
]
},
{
"body": {
"nativeSrc": "9582:83:20",
"nodeType": "YulBlock",
"src": "9582:83:20",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_81385d8c0b31fffe14be1da910c8bd3a80be4cfa248e04f42ec0faea3132a8ef",
"nativeSrc": "9584:77:20",
"nodeType": "YulIdentifier",
"src": "9584:77:20"
},
"nativeSrc": "9584:79:20",
"nodeType": "YulFunctionCall",
"src": "9584:79:20"
},
"nativeSrc": "9584:79:20",
"nodeType": "YulExpressionStatement",
"src": "9584:79:20"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "arrayPos",
"nativeSrc": "9547:8:20",
"nodeType": "YulIdentifier",
"src": "9547:8:20"
},
{
"arguments": [
{
"name": "length",
"nativeSrc": "9561:6:20",
"nodeType": "YulIdentifier",
"src": "9561:6:20"
},
{
"kind": "number",
"nativeSrc": "9569:4:20",
"nodeType": "YulLiteral",
"src": "9569:4:20",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "mul",
"nativeSrc": "9557:3:20",
"nodeType": "YulIdentifier",
"src": "9557:3:20"
},
"nativeSrc": "9557:17:20",
"nodeType": "YulFunctionCall",
"src": "9557:17:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "9543:3:20",
"nodeType": "YulIdentifier",
"src": "9543:3:20"
},
"nativeSrc": "9543:32:20",
"nodeType": "YulFunctionCall",
"src": "9543:32:20"
},
{
"name": "end",
"nativeSrc": "9577:3:20",
"nodeType": "YulIdentifier",
"src": "9577:3:20"
}
],
"functionName": {
"name": "gt",
"nativeSrc": "9540:2:20",
"nodeType": "YulIdentifier",
"src": "9540:2:20"
},
"nativeSrc": "9540:41:20",
"nodeType": "YulFunctionCall",
"src": "9540:41:20"
},
"nativeSrc": "9537:128:20",
"nodeType": "YulIf",
"src": "9537:128:20"
}
]
},
"name": "abi_decode_t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr",
"nativeSrc": "9092:579:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nativeSrc": "9160:6:20",
"nodeType": "YulTypedName",
"src": "9160:6:20",
"type": ""
},
{
"name": "end",
"nativeSrc": "9168:3:20",
"nodeType": "YulTypedName",
"src": "9168:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "arrayPos",
"nativeSrc": "9176:8:20",
"nodeType": "YulTypedName",
"src": "9176:8:20",
"type": ""
},
{
"name": "length",
"nativeSrc": "9186:6:20",
"nodeType": "YulTypedName",
"src": "9186:6:20",
"type": ""
}
],
"src": "9092:579:20"
},
{
"body": {
"nativeSrc": "9789:469:20",
"nodeType": "YulBlock",
"src": "9789:469:20",
"statements": [
{
"body": {
"nativeSrc": "9835:83:20",
"nodeType": "YulBlock",
"src": "9835:83:20",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nativeSrc": "9837:77:20",
"nodeType": "YulIdentifier",
"src": "9837:77:20"
},
"nativeSrc": "9837:79:20",
"nodeType": "YulFunctionCall",
"src": "9837:79:20"
},
"nativeSrc": "9837:79:20",
"nodeType": "YulExpressionStatement",
"src": "9837:79:20"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "dataEnd",
"nativeSrc": "9810:7:20",
"nodeType": "YulIdentifier",
"src": "9810:7:20"
},
{
"name": "headStart",
"nativeSrc": "9819:9:20",
"nodeType": "YulIdentifier",
"src": "9819:9:20"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "9806:3:20",
"nodeType": "YulIdentifier",
"src": "9806:3:20"
},
"nativeSrc": "9806:23:20",
"nodeType": "YulFunctionCall",
"src": "9806:23:20"
},
{
"kind": "number",
"nativeSrc": "9831:2:20",
"nodeType": "YulLiteral",
"src": "9831:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "slt",
"nativeSrc": "9802:3:20",
"nodeType": "YulIdentifier",
"src": "9802:3:20"
},
"nativeSrc": "9802:32:20",
"nodeType": "YulFunctionCall",
"src": "9802:32:20"
},
"nativeSrc": "9799:119:20",
"nodeType": "YulIf",
"src": "9799:119:20"
},
{
"nativeSrc": "9928:323:20",
"nodeType": "YulBlock",
"src": "9928:323:20",
"statements": [
{
"nativeSrc": "9943:45:20",
"nodeType": "YulVariableDeclaration",
"src": "9943:45:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "9974:9:20",
"nodeType": "YulIdentifier",
"src": "9974:9:20"
},
{
"kind": "number",
"nativeSrc": "9985:1:20",
"nodeType": "YulLiteral",
"src": "9985:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "9970:3:20",
"nodeType": "YulIdentifier",
"src": "9970:3:20"
},
"nativeSrc": "9970:17:20",
"nodeType": "YulFunctionCall",
"src": "9970:17:20"
}
],
"functionName": {
"name": "calldataload",
"nativeSrc": "9957:12:20",
"nodeType": "YulIdentifier",
"src": "9957:12:20"
},
"nativeSrc": "9957:31:20",
"nodeType": "YulFunctionCall",
"src": "9957:31:20"
},
"variables": [
{
"name": "offset",
"nativeSrc": "9947:6:20",
"nodeType": "YulTypedName",
"src": "9947:6:20",
"type": ""
}
]
},
{
"body": {
"nativeSrc": "10035:83:20",
"nodeType": "YulBlock",
"src": "10035:83:20",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db",
"nativeSrc": "10037:77:20",
"nodeType": "YulIdentifier",
"src": "10037:77:20"
},
"nativeSrc": "10037:79:20",
"nodeType": "YulFunctionCall",
"src": "10037:79:20"
},
"nativeSrc": "10037:79:20",
"nodeType": "YulExpressionStatement",
"src": "10037:79:20"
}
]
},
"condition": {
"arguments": [
{
"name": "offset",
"nativeSrc": "10007:6:20",
"nodeType": "YulIdentifier",
"src": "10007:6:20"
},
{
"kind": "number",
"nativeSrc": "10015:18:20",
"nodeType": "YulLiteral",
"src": "10015:18:20",
"type": "",
"value": "0xffffffffffffffff"
}
],
"functionName": {
"name": "gt",
"nativeSrc": "10004:2:20",
"nodeType": "YulIdentifier",
"src": "10004:2:20"
},
"nativeSrc": "10004:30:20",
"nodeType": "YulFunctionCall",
"src": "10004:30:20"
},
"nativeSrc": "10001:117:20",
"nodeType": "YulIf",
"src": "10001:117:20"
},
{
"nativeSrc": "10132:109:20",
"nodeType": "YulAssignment",
"src": "10132:109:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "10213:9:20",
"nodeType": "YulIdentifier",
"src": "10213:9:20"
},
{
"name": "offset",
"nativeSrc": "10224:6:20",
"nodeType": "YulIdentifier",
"src": "10224:6:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "10209:3:20",
"nodeType": "YulIdentifier",
"src": "10209:3:20"
},
"nativeSrc": "10209:22:20",
"nodeType": "YulFunctionCall",
"src": "10209:22:20"
},
{
"name": "dataEnd",
"nativeSrc": "10233:7:20",
"nodeType": "YulIdentifier",
"src": "10233:7:20"
}
],
"functionName": {
"name": "abi_decode_t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr",
"nativeSrc": "10150:58:20",
"nodeType": "YulIdentifier",
"src": "10150:58:20"
},
"nativeSrc": "10150:91:20",
"nodeType": "YulFunctionCall",
"src": "10150:91:20"
},
"variableNames": [
{
"name": "value0",
"nativeSrc": "10132:6:20",
"nodeType": "YulIdentifier",
"src": "10132:6:20"
},
{
"name": "value1",
"nativeSrc": "10140:6:20",
"nodeType": "YulIdentifier",
"src": "10140:6:20"
}
]
}
]
}
]
},
"name": "abi_decode_tuple_t_array$_t_bytes_calldata_ptr_$dyn_calldata_ptr",
"nativeSrc": "9677:581:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "9751:9:20",
"nodeType": "YulTypedName",
"src": "9751:9:20",
"type": ""
},
{
"name": "dataEnd",
"nativeSrc": "9762:7:20",
"nodeType": "YulTypedName",
"src": "9762:7:20",
"type": ""
}
],
"returnVariables": [
{
"name": "value0",
"nativeSrc": "9774:6:20",
"nodeType": "YulTypedName",
"src": "9774:6:20",
"type": ""
},
{
"name": "value1",
"nativeSrc": "9782:6:20",
"nodeType": "YulTypedName",
"src": "9782:6:20",
"type": ""
}
],
"src": "9677:581:20"
},
{
"body": {
"nativeSrc": "10347:40:20",
"nodeType": "YulBlock",
"src": "10347:40:20",
"statements": [
{
"nativeSrc": "10358:22:20",
"nodeType": "YulAssignment",
"src": "10358:22:20",
"value": {
"arguments": [
{
"name": "value",
"nativeSrc": "10374:5:20",
"nodeType": "YulIdentifier",
"src": "10374:5:20"
}
],
"functionName": {
"name": "mload",
"nativeSrc": "10368:5:20",
"nodeType": "YulIdentifier",
"src": "10368:5:20"
},
"nativeSrc": "10368:12:20",
"nodeType": "YulFunctionCall",
"src": "10368:12:20"
},
"variableNames": [
{
"name": "length",
"nativeSrc": "10358:6:20",
"nodeType": "YulIdentifier",
"src": "10358:6:20"
}
]
}
]
},
"name": "array_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr",
"nativeSrc": "10264:123:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "10330:5:20",
"nodeType": "YulTypedName",
"src": "10330:5:20",
"type": ""
}
],
"returnVariables": [
{
"name": "length",
"nativeSrc": "10340:6:20",
"nodeType": "YulTypedName",
"src": "10340:6:20",
"type": ""
}
],
"src": "10264:123:20"
},
{
"body": {
"nativeSrc": "10513:73:20",
"nodeType": "YulBlock",
"src": "10513:73:20",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "10530:3:20",
"nodeType": "YulIdentifier",
"src": "10530:3:20"
},
{
"name": "length",
"nativeSrc": "10535:6:20",
"nodeType": "YulIdentifier",
"src": "10535:6:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "10523:6:20",
"nodeType": "YulIdentifier",
"src": "10523:6:20"
},
"nativeSrc": "10523:19:20",
"nodeType": "YulFunctionCall",
"src": "10523:19:20"
},
"nativeSrc": "10523:19:20",
"nodeType": "YulExpressionStatement",
"src": "10523:19:20"
},
{
"nativeSrc": "10551:29:20",
"nodeType": "YulAssignment",
"src": "10551:29:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "10570:3:20",
"nodeType": "YulIdentifier",
"src": "10570:3:20"
},
{
"kind": "number",
"nativeSrc": "10575:4:20",
"nodeType": "YulLiteral",
"src": "10575:4:20",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "10566:3:20",
"nodeType": "YulIdentifier",
"src": "10566:3:20"
},
"nativeSrc": "10566:14:20",
"nodeType": "YulFunctionCall",
"src": "10566:14:20"
},
"variableNames": [
{
"name": "updated_pos",
"nativeSrc": "10551:11:20",
"nodeType": "YulIdentifier",
"src": "10551:11:20"
}
]
}
]
},
"name": "array_storeLengthForEncoding_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack",
"nativeSrc": "10393:193:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nativeSrc": "10485:3:20",
"nodeType": "YulTypedName",
"src": "10485:3:20",
"type": ""
},
{
"name": "length",
"nativeSrc": "10490:6:20",
"nodeType": "YulTypedName",
"src": "10490:6:20",
"type": ""
}
],
"returnVariables": [
{
"name": "updated_pos",
"nativeSrc": "10501:11:20",
"nodeType": "YulTypedName",
"src": "10501:11:20",
"type": ""
}
],
"src": "10393:193:20"
},
{
"body": {
"nativeSrc": "10673:60:20",
"nodeType": "YulBlock",
"src": "10673:60:20",
"statements": [
{
"nativeSrc": "10683:11:20",
"nodeType": "YulAssignment",
"src": "10683:11:20",
"value": {
"name": "ptr",
"nativeSrc": "10691:3:20",
"nodeType": "YulIdentifier",
"src": "10691:3:20"
},
"variableNames": [
{
"name": "data",
"nativeSrc": "10683:4:20",
"nodeType": "YulIdentifier",
"src": "10683:4:20"
}
]
},
{
"nativeSrc": "10704:22:20",
"nodeType": "YulAssignment",
"src": "10704:22:20",
"value": {
"arguments": [
{
"name": "ptr",
"nativeSrc": "10716:3:20",
"nodeType": "YulIdentifier",
"src": "10716:3:20"
},
{
"kind": "number",
"nativeSrc": "10721:4:20",
"nodeType": "YulLiteral",
"src": "10721:4:20",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "10712:3:20",
"nodeType": "YulIdentifier",
"src": "10712:3:20"
},
"nativeSrc": "10712:14:20",
"nodeType": "YulFunctionCall",
"src": "10712:14:20"
},
"variableNames": [
{
"name": "data",
"nativeSrc": "10704:4:20",
"nodeType": "YulIdentifier",
"src": "10704:4:20"
}
]
}
]
},
"name": "array_dataslot_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr",
"nativeSrc": "10592:141:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "ptr",
"nativeSrc": "10660:3:20",
"nodeType": "YulTypedName",
"src": "10660:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "data",
"nativeSrc": "10668:4:20",
"nodeType": "YulTypedName",
"src": "10668:4:20",
"type": ""
}
],
"src": "10592:141:20"
},
{
"body": {
"nativeSrc": "10797:40:20",
"nodeType": "YulBlock",
"src": "10797:40:20",
"statements": [
{
"nativeSrc": "10808:22:20",
"nodeType": "YulAssignment",
"src": "10808:22:20",
"value": {
"arguments": [
{
"name": "value",
"nativeSrc": "10824:5:20",
"nodeType": "YulIdentifier",
"src": "10824:5:20"
}
],
"functionName": {
"name": "mload",
"nativeSrc": "10818:5:20",
"nodeType": "YulIdentifier",
"src": "10818:5:20"
},
"nativeSrc": "10818:12:20",
"nodeType": "YulFunctionCall",
"src": "10818:12:20"
},
"variableNames": [
{
"name": "length",
"nativeSrc": "10808:6:20",
"nodeType": "YulIdentifier",
"src": "10808:6:20"
}
]
}
]
},
"name": "array_length_t_bytes_memory_ptr",
"nativeSrc": "10739:98:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "10780:5:20",
"nodeType": "YulTypedName",
"src": "10780:5:20",
"type": ""
}
],
"returnVariables": [
{
"name": "length",
"nativeSrc": "10790:6:20",
"nodeType": "YulTypedName",
"src": "10790:6:20",
"type": ""
}
],
"src": "10739:98:20"
},
{
"body": {
"nativeSrc": "10928:73:20",
"nodeType": "YulBlock",
"src": "10928:73:20",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "10945:3:20",
"nodeType": "YulIdentifier",
"src": "10945:3:20"
},
{
"name": "length",
"nativeSrc": "10950:6:20",
"nodeType": "YulIdentifier",
"src": "10950:6:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "10938:6:20",
"nodeType": "YulIdentifier",
"src": "10938:6:20"
},
"nativeSrc": "10938:19:20",
"nodeType": "YulFunctionCall",
"src": "10938:19:20"
},
"nativeSrc": "10938:19:20",
"nodeType": "YulExpressionStatement",
"src": "10938:19:20"
},
{
"nativeSrc": "10966:29:20",
"nodeType": "YulAssignment",
"src": "10966:29:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "10985:3:20",
"nodeType": "YulIdentifier",
"src": "10985:3:20"
},
{
"kind": "number",
"nativeSrc": "10990:4:20",
"nodeType": "YulLiteral",
"src": "10990:4:20",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "10981:3:20",
"nodeType": "YulIdentifier",
"src": "10981:3:20"
},
"nativeSrc": "10981:14:20",
"nodeType": "YulFunctionCall",
"src": "10981:14:20"
},
"variableNames": [
{
"name": "updated_pos",
"nativeSrc": "10966:11:20",
"nodeType": "YulIdentifier",
"src": "10966:11:20"
}
]
}
]
},
"name": "array_storeLengthForEncoding_t_bytes_memory_ptr",
"nativeSrc": "10843:158:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nativeSrc": "10900:3:20",
"nodeType": "YulTypedName",
"src": "10900:3:20",
"type": ""
},
{
"name": "length",
"nativeSrc": "10905:6:20",
"nodeType": "YulTypedName",
"src": "10905:6:20",
"type": ""
}
],
"returnVariables": [
{
"name": "updated_pos",
"nativeSrc": "10916:11:20",
"nodeType": "YulTypedName",
"src": "10916:11:20",
"type": ""
}
],
"src": "10843:158:20"
},
{
"body": {
"nativeSrc": "11087:273:20",
"nodeType": "YulBlock",
"src": "11087:273:20",
"statements": [
{
"nativeSrc": "11097:52:20",
"nodeType": "YulVariableDeclaration",
"src": "11097:52:20",
"value": {
"arguments": [
{
"name": "value",
"nativeSrc": "11143:5:20",
"nodeType": "YulIdentifier",
"src": "11143:5:20"
}
],
"functionName": {
"name": "array_length_t_bytes_memory_ptr",
"nativeSrc": "11111:31:20",
"nodeType": "YulIdentifier",
"src": "11111:31:20"
},
"nativeSrc": "11111:38:20",
"nodeType": "YulFunctionCall",
"src": "11111:38:20"
},
"variables": [
{
"name": "length",
"nativeSrc": "11101:6:20",
"nodeType": "YulTypedName",
"src": "11101:6:20",
"type": ""
}
]
},
{
"nativeSrc": "11158:67:20",
"nodeType": "YulAssignment",
"src": "11158:67:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "11213:3:20",
"nodeType": "YulIdentifier",
"src": "11213:3:20"
},
{
"name": "length",
"nativeSrc": "11218:6:20",
"nodeType": "YulIdentifier",
"src": "11218:6:20"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_bytes_memory_ptr",
"nativeSrc": "11165:47:20",
"nodeType": "YulIdentifier",
"src": "11165:47:20"
},
"nativeSrc": "11165:60:20",
"nodeType": "YulFunctionCall",
"src": "11165:60:20"
},
"variableNames": [
{
"name": "pos",
"nativeSrc": "11158:3:20",
"nodeType": "YulIdentifier",
"src": "11158:3:20"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nativeSrc": "11273:5:20",
"nodeType": "YulIdentifier",
"src": "11273:5:20"
},
{
"kind": "number",
"nativeSrc": "11280:4:20",
"nodeType": "YulLiteral",
"src": "11280:4:20",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "11269:3:20",
"nodeType": "YulIdentifier",
"src": "11269:3:20"
},
"nativeSrc": "11269:16:20",
"nodeType": "YulFunctionCall",
"src": "11269:16:20"
},
{
"name": "pos",
"nativeSrc": "11287:3:20",
"nodeType": "YulIdentifier",
"src": "11287:3:20"
},
{
"name": "length",
"nativeSrc": "11292:6:20",
"nodeType": "YulIdentifier",
"src": "11292:6:20"
}
],
"functionName": {
"name": "copy_memory_to_memory_with_cleanup",
"nativeSrc": "11234:34:20",
"nodeType": "YulIdentifier",
"src": "11234:34:20"
},
"nativeSrc": "11234:65:20",
"nodeType": "YulFunctionCall",
"src": "11234:65:20"
},
"nativeSrc": "11234:65:20",
"nodeType": "YulExpressionStatement",
"src": "11234:65:20"
},
{
"nativeSrc": "11308:46:20",
"nodeType": "YulAssignment",
"src": "11308:46:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "11319:3:20",
"nodeType": "YulIdentifier",
"src": "11319:3:20"
},
{
"arguments": [
{
"name": "length",
"nativeSrc": "11346:6:20",
"nodeType": "YulIdentifier",
"src": "11346:6:20"
}
],
"functionName": {
"name": "round_up_to_mul_of_32",
"nativeSrc": "11324:21:20",
"nodeType": "YulIdentifier",
"src": "11324:21:20"
},
"nativeSrc": "11324:29:20",
"nodeType": "YulFunctionCall",
"src": "11324:29:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "11315:3:20",
"nodeType": "YulIdentifier",
"src": "11315:3:20"
},
"nativeSrc": "11315:39:20",
"nodeType": "YulFunctionCall",
"src": "11315:39:20"
},
"variableNames": [
{
"name": "end",
"nativeSrc": "11308:3:20",
"nodeType": "YulIdentifier",
"src": "11308:3:20"
}
]
}
]
},
"name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr",
"nativeSrc": "11007:353:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "11068:5:20",
"nodeType": "YulTypedName",
"src": "11068:5:20",
"type": ""
},
{
"name": "pos",
"nativeSrc": "11075:3:20",
"nodeType": "YulTypedName",
"src": "11075:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nativeSrc": "11083:3:20",
"nodeType": "YulTypedName",
"src": "11083:3:20",
"type": ""
}
],
"src": "11007:353:20"
},
{
"body": {
"nativeSrc": "11464:94:20",
"nodeType": "YulBlock",
"src": "11464:94:20",
"statements": [
{
"nativeSrc": "11474:78:20",
"nodeType": "YulAssignment",
"src": "11474:78:20",
"value": {
"arguments": [
{
"name": "value0",
"nativeSrc": "11540:6:20",
"nodeType": "YulIdentifier",
"src": "11540:6:20"
},
{
"name": "pos",
"nativeSrc": "11548:3:20",
"nodeType": "YulIdentifier",
"src": "11548:3:20"
}
],
"functionName": {
"name": "abi_encode_t_bytes_memory_ptr_to_t_bytes_memory_ptr",
"nativeSrc": "11488:51:20",
"nodeType": "YulIdentifier",
"src": "11488:51:20"
},
"nativeSrc": "11488:64:20",
"nodeType": "YulFunctionCall",
"src": "11488:64:20"
},
"variableNames": [
{
"name": "updatedPos",
"nativeSrc": "11474:10:20",
"nodeType": "YulIdentifier",
"src": "11474:10:20"
}
]
}
]
},
"name": "abi_encodeUpdatedPos_t_bytes_memory_ptr_to_t_bytes_memory_ptr",
"nativeSrc": "11366:192:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value0",
"nativeSrc": "11437:6:20",
"nodeType": "YulTypedName",
"src": "11437:6:20",
"type": ""
},
{
"name": "pos",
"nativeSrc": "11445:3:20",
"nodeType": "YulTypedName",
"src": "11445:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "updatedPos",
"nativeSrc": "11453:10:20",
"nodeType": "YulTypedName",
"src": "11453:10:20",
"type": ""
}
],
"src": "11366:192:20"
},
{
"body": {
"nativeSrc": "11648:38:20",
"nodeType": "YulBlock",
"src": "11648:38:20",
"statements": [
{
"nativeSrc": "11658:22:20",
"nodeType": "YulAssignment",
"src": "11658:22:20",
"value": {
"arguments": [
{
"name": "ptr",
"nativeSrc": "11670:3:20",
"nodeType": "YulIdentifier",
"src": "11670:3:20"
},
{
"kind": "number",
"nativeSrc": "11675:4:20",
"nodeType": "YulLiteral",
"src": "11675:4:20",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "11666:3:20",
"nodeType": "YulIdentifier",
"src": "11666:3:20"
},
"nativeSrc": "11666:14:20",
"nodeType": "YulFunctionCall",
"src": "11666:14:20"
},
"variableNames": [
{
"name": "next",
"nativeSrc": "11658:4:20",
"nodeType": "YulIdentifier",
"src": "11658:4:20"
}
]
}
]
},
"name": "array_nextElement_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr",
"nativeSrc": "11564:122:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "ptr",
"nativeSrc": "11635:3:20",
"nodeType": "YulTypedName",
"src": "11635:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "next",
"nativeSrc": "11643:4:20",
"nodeType": "YulTypedName",
"src": "11643:4:20",
"type": ""
}
],
"src": "11564:122:20"
},
{
"body": {
"nativeSrc": "11860:841:20",
"nodeType": "YulBlock",
"src": "11860:841:20",
"statements": [
{
"nativeSrc": "11870:77:20",
"nodeType": "YulVariableDeclaration",
"src": "11870:77:20",
"value": {
"arguments": [
{
"name": "value",
"nativeSrc": "11941:5:20",
"nodeType": "YulIdentifier",
"src": "11941:5:20"
}
],
"functionName": {
"name": "array_length_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr",
"nativeSrc": "11884:56:20",
"nodeType": "YulIdentifier",
"src": "11884:56:20"
},
"nativeSrc": "11884:63:20",
"nodeType": "YulFunctionCall",
"src": "11884:63:20"
},
"variables": [
{
"name": "length",
"nativeSrc": "11874:6:20",
"nodeType": "YulTypedName",
"src": "11874:6:20",
"type": ""
}
]
},
{
"nativeSrc": "11956:102:20",
"nodeType": "YulAssignment",
"src": "11956:102:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "12046:3:20",
"nodeType": "YulIdentifier",
"src": "12046:3:20"
},
{
"name": "length",
"nativeSrc": "12051:6:20",
"nodeType": "YulIdentifier",
"src": "12051:6:20"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack",
"nativeSrc": "11963:82:20",
"nodeType": "YulIdentifier",
"src": "11963:82:20"
},
"nativeSrc": "11963:95:20",
"nodeType": "YulFunctionCall",
"src": "11963:95:20"
},
"variableNames": [
{
"name": "pos",
"nativeSrc": "11956:3:20",
"nodeType": "YulIdentifier",
"src": "11956:3:20"
}
]
},
{
"nativeSrc": "12067:20:20",
"nodeType": "YulVariableDeclaration",
"src": "12067:20:20",
"value": {
"name": "pos",
"nativeSrc": "12084:3:20",
"nodeType": "YulIdentifier",
"src": "12084:3:20"
},
"variables": [
{
"name": "headStart",
"nativeSrc": "12071:9:20",
"nodeType": "YulTypedName",
"src": "12071:9:20",
"type": ""
}
]
},
{
"nativeSrc": "12096:39:20",
"nodeType": "YulVariableDeclaration",
"src": "12096:39:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "12112:3:20",
"nodeType": "YulIdentifier",
"src": "12112:3:20"
},
{
"arguments": [
{
"name": "length",
"nativeSrc": "12121:6:20",
"nodeType": "YulIdentifier",
"src": "12121:6:20"
},
{
"kind": "number",
"nativeSrc": "12129:4:20",
"nodeType": "YulLiteral",
"src": "12129:4:20",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "mul",
"nativeSrc": "12117:3:20",
"nodeType": "YulIdentifier",
"src": "12117:3:20"
},
"nativeSrc": "12117:17:20",
"nodeType": "YulFunctionCall",
"src": "12117:17:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "12108:3:20",
"nodeType": "YulIdentifier",
"src": "12108:3:20"
},
"nativeSrc": "12108:27:20",
"nodeType": "YulFunctionCall",
"src": "12108:27:20"
},
"variables": [
{
"name": "tail",
"nativeSrc": "12100:4:20",
"nodeType": "YulTypedName",
"src": "12100:4:20",
"type": ""
}
]
},
{
"nativeSrc": "12144:80:20",
"nodeType": "YulVariableDeclaration",
"src": "12144:80:20",
"value": {
"arguments": [
{
"name": "value",
"nativeSrc": "12218:5:20",
"nodeType": "YulIdentifier",
"src": "12218:5:20"
}
],
"functionName": {
"name": "array_dataslot_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr",
"nativeSrc": "12159:58:20",
"nodeType": "YulIdentifier",
"src": "12159:58:20"
},
"nativeSrc": "12159:65:20",
"nodeType": "YulFunctionCall",
"src": "12159:65:20"
},
"variables": [
{
"name": "baseRef",
"nativeSrc": "12148:7:20",
"nodeType": "YulTypedName",
"src": "12148:7:20",
"type": ""
}
]
},
{
"nativeSrc": "12233:21:20",
"nodeType": "YulVariableDeclaration",
"src": "12233:21:20",
"value": {
"name": "baseRef",
"nativeSrc": "12247:7:20",
"nodeType": "YulIdentifier",
"src": "12247:7:20"
},
"variables": [
{
"name": "srcPtr",
"nativeSrc": "12237:6:20",
"nodeType": "YulTypedName",
"src": "12237:6:20",
"type": ""
}
]
},
{
"body": {
"nativeSrc": "12323:333:20",
"nodeType": "YulBlock",
"src": "12323:333:20",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "12344:3:20",
"nodeType": "YulIdentifier",
"src": "12344:3:20"
},
{
"arguments": [
{
"name": "tail",
"nativeSrc": "12353:4:20",
"nodeType": "YulIdentifier",
"src": "12353:4:20"
},
{
"name": "headStart",
"nativeSrc": "12359:9:20",
"nodeType": "YulIdentifier",
"src": "12359:9:20"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "12349:3:20",
"nodeType": "YulIdentifier",
"src": "12349:3:20"
},
"nativeSrc": "12349:20:20",
"nodeType": "YulFunctionCall",
"src": "12349:20:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "12337:6:20",
"nodeType": "YulIdentifier",
"src": "12337:6:20"
},
"nativeSrc": "12337:33:20",
"nodeType": "YulFunctionCall",
"src": "12337:33:20"
},
"nativeSrc": "12337:33:20",
"nodeType": "YulExpressionStatement",
"src": "12337:33:20"
},
{
"nativeSrc": "12383:34:20",
"nodeType": "YulVariableDeclaration",
"src": "12383:34:20",
"value": {
"arguments": [
{
"name": "srcPtr",
"nativeSrc": "12410:6:20",
"nodeType": "YulIdentifier",
"src": "12410:6:20"
}
],
"functionName": {
"name": "mload",
"nativeSrc": "12404:5:20",
"nodeType": "YulIdentifier",
"src": "12404:5:20"
},
"nativeSrc": "12404:13:20",
"nodeType": "YulFunctionCall",
"src": "12404:13:20"
},
"variables": [
{
"name": "elementValue0",
"nativeSrc": "12387:13:20",
"nodeType": "YulTypedName",
"src": "12387:13:20",
"type": ""
}
]
},
{
"nativeSrc": "12430:90:20",
"nodeType": "YulAssignment",
"src": "12430:90:20",
"value": {
"arguments": [
{
"name": "elementValue0",
"nativeSrc": "12500:13:20",
"nodeType": "YulIdentifier",
"src": "12500:13:20"
},
{
"name": "tail",
"nativeSrc": "12515:4:20",
"nodeType": "YulIdentifier",
"src": "12515:4:20"
}
],
"functionName": {
"name": "abi_encodeUpdatedPos_t_bytes_memory_ptr_to_t_bytes_memory_ptr",
"nativeSrc": "12438:61:20",
"nodeType": "YulIdentifier",
"src": "12438:61:20"
},
"nativeSrc": "12438:82:20",
"nodeType": "YulFunctionCall",
"src": "12438:82:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "12430:4:20",
"nodeType": "YulIdentifier",
"src": "12430:4:20"
}
]
},
{
"nativeSrc": "12533:79:20",
"nodeType": "YulAssignment",
"src": "12533:79:20",
"value": {
"arguments": [
{
"name": "srcPtr",
"nativeSrc": "12605:6:20",
"nodeType": "YulIdentifier",
"src": "12605:6:20"
}
],
"functionName": {
"name": "array_nextElement_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr",
"nativeSrc": "12543:61:20",
"nodeType": "YulIdentifier",
"src": "12543:61:20"
},
"nativeSrc": "12543:69:20",
"nodeType": "YulFunctionCall",
"src": "12543:69:20"
},
"variableNames": [
{
"name": "srcPtr",
"nativeSrc": "12533:6:20",
"nodeType": "YulIdentifier",
"src": "12533:6:20"
}
]
},
{
"nativeSrc": "12625:21:20",
"nodeType": "YulAssignment",
"src": "12625:21:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "12636:3:20",
"nodeType": "YulIdentifier",
"src": "12636:3:20"
},
{
"kind": "number",
"nativeSrc": "12641:4:20",
"nodeType": "YulLiteral",
"src": "12641:4:20",
"type": "",
"value": "0x20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "12632:3:20",
"nodeType": "YulIdentifier",
"src": "12632:3:20"
},
"nativeSrc": "12632:14:20",
"nodeType": "YulFunctionCall",
"src": "12632:14:20"
},
"variableNames": [
{
"name": "pos",
"nativeSrc": "12625:3:20",
"nodeType": "YulIdentifier",
"src": "12625:3:20"
}
]
}
]
},
"condition": {
"arguments": [
{
"name": "i",
"nativeSrc": "12285:1:20",
"nodeType": "YulIdentifier",
"src": "12285:1:20"
},
{
"name": "length",
"nativeSrc": "12288:6:20",
"nodeType": "YulIdentifier",
"src": "12288:6:20"
}
],
"functionName": {
"name": "lt",
"nativeSrc": "12282:2:20",
"nodeType": "YulIdentifier",
"src": "12282:2:20"
},
"nativeSrc": "12282:13:20",
"nodeType": "YulFunctionCall",
"src": "12282:13:20"
},
"nativeSrc": "12263:393:20",
"nodeType": "YulForLoop",
"post": {
"nativeSrc": "12296:18:20",
"nodeType": "YulBlock",
"src": "12296:18:20",
"statements": [
{
"nativeSrc": "12298:14:20",
"nodeType": "YulAssignment",
"src": "12298:14:20",
"value": {
"arguments": [
{
"name": "i",
"nativeSrc": "12307:1:20",
"nodeType": "YulIdentifier",
"src": "12307:1:20"
},
{
"kind": "number",
"nativeSrc": "12310:1:20",
"nodeType": "YulLiteral",
"src": "12310:1:20",
"type": "",
"value": "1"
}
],
"functionName": {
"name": "add",
"nativeSrc": "12303:3:20",
"nodeType": "YulIdentifier",
"src": "12303:3:20"
},
"nativeSrc": "12303:9:20",
"nodeType": "YulFunctionCall",
"src": "12303:9:20"
},
"variableNames": [
{
"name": "i",
"nativeSrc": "12298:1:20",
"nodeType": "YulIdentifier",
"src": "12298:1:20"
}
]
}
]
},
"pre": {
"nativeSrc": "12267:14:20",
"nodeType": "YulBlock",
"src": "12267:14:20",
"statements": [
{
"nativeSrc": "12269:10:20",
"nodeType": "YulVariableDeclaration",
"src": "12269:10:20",
"value": {
"kind": "number",
"nativeSrc": "12278:1:20",
"nodeType": "YulLiteral",
"src": "12278:1:20",
"type": "",
"value": "0"
},
"variables": [
{
"name": "i",
"nativeSrc": "12273:1:20",
"nodeType": "YulTypedName",
"src": "12273:1:20",
"type": ""
}
]
}
]
},
"src": "12263:393:20"
},
{
"nativeSrc": "12665:11:20",
"nodeType": "YulAssignment",
"src": "12665:11:20",
"value": {
"name": "tail",
"nativeSrc": "12672:4:20",
"nodeType": "YulIdentifier",
"src": "12672:4:20"
},
"variableNames": [
{
"name": "pos",
"nativeSrc": "12665:3:20",
"nodeType": "YulIdentifier",
"src": "12665:3:20"
}
]
},
{
"nativeSrc": "12685:10:20",
"nodeType": "YulAssignment",
"src": "12685:10:20",
"value": {
"name": "pos",
"nativeSrc": "12692:3:20",
"nodeType": "YulIdentifier",
"src": "12692:3:20"
},
"variableNames": [
{
"name": "end",
"nativeSrc": "12685:3:20",
"nodeType": "YulIdentifier",
"src": "12685:3:20"
}
]
}
]
},
"name": "abi_encode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack",
"nativeSrc": "11718:983:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "11839:5:20",
"nodeType": "YulTypedName",
"src": "11839:5:20",
"type": ""
},
{
"name": "pos",
"nativeSrc": "11846:3:20",
"nodeType": "YulTypedName",
"src": "11846:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nativeSrc": "11855:3:20",
"nodeType": "YulTypedName",
"src": "11855:3:20",
"type": ""
}
],
"src": "11718:983:20"
},
{
"body": {
"nativeSrc": "12873:243:20",
"nodeType": "YulBlock",
"src": "12873:243:20",
"statements": [
{
"nativeSrc": "12883:26:20",
"nodeType": "YulAssignment",
"src": "12883:26:20",
"value": {
"arguments": [
{
"name": "headStart",
"nativeSrc": "12895:9:20",
"nodeType": "YulIdentifier",
"src": "12895:9:20"
},
{
"kind": "number",
"nativeSrc": "12906:2:20",
"nodeType": "YulLiteral",
"src": "12906:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "12891:3:20",
"nodeType": "YulIdentifier",
"src": "12891:3:20"
},
"nativeSrc": "12891:18:20",
"nodeType": "YulFunctionCall",
"src": "12891:18:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "12883:4:20",
"nodeType": "YulIdentifier",
"src": "12883:4:20"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "12930:9:20",
"nodeType": "YulIdentifier",
"src": "12930:9:20"
},
{
"kind": "number",
"nativeSrc": "12941:1:20",
"nodeType": "YulLiteral",
"src": "12941:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "12926:3:20",
"nodeType": "YulIdentifier",
"src": "12926:3:20"
},
"nativeSrc": "12926:17:20",
"nodeType": "YulFunctionCall",
"src": "12926:17:20"
},
{
"arguments": [
{
"name": "tail",
"nativeSrc": "12949:4:20",
"nodeType": "YulIdentifier",
"src": "12949:4:20"
},
{
"name": "headStart",
"nativeSrc": "12955:9:20",
"nodeType": "YulIdentifier",
"src": "12955:9:20"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "12945:3:20",
"nodeType": "YulIdentifier",
"src": "12945:3:20"
},
"nativeSrc": "12945:20:20",
"nodeType": "YulFunctionCall",
"src": "12945:20:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "12919:6:20",
"nodeType": "YulIdentifier",
"src": "12919:6:20"
},
"nativeSrc": "12919:47:20",
"nodeType": "YulFunctionCall",
"src": "12919:47:20"
},
"nativeSrc": "12919:47:20",
"nodeType": "YulExpressionStatement",
"src": "12919:47:20"
},
{
"nativeSrc": "12975:134:20",
"nodeType": "YulAssignment",
"src": "12975:134:20",
"value": {
"arguments": [
{
"name": "value0",
"nativeSrc": "13095:6:20",
"nodeType": "YulIdentifier",
"src": "13095:6:20"
},
{
"name": "tail",
"nativeSrc": "13104:4:20",
"nodeType": "YulIdentifier",
"src": "13104:4:20"
}
],
"functionName": {
"name": "abi_encode_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr_fromStack",
"nativeSrc": "12983:111:20",
"nodeType": "YulIdentifier",
"src": "12983:111:20"
},
"nativeSrc": "12983:126:20",
"nodeType": "YulFunctionCall",
"src": "12983:126:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "12975:4:20",
"nodeType": "YulIdentifier",
"src": "12975:4:20"
}
]
}
]
},
"name": "abi_encode_tuple_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr__to_t_array$_t_bytes_memory_ptr_$dyn_memory_ptr__fromStack_reversed",
"nativeSrc": "12707:409:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "12845:9:20",
"nodeType": "YulTypedName",
"src": "12845:9:20",
"type": ""
},
{
"name": "value0",
"nativeSrc": "12857:6:20",
"nodeType": "YulTypedName",
"src": "12857:6:20",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nativeSrc": "12868:4:20",
"nodeType": "YulTypedName",
"src": "12868:4:20",
"type": ""
}
],
"src": "12707:409:20"
},
{
"body": {
"nativeSrc": "13163:77:20",
"nodeType": "YulBlock",
"src": "13163:77:20",
"statements": [
{
"body": {
"nativeSrc": "13218:16:20",
"nodeType": "YulBlock",
"src": "13218:16:20",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "13227:1:20",
"nodeType": "YulLiteral",
"src": "13227:1:20",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "13230:1:20",
"nodeType": "YulLiteral",
"src": "13230:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "13220:6:20",
"nodeType": "YulIdentifier",
"src": "13220:6:20"
},
"nativeSrc": "13220:12:20",
"nodeType": "YulFunctionCall",
"src": "13220:12:20"
},
"nativeSrc": "13220:12:20",
"nodeType": "YulExpressionStatement",
"src": "13220:12:20"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nativeSrc": "13186:5:20",
"nodeType": "YulIdentifier",
"src": "13186:5:20"
},
{
"arguments": [
{
"name": "value",
"nativeSrc": "13209:5:20",
"nodeType": "YulIdentifier",
"src": "13209:5:20"
}
],
"functionName": {
"name": "cleanup_t_uint8",
"nativeSrc": "13193:15:20",
"nodeType": "YulIdentifier",
"src": "13193:15:20"
},
"nativeSrc": "13193:22:20",
"nodeType": "YulFunctionCall",
"src": "13193:22:20"
}
],
"functionName": {
"name": "eq",
"nativeSrc": "13183:2:20",
"nodeType": "YulIdentifier",
"src": "13183:2:20"
},
"nativeSrc": "13183:33:20",
"nodeType": "YulFunctionCall",
"src": "13183:33:20"
}
],
"functionName": {
"name": "iszero",
"nativeSrc": "13176:6:20",
"nodeType": "YulIdentifier",
"src": "13176:6:20"
},
"nativeSrc": "13176:41:20",
"nodeType": "YulFunctionCall",
"src": "13176:41:20"
},
"nativeSrc": "13173:61:20",
"nodeType": "YulIf",
"src": "13173:61:20"
}
]
},
"name": "validator_revert_t_uint8",
"nativeSrc": "13122:118:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "13156:5:20",
"nodeType": "YulTypedName",
"src": "13156:5:20",
"type": ""
}
],
"src": "13122:118:20"
},
{
"body": {
"nativeSrc": "13296:85:20",
"nodeType": "YulBlock",
"src": "13296:85:20",
"statements": [
{
"nativeSrc": "13306:29:20",
"nodeType": "YulAssignment",
"src": "13306:29:20",
"value": {
"arguments": [
{
"name": "offset",
"nativeSrc": "13328:6:20",
"nodeType": "YulIdentifier",
"src": "13328:6:20"
}
],
"functionName": {
"name": "calldataload",
"nativeSrc": "13315:12:20",
"nodeType": "YulIdentifier",
"src": "13315:12:20"
},
"nativeSrc": "13315:20:20",
"nodeType": "YulFunctionCall",
"src": "13315:20:20"
},
"variableNames": [
{
"name": "value",
"nativeSrc": "13306:5:20",
"nodeType": "YulIdentifier",
"src": "13306:5:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value",
"nativeSrc": "13369:5:20",
"nodeType": "YulIdentifier",
"src": "13369:5:20"
}
],
"functionName": {
"name": "validator_revert_t_uint8",
"nativeSrc": "13344:24:20",
"nodeType": "YulIdentifier",
"src": "13344:24:20"
},
"nativeSrc": "13344:31:20",
"nodeType": "YulFunctionCall",
"src": "13344:31:20"
},
"nativeSrc": "13344:31:20",
"nodeType": "YulExpressionStatement",
"src": "13344:31:20"
}
]
},
"name": "abi_decode_t_uint8",
"nativeSrc": "13246:135:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nativeSrc": "13274:6:20",
"nodeType": "YulTypedName",
"src": "13274:6:20",
"type": ""
},
{
"name": "end",
"nativeSrc": "13282:3:20",
"nodeType": "YulTypedName",
"src": "13282:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "value",
"nativeSrc": "13290:5:20",
"nodeType": "YulTypedName",
"src": "13290:5:20",
"type": ""
}
],
"src": "13246:135:20"
},
{
"body": {
"nativeSrc": "13430:79:20",
"nodeType": "YulBlock",
"src": "13430:79:20",
"statements": [
{
"body": {
"nativeSrc": "13487:16:20",
"nodeType": "YulBlock",
"src": "13487:16:20",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "13496:1:20",
"nodeType": "YulLiteral",
"src": "13496:1:20",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "13499:1:20",
"nodeType": "YulLiteral",
"src": "13499:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "13489:6:20",
"nodeType": "YulIdentifier",
"src": "13489:6:20"
},
"nativeSrc": "13489:12:20",
"nodeType": "YulFunctionCall",
"src": "13489:12:20"
},
"nativeSrc": "13489:12:20",
"nodeType": "YulExpressionStatement",
"src": "13489:12:20"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "value",
"nativeSrc": "13453:5:20",
"nodeType": "YulIdentifier",
"src": "13453:5:20"
},
{
"arguments": [
{
"name": "value",
"nativeSrc": "13478:5:20",
"nodeType": "YulIdentifier",
"src": "13478:5:20"
}
],
"functionName": {
"name": "cleanup_t_bytes32",
"nativeSrc": "13460:17:20",
"nodeType": "YulIdentifier",
"src": "13460:17:20"
},
"nativeSrc": "13460:24:20",
"nodeType": "YulFunctionCall",
"src": "13460:24:20"
}
],
"functionName": {
"name": "eq",
"nativeSrc": "13450:2:20",
"nodeType": "YulIdentifier",
"src": "13450:2:20"
},
"nativeSrc": "13450:35:20",
"nodeType": "YulFunctionCall",
"src": "13450:35:20"
}
],
"functionName": {
"name": "iszero",
"nativeSrc": "13443:6:20",
"nodeType": "YulIdentifier",
"src": "13443:6:20"
},
"nativeSrc": "13443:43:20",
"nodeType": "YulFunctionCall",
"src": "13443:43:20"
},
"nativeSrc": "13440:63:20",
"nodeType": "YulIf",
"src": "13440:63:20"
}
]
},
"name": "validator_revert_t_bytes32",
"nativeSrc": "13387:122:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "13423:5:20",
"nodeType": "YulTypedName",
"src": "13423:5:20",
"type": ""
}
],
"src": "13387:122:20"
},
{
"body": {
"nativeSrc": "13567:87:20",
"nodeType": "YulBlock",
"src": "13567:87:20",
"statements": [
{
"nativeSrc": "13577:29:20",
"nodeType": "YulAssignment",
"src": "13577:29:20",
"value": {
"arguments": [
{
"name": "offset",
"nativeSrc": "13599:6:20",
"nodeType": "YulIdentifier",
"src": "13599:6:20"
}
],
"functionName": {
"name": "calldataload",
"nativeSrc": "13586:12:20",
"nodeType": "YulIdentifier",
"src": "13586:12:20"
},
"nativeSrc": "13586:20:20",
"nodeType": "YulFunctionCall",
"src": "13586:20:20"
},
"variableNames": [
{
"name": "value",
"nativeSrc": "13577:5:20",
"nodeType": "YulIdentifier",
"src": "13577:5:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value",
"nativeSrc": "13642:5:20",
"nodeType": "YulIdentifier",
"src": "13642:5:20"
}
],
"functionName": {
"name": "validator_revert_t_bytes32",
"nativeSrc": "13615:26:20",
"nodeType": "YulIdentifier",
"src": "13615:26:20"
},
"nativeSrc": "13615:33:20",
"nodeType": "YulFunctionCall",
"src": "13615:33:20"
},
"nativeSrc": "13615:33:20",
"nodeType": "YulExpressionStatement",
"src": "13615:33:20"
}
]
},
"name": "abi_decode_t_bytes32",
"nativeSrc": "13515:139:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "offset",
"nativeSrc": "13545:6:20",
"nodeType": "YulTypedName",
"src": "13545:6:20",
"type": ""
},
{
"name": "end",
"nativeSrc": "13553:3:20",
"nodeType": "YulTypedName",
"src": "13553:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "value",
"nativeSrc": "13561:5:20",
"nodeType": "YulTypedName",
"src": "13561:5:20",
"type": ""
}
],
"src": "13515:139:20"
},
{
"body": {
"nativeSrc": "13826:1033:20",
"nodeType": "YulBlock",
"src": "13826:1033:20",
"statements": [
{
"body": {
"nativeSrc": "13873:83:20",
"nodeType": "YulBlock",
"src": "13873:83:20",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nativeSrc": "13875:77:20",
"nodeType": "YulIdentifier",
"src": "13875:77:20"
},
"nativeSrc": "13875:79:20",
"nodeType": "YulFunctionCall",
"src": "13875:79:20"
},
"nativeSrc": "13875:79:20",
"nodeType": "YulExpressionStatement",
"src": "13875:79:20"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "dataEnd",
"nativeSrc": "13847:7:20",
"nodeType": "YulIdentifier",
"src": "13847:7:20"
},
{
"name": "headStart",
"nativeSrc": "13856:9:20",
"nodeType": "YulIdentifier",
"src": "13856:9:20"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "13843:3:20",
"nodeType": "YulIdentifier",
"src": "13843:3:20"
},
"nativeSrc": "13843:23:20",
"nodeType": "YulFunctionCall",
"src": "13843:23:20"
},
{
"kind": "number",
"nativeSrc": "13868:3:20",
"nodeType": "YulLiteral",
"src": "13868:3:20",
"type": "",
"value": "224"
}
],
"functionName": {
"name": "slt",
"nativeSrc": "13839:3:20",
"nodeType": "YulIdentifier",
"src": "13839:3:20"
},
"nativeSrc": "13839:33:20",
"nodeType": "YulFunctionCall",
"src": "13839:33:20"
},
"nativeSrc": "13836:120:20",
"nodeType": "YulIf",
"src": "13836:120:20"
},
{
"nativeSrc": "13966:117:20",
"nodeType": "YulBlock",
"src": "13966:117:20",
"statements": [
{
"nativeSrc": "13981:15:20",
"nodeType": "YulVariableDeclaration",
"src": "13981:15:20",
"value": {
"kind": "number",
"nativeSrc": "13995:1:20",
"nodeType": "YulLiteral",
"src": "13995:1:20",
"type": "",
"value": "0"
},
"variables": [
{
"name": "offset",
"nativeSrc": "13985:6:20",
"nodeType": "YulTypedName",
"src": "13985:6:20",
"type": ""
}
]
},
{
"nativeSrc": "14010:63:20",
"nodeType": "YulAssignment",
"src": "14010:63:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "14045:9:20",
"nodeType": "YulIdentifier",
"src": "14045:9:20"
},
{
"name": "offset",
"nativeSrc": "14056:6:20",
"nodeType": "YulIdentifier",
"src": "14056:6:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "14041:3:20",
"nodeType": "YulIdentifier",
"src": "14041:3:20"
},
"nativeSrc": "14041:22:20",
"nodeType": "YulFunctionCall",
"src": "14041:22:20"
},
{
"name": "dataEnd",
"nativeSrc": "14065:7:20",
"nodeType": "YulIdentifier",
"src": "14065:7:20"
}
],
"functionName": {
"name": "abi_decode_t_address",
"nativeSrc": "14020:20:20",
"nodeType": "YulIdentifier",
"src": "14020:20:20"
},
"nativeSrc": "14020:53:20",
"nodeType": "YulFunctionCall",
"src": "14020:53:20"
},
"variableNames": [
{
"name": "value0",
"nativeSrc": "14010:6:20",
"nodeType": "YulIdentifier",
"src": "14010:6:20"
}
]
}
]
},
{
"nativeSrc": "14093:118:20",
"nodeType": "YulBlock",
"src": "14093:118:20",
"statements": [
{
"nativeSrc": "14108:16:20",
"nodeType": "YulVariableDeclaration",
"src": "14108:16:20",
"value": {
"kind": "number",
"nativeSrc": "14122:2:20",
"nodeType": "YulLiteral",
"src": "14122:2:20",
"type": "",
"value": "32"
},
"variables": [
{
"name": "offset",
"nativeSrc": "14112:6:20",
"nodeType": "YulTypedName",
"src": "14112:6:20",
"type": ""
}
]
},
{
"nativeSrc": "14138:63:20",
"nodeType": "YulAssignment",
"src": "14138:63:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "14173:9:20",
"nodeType": "YulIdentifier",
"src": "14173:9:20"
},
{
"name": "offset",
"nativeSrc": "14184:6:20",
"nodeType": "YulIdentifier",
"src": "14184:6:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "14169:3:20",
"nodeType": "YulIdentifier",
"src": "14169:3:20"
},
"nativeSrc": "14169:22:20",
"nodeType": "YulFunctionCall",
"src": "14169:22:20"
},
{
"name": "dataEnd",
"nativeSrc": "14193:7:20",
"nodeType": "YulIdentifier",
"src": "14193:7:20"
}
],
"functionName": {
"name": "abi_decode_t_address",
"nativeSrc": "14148:20:20",
"nodeType": "YulIdentifier",
"src": "14148:20:20"
},
"nativeSrc": "14148:53:20",
"nodeType": "YulFunctionCall",
"src": "14148:53:20"
},
"variableNames": [
{
"name": "value1",
"nativeSrc": "14138:6:20",
"nodeType": "YulIdentifier",
"src": "14138:6:20"
}
]
}
]
},
{
"nativeSrc": "14221:118:20",
"nodeType": "YulBlock",
"src": "14221:118:20",
"statements": [
{
"nativeSrc": "14236:16:20",
"nodeType": "YulVariableDeclaration",
"src": "14236:16:20",
"value": {
"kind": "number",
"nativeSrc": "14250:2:20",
"nodeType": "YulLiteral",
"src": "14250:2:20",
"type": "",
"value": "64"
},
"variables": [
{
"name": "offset",
"nativeSrc": "14240:6:20",
"nodeType": "YulTypedName",
"src": "14240:6:20",
"type": ""
}
]
},
{
"nativeSrc": "14266:63:20",
"nodeType": "YulAssignment",
"src": "14266:63:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "14301:9:20",
"nodeType": "YulIdentifier",
"src": "14301:9:20"
},
{
"name": "offset",
"nativeSrc": "14312:6:20",
"nodeType": "YulIdentifier",
"src": "14312:6:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "14297:3:20",
"nodeType": "YulIdentifier",
"src": "14297:3:20"
},
"nativeSrc": "14297:22:20",
"nodeType": "YulFunctionCall",
"src": "14297:22:20"
},
{
"name": "dataEnd",
"nativeSrc": "14321:7:20",
"nodeType": "YulIdentifier",
"src": "14321:7:20"
}
],
"functionName": {
"name": "abi_decode_t_uint256",
"nativeSrc": "14276:20:20",
"nodeType": "YulIdentifier",
"src": "14276:20:20"
},
"nativeSrc": "14276:53:20",
"nodeType": "YulFunctionCall",
"src": "14276:53:20"
},
"variableNames": [
{
"name": "value2",
"nativeSrc": "14266:6:20",
"nodeType": "YulIdentifier",
"src": "14266:6:20"
}
]
}
]
},
{
"nativeSrc": "14349:118:20",
"nodeType": "YulBlock",
"src": "14349:118:20",
"statements": [
{
"nativeSrc": "14364:16:20",
"nodeType": "YulVariableDeclaration",
"src": "14364:16:20",
"value": {
"kind": "number",
"nativeSrc": "14378:2:20",
"nodeType": "YulLiteral",
"src": "14378:2:20",
"type": "",
"value": "96"
},
"variables": [
{
"name": "offset",
"nativeSrc": "14368:6:20",
"nodeType": "YulTypedName",
"src": "14368:6:20",
"type": ""
}
]
},
{
"nativeSrc": "14394:63:20",
"nodeType": "YulAssignment",
"src": "14394:63:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "14429:9:20",
"nodeType": "YulIdentifier",
"src": "14429:9:20"
},
{
"name": "offset",
"nativeSrc": "14440:6:20",
"nodeType": "YulIdentifier",
"src": "14440:6:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "14425:3:20",
"nodeType": "YulIdentifier",
"src": "14425:3:20"
},
"nativeSrc": "14425:22:20",
"nodeType": "YulFunctionCall",
"src": "14425:22:20"
},
{
"name": "dataEnd",
"nativeSrc": "14449:7:20",
"nodeType": "YulIdentifier",
"src": "14449:7:20"
}
],
"functionName": {
"name": "abi_decode_t_uint256",
"nativeSrc": "14404:20:20",
"nodeType": "YulIdentifier",
"src": "14404:20:20"
},
"nativeSrc": "14404:53:20",
"nodeType": "YulFunctionCall",
"src": "14404:53:20"
},
"variableNames": [
{
"name": "value3",
"nativeSrc": "14394:6:20",
"nodeType": "YulIdentifier",
"src": "14394:6:20"
}
]
}
]
},
{
"nativeSrc": "14477:117:20",
"nodeType": "YulBlock",
"src": "14477:117:20",
"statements": [
{
"nativeSrc": "14492:17:20",
"nodeType": "YulVariableDeclaration",
"src": "14492:17:20",
"value": {
"kind": "number",
"nativeSrc": "14506:3:20",
"nodeType": "YulLiteral",
"src": "14506:3:20",
"type": "",
"value": "128"
},
"variables": [
{
"name": "offset",
"nativeSrc": "14496:6:20",
"nodeType": "YulTypedName",
"src": "14496:6:20",
"type": ""
}
]
},
{
"nativeSrc": "14523:61:20",
"nodeType": "YulAssignment",
"src": "14523:61:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "14556:9:20",
"nodeType": "YulIdentifier",
"src": "14556:9:20"
},
{
"name": "offset",
"nativeSrc": "14567:6:20",
"nodeType": "YulIdentifier",
"src": "14567:6:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "14552:3:20",
"nodeType": "YulIdentifier",
"src": "14552:3:20"
},
"nativeSrc": "14552:22:20",
"nodeType": "YulFunctionCall",
"src": "14552:22:20"
},
{
"name": "dataEnd",
"nativeSrc": "14576:7:20",
"nodeType": "YulIdentifier",
"src": "14576:7:20"
}
],
"functionName": {
"name": "abi_decode_t_uint8",
"nativeSrc": "14533:18:20",
"nodeType": "YulIdentifier",
"src": "14533:18:20"
},
"nativeSrc": "14533:51:20",
"nodeType": "YulFunctionCall",
"src": "14533:51:20"
},
"variableNames": [
{
"name": "value4",
"nativeSrc": "14523:6:20",
"nodeType": "YulIdentifier",
"src": "14523:6:20"
}
]
}
]
},
{
"nativeSrc": "14604:119:20",
"nodeType": "YulBlock",
"src": "14604:119:20",
"statements": [
{
"nativeSrc": "14619:17:20",
"nodeType": "YulVariableDeclaration",
"src": "14619:17:20",
"value": {
"kind": "number",
"nativeSrc": "14633:3:20",
"nodeType": "YulLiteral",
"src": "14633:3:20",
"type": "",
"value": "160"
},
"variables": [
{
"name": "offset",
"nativeSrc": "14623:6:20",
"nodeType": "YulTypedName",
"src": "14623:6:20",
"type": ""
}
]
},
{
"nativeSrc": "14650:63:20",
"nodeType": "YulAssignment",
"src": "14650:63:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "14685:9:20",
"nodeType": "YulIdentifier",
"src": "14685:9:20"
},
{
"name": "offset",
"nativeSrc": "14696:6:20",
"nodeType": "YulIdentifier",
"src": "14696:6:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "14681:3:20",
"nodeType": "YulIdentifier",
"src": "14681:3:20"
},
"nativeSrc": "14681:22:20",
"nodeType": "YulFunctionCall",
"src": "14681:22:20"
},
{
"name": "dataEnd",
"nativeSrc": "14705:7:20",
"nodeType": "YulIdentifier",
"src": "14705:7:20"
}
],
"functionName": {
"name": "abi_decode_t_bytes32",
"nativeSrc": "14660:20:20",
"nodeType": "YulIdentifier",
"src": "14660:20:20"
},
"nativeSrc": "14660:53:20",
"nodeType": "YulFunctionCall",
"src": "14660:53:20"
},
"variableNames": [
{
"name": "value5",
"nativeSrc": "14650:6:20",
"nodeType": "YulIdentifier",
"src": "14650:6:20"
}
]
}
]
},
{
"nativeSrc": "14733:119:20",
"nodeType": "YulBlock",
"src": "14733:119:20",
"statements": [
{
"nativeSrc": "14748:17:20",
"nodeType": "YulVariableDeclaration",
"src": "14748:17:20",
"value": {
"kind": "number",
"nativeSrc": "14762:3:20",
"nodeType": "YulLiteral",
"src": "14762:3:20",
"type": "",
"value": "192"
},
"variables": [
{
"name": "offset",
"nativeSrc": "14752:6:20",
"nodeType": "YulTypedName",
"src": "14752:6:20",
"type": ""
}
]
},
{
"nativeSrc": "14779:63:20",
"nodeType": "YulAssignment",
"src": "14779:63:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "14814:9:20",
"nodeType": "YulIdentifier",
"src": "14814:9:20"
},
{
"name": "offset",
"nativeSrc": "14825:6:20",
"nodeType": "YulIdentifier",
"src": "14825:6:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "14810:3:20",
"nodeType": "YulIdentifier",
"src": "14810:3:20"
},
"nativeSrc": "14810:22:20",
"nodeType": "YulFunctionCall",
"src": "14810:22:20"
},
{
"name": "dataEnd",
"nativeSrc": "14834:7:20",
"nodeType": "YulIdentifier",
"src": "14834:7:20"
}
],
"functionName": {
"name": "abi_decode_t_bytes32",
"nativeSrc": "14789:20:20",
"nodeType": "YulIdentifier",
"src": "14789:20:20"
},
"nativeSrc": "14789:53:20",
"nodeType": "YulFunctionCall",
"src": "14789:53:20"
},
"variableNames": [
{
"name": "value6",
"nativeSrc": "14779:6:20",
"nodeType": "YulIdentifier",
"src": "14779:6:20"
}
]
}
]
}
]
},
"name": "abi_decode_tuple_t_addresst_addresst_uint256t_uint256t_uint8t_bytes32t_bytes32",
"nativeSrc": "13660:1199:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "13748:9:20",
"nodeType": "YulTypedName",
"src": "13748:9:20",
"type": ""
},
{
"name": "dataEnd",
"nativeSrc": "13759:7:20",
"nodeType": "YulTypedName",
"src": "13759:7:20",
"type": ""
}
],
"returnVariables": [
{
"name": "value0",
"nativeSrc": "13771:6:20",
"nodeType": "YulTypedName",
"src": "13771:6:20",
"type": ""
},
{
"name": "value1",
"nativeSrc": "13779:6:20",
"nodeType": "YulTypedName",
"src": "13779:6:20",
"type": ""
},
{
"name": "value2",
"nativeSrc": "13787:6:20",
"nodeType": "YulTypedName",
"src": "13787:6:20",
"type": ""
},
{
"name": "value3",
"nativeSrc": "13795:6:20",
"nodeType": "YulTypedName",
"src": "13795:6:20",
"type": ""
},
{
"name": "value4",
"nativeSrc": "13803:6:20",
"nodeType": "YulTypedName",
"src": "13803:6:20",
"type": ""
},
{
"name": "value5",
"nativeSrc": "13811:6:20",
"nodeType": "YulTypedName",
"src": "13811:6:20",
"type": ""
},
{
"name": "value6",
"nativeSrc": "13819:6:20",
"nodeType": "YulTypedName",
"src": "13819:6:20",
"type": ""
}
],
"src": "13660:1199:20"
},
{
"body": {
"nativeSrc": "14948:391:20",
"nodeType": "YulBlock",
"src": "14948:391:20",
"statements": [
{
"body": {
"nativeSrc": "14994:83:20",
"nodeType": "YulBlock",
"src": "14994:83:20",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b",
"nativeSrc": "14996:77:20",
"nodeType": "YulIdentifier",
"src": "14996:77:20"
},
"nativeSrc": "14996:79:20",
"nodeType": "YulFunctionCall",
"src": "14996:79:20"
},
"nativeSrc": "14996:79:20",
"nodeType": "YulExpressionStatement",
"src": "14996:79:20"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "dataEnd",
"nativeSrc": "14969:7:20",
"nodeType": "YulIdentifier",
"src": "14969:7:20"
},
{
"name": "headStart",
"nativeSrc": "14978:9:20",
"nodeType": "YulIdentifier",
"src": "14978:9:20"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "14965:3:20",
"nodeType": "YulIdentifier",
"src": "14965:3:20"
},
"nativeSrc": "14965:23:20",
"nodeType": "YulFunctionCall",
"src": "14965:23:20"
},
{
"kind": "number",
"nativeSrc": "14990:2:20",
"nodeType": "YulLiteral",
"src": "14990:2:20",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "slt",
"nativeSrc": "14961:3:20",
"nodeType": "YulIdentifier",
"src": "14961:3:20"
},
"nativeSrc": "14961:32:20",
"nodeType": "YulFunctionCall",
"src": "14961:32:20"
},
"nativeSrc": "14958:119:20",
"nodeType": "YulIf",
"src": "14958:119:20"
},
{
"nativeSrc": "15087:117:20",
"nodeType": "YulBlock",
"src": "15087:117:20",
"statements": [
{
"nativeSrc": "15102:15:20",
"nodeType": "YulVariableDeclaration",
"src": "15102:15:20",
"value": {
"kind": "number",
"nativeSrc": "15116:1:20",
"nodeType": "YulLiteral",
"src": "15116:1:20",
"type": "",
"value": "0"
},
"variables": [
{
"name": "offset",
"nativeSrc": "15106:6:20",
"nodeType": "YulTypedName",
"src": "15106:6:20",
"type": ""
}
]
},
{
"nativeSrc": "15131:63:20",
"nodeType": "YulAssignment",
"src": "15131:63:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "15166:9:20",
"nodeType": "YulIdentifier",
"src": "15166:9:20"
},
{
"name": "offset",
"nativeSrc": "15177:6:20",
"nodeType": "YulIdentifier",
"src": "15177:6:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "15162:3:20",
"nodeType": "YulIdentifier",
"src": "15162:3:20"
},
"nativeSrc": "15162:22:20",
"nodeType": "YulFunctionCall",
"src": "15162:22:20"
},
{
"name": "dataEnd",
"nativeSrc": "15186:7:20",
"nodeType": "YulIdentifier",
"src": "15186:7:20"
}
],
"functionName": {
"name": "abi_decode_t_address",
"nativeSrc": "15141:20:20",
"nodeType": "YulIdentifier",
"src": "15141:20:20"
},
"nativeSrc": "15141:53:20",
"nodeType": "YulFunctionCall",
"src": "15141:53:20"
},
"variableNames": [
{
"name": "value0",
"nativeSrc": "15131:6:20",
"nodeType": "YulIdentifier",
"src": "15131:6:20"
}
]
}
]
},
{
"nativeSrc": "15214:118:20",
"nodeType": "YulBlock",
"src": "15214:118:20",
"statements": [
{
"nativeSrc": "15229:16:20",
"nodeType": "YulVariableDeclaration",
"src": "15229:16:20",
"value": {
"kind": "number",
"nativeSrc": "15243:2:20",
"nodeType": "YulLiteral",
"src": "15243:2:20",
"type": "",
"value": "32"
},
"variables": [
{
"name": "offset",
"nativeSrc": "15233:6:20",
"nodeType": "YulTypedName",
"src": "15233:6:20",
"type": ""
}
]
},
{
"nativeSrc": "15259:63:20",
"nodeType": "YulAssignment",
"src": "15259:63:20",
"value": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "15294:9:20",
"nodeType": "YulIdentifier",
"src": "15294:9:20"
},
{
"name": "offset",
"nativeSrc": "15305:6:20",
"nodeType": "YulIdentifier",
"src": "15305:6:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "15290:3:20",
"nodeType": "YulIdentifier",
"src": "15290:3:20"
},
"nativeSrc": "15290:22:20",
"nodeType": "YulFunctionCall",
"src": "15290:22:20"
},
{
"name": "dataEnd",
"nativeSrc": "15314:7:20",
"nodeType": "YulIdentifier",
"src": "15314:7:20"
}
],
"functionName": {
"name": "abi_decode_t_address",
"nativeSrc": "15269:20:20",
"nodeType": "YulIdentifier",
"src": "15269:20:20"
},
"nativeSrc": "15269:53:20",
"nodeType": "YulFunctionCall",
"src": "15269:53:20"
},
"variableNames": [
{
"name": "value1",
"nativeSrc": "15259:6:20",
"nodeType": "YulIdentifier",
"src": "15259:6:20"
}
]
}
]
}
]
},
"name": "abi_decode_tuple_t_addresst_address",
"nativeSrc": "14865:474:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "14910:9:20",
"nodeType": "YulTypedName",
"src": "14910:9:20",
"type": ""
},
{
"name": "dataEnd",
"nativeSrc": "14921:7:20",
"nodeType": "YulTypedName",
"src": "14921:7:20",
"type": ""
}
],
"returnVariables": [
{
"name": "value0",
"nativeSrc": "14933:6:20",
"nodeType": "YulTypedName",
"src": "14933:6:20",
"type": ""
},
{
"name": "value1",
"nativeSrc": "14941:6:20",
"nodeType": "YulTypedName",
"src": "14941:6:20",
"type": ""
}
],
"src": "14865:474:20"
},
{
"body": {
"nativeSrc": "15373:152:20",
"nodeType": "YulBlock",
"src": "15373:152:20",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "15390:1:20",
"nodeType": "YulLiteral",
"src": "15390:1:20",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "15393:77:20",
"nodeType": "YulLiteral",
"src": "15393:77:20",
"type": "",
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "15383:6:20",
"nodeType": "YulIdentifier",
"src": "15383:6:20"
},
"nativeSrc": "15383:88:20",
"nodeType": "YulFunctionCall",
"src": "15383:88:20"
},
"nativeSrc": "15383:88:20",
"nodeType": "YulExpressionStatement",
"src": "15383:88:20"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "15487:1:20",
"nodeType": "YulLiteral",
"src": "15487:1:20",
"type": "",
"value": "4"
},
{
"kind": "number",
"nativeSrc": "15490:4:20",
"nodeType": "YulLiteral",
"src": "15490:4:20",
"type": "",
"value": "0x22"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "15480:6:20",
"nodeType": "YulIdentifier",
"src": "15480:6:20"
},
"nativeSrc": "15480:15:20",
"nodeType": "YulFunctionCall",
"src": "15480:15:20"
},
"nativeSrc": "15480:15:20",
"nodeType": "YulExpressionStatement",
"src": "15480:15:20"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "15511:1:20",
"nodeType": "YulLiteral",
"src": "15511:1:20",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "15514:4:20",
"nodeType": "YulLiteral",
"src": "15514:4:20",
"type": "",
"value": "0x24"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "15504:6:20",
"nodeType": "YulIdentifier",
"src": "15504:6:20"
},
"nativeSrc": "15504:15:20",
"nodeType": "YulFunctionCall",
"src": "15504:15:20"
},
"nativeSrc": "15504:15:20",
"nodeType": "YulExpressionStatement",
"src": "15504:15:20"
}
]
},
"name": "panic_error_0x22",
"nativeSrc": "15345:180:20",
"nodeType": "YulFunctionDefinition",
"src": "15345:180:20"
},
{
"body": {
"nativeSrc": "15582:269:20",
"nodeType": "YulBlock",
"src": "15582:269:20",
"statements": [
{
"nativeSrc": "15592:22:20",
"nodeType": "YulAssignment",
"src": "15592:22:20",
"value": {
"arguments": [
{
"name": "data",
"nativeSrc": "15606:4:20",
"nodeType": "YulIdentifier",
"src": "15606:4:20"
},
{
"kind": "number",
"nativeSrc": "15612:1:20",
"nodeType": "YulLiteral",
"src": "15612:1:20",
"type": "",
"value": "2"
}
],
"functionName": {
"name": "div",
"nativeSrc": "15602:3:20",
"nodeType": "YulIdentifier",
"src": "15602:3:20"
},
"nativeSrc": "15602:12:20",
"nodeType": "YulFunctionCall",
"src": "15602:12:20"
},
"variableNames": [
{
"name": "length",
"nativeSrc": "15592:6:20",
"nodeType": "YulIdentifier",
"src": "15592:6:20"
}
]
},
{
"nativeSrc": "15623:38:20",
"nodeType": "YulVariableDeclaration",
"src": "15623:38:20",
"value": {
"arguments": [
{
"name": "data",
"nativeSrc": "15653:4:20",
"nodeType": "YulIdentifier",
"src": "15653:4:20"
},
{
"kind": "number",
"nativeSrc": "15659:1:20",
"nodeType": "YulLiteral",
"src": "15659:1:20",
"type": "",
"value": "1"
}
],
"functionName": {
"name": "and",
"nativeSrc": "15649:3:20",
"nodeType": "YulIdentifier",
"src": "15649:3:20"
},
"nativeSrc": "15649:12:20",
"nodeType": "YulFunctionCall",
"src": "15649:12:20"
},
"variables": [
{
"name": "outOfPlaceEncoding",
"nativeSrc": "15627:18:20",
"nodeType": "YulTypedName",
"src": "15627:18:20",
"type": ""
}
]
},
{
"body": {
"nativeSrc": "15700:51:20",
"nodeType": "YulBlock",
"src": "15700:51:20",
"statements": [
{
"nativeSrc": "15714:27:20",
"nodeType": "YulAssignment",
"src": "15714:27:20",
"value": {
"arguments": [
{
"name": "length",
"nativeSrc": "15728:6:20",
"nodeType": "YulIdentifier",
"src": "15728:6:20"
},
{
"kind": "number",
"nativeSrc": "15736:4:20",
"nodeType": "YulLiteral",
"src": "15736:4:20",
"type": "",
"value": "0x7f"
}
],
"functionName": {
"name": "and",
"nativeSrc": "15724:3:20",
"nodeType": "YulIdentifier",
"src": "15724:3:20"
},
"nativeSrc": "15724:17:20",
"nodeType": "YulFunctionCall",
"src": "15724:17:20"
},
"variableNames": [
{
"name": "length",
"nativeSrc": "15714:6:20",
"nodeType": "YulIdentifier",
"src": "15714:6:20"
}
]
}
]
},
"condition": {
"arguments": [
{
"name": "outOfPlaceEncoding",
"nativeSrc": "15680:18:20",
"nodeType": "YulIdentifier",
"src": "15680:18:20"
}
],
"functionName": {
"name": "iszero",
"nativeSrc": "15673:6:20",
"nodeType": "YulIdentifier",
"src": "15673:6:20"
},
"nativeSrc": "15673:26:20",
"nodeType": "YulFunctionCall",
"src": "15673:26:20"
},
"nativeSrc": "15670:81:20",
"nodeType": "YulIf",
"src": "15670:81:20"
},
{
"body": {
"nativeSrc": "15803:42:20",
"nodeType": "YulBlock",
"src": "15803:42:20",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x22",
"nativeSrc": "15817:16:20",
"nodeType": "YulIdentifier",
"src": "15817:16:20"
},
"nativeSrc": "15817:18:20",
"nodeType": "YulFunctionCall",
"src": "15817:18:20"
},
"nativeSrc": "15817:18:20",
"nodeType": "YulExpressionStatement",
"src": "15817:18:20"
}
]
},
"condition": {
"arguments": [
{
"name": "outOfPlaceEncoding",
"nativeSrc": "15767:18:20",
"nodeType": "YulIdentifier",
"src": "15767:18:20"
},
{
"arguments": [
{
"name": "length",
"nativeSrc": "15790:6:20",
"nodeType": "YulIdentifier",
"src": "15790:6:20"
},
{
"kind": "number",
"nativeSrc": "15798:2:20",
"nodeType": "YulLiteral",
"src": "15798:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "lt",
"nativeSrc": "15787:2:20",
"nodeType": "YulIdentifier",
"src": "15787:2:20"
},
"nativeSrc": "15787:14:20",
"nodeType": "YulFunctionCall",
"src": "15787:14:20"
}
],
"functionName": {
"name": "eq",
"nativeSrc": "15764:2:20",
"nodeType": "YulIdentifier",
"src": "15764:2:20"
},
"nativeSrc": "15764:38:20",
"nodeType": "YulFunctionCall",
"src": "15764:38:20"
},
"nativeSrc": "15761:84:20",
"nodeType": "YulIf",
"src": "15761:84:20"
}
]
},
"name": "extract_byte_array_length",
"nativeSrc": "15531:320:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "data",
"nativeSrc": "15566:4:20",
"nodeType": "YulTypedName",
"src": "15566:4:20",
"type": ""
}
],
"returnVariables": [
{
"name": "length",
"nativeSrc": "15575:6:20",
"nodeType": "YulTypedName",
"src": "15575:6:20",
"type": ""
}
],
"src": "15531:320:20"
},
{
"body": {
"nativeSrc": "15885:152:20",
"nodeType": "YulBlock",
"src": "15885:152:20",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "15902:1:20",
"nodeType": "YulLiteral",
"src": "15902:1:20",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "15905:77:20",
"nodeType": "YulLiteral",
"src": "15905:77:20",
"type": "",
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "15895:6:20",
"nodeType": "YulIdentifier",
"src": "15895:6:20"
},
"nativeSrc": "15895:88:20",
"nodeType": "YulFunctionCall",
"src": "15895:88:20"
},
"nativeSrc": "15895:88:20",
"nodeType": "YulExpressionStatement",
"src": "15895:88:20"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "15999:1:20",
"nodeType": "YulLiteral",
"src": "15999:1:20",
"type": "",
"value": "4"
},
{
"kind": "number",
"nativeSrc": "16002:4:20",
"nodeType": "YulLiteral",
"src": "16002:4:20",
"type": "",
"value": "0x11"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "15992:6:20",
"nodeType": "YulIdentifier",
"src": "15992:6:20"
},
"nativeSrc": "15992:15:20",
"nodeType": "YulFunctionCall",
"src": "15992:15:20"
},
"nativeSrc": "15992:15:20",
"nodeType": "YulExpressionStatement",
"src": "15992:15:20"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "16023:1:20",
"nodeType": "YulLiteral",
"src": "16023:1:20",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "16026:4:20",
"nodeType": "YulLiteral",
"src": "16026:4:20",
"type": "",
"value": "0x24"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "16016:6:20",
"nodeType": "YulIdentifier",
"src": "16016:6:20"
},
"nativeSrc": "16016:15:20",
"nodeType": "YulFunctionCall",
"src": "16016:15:20"
},
"nativeSrc": "16016:15:20",
"nodeType": "YulExpressionStatement",
"src": "16016:15:20"
}
]
},
"name": "panic_error_0x11",
"nativeSrc": "15857:180:20",
"nodeType": "YulFunctionDefinition",
"src": "15857:180:20"
},
{
"body": {
"nativeSrc": "16087:147:20",
"nodeType": "YulBlock",
"src": "16087:147:20",
"statements": [
{
"nativeSrc": "16097:25:20",
"nodeType": "YulAssignment",
"src": "16097:25:20",
"value": {
"arguments": [
{
"name": "x",
"nativeSrc": "16120:1:20",
"nodeType": "YulIdentifier",
"src": "16120:1:20"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nativeSrc": "16102:17:20",
"nodeType": "YulIdentifier",
"src": "16102:17:20"
},
"nativeSrc": "16102:20:20",
"nodeType": "YulFunctionCall",
"src": "16102:20:20"
},
"variableNames": [
{
"name": "x",
"nativeSrc": "16097:1:20",
"nodeType": "YulIdentifier",
"src": "16097:1:20"
}
]
},
{
"nativeSrc": "16131:25:20",
"nodeType": "YulAssignment",
"src": "16131:25:20",
"value": {
"arguments": [
{
"name": "y",
"nativeSrc": "16154:1:20",
"nodeType": "YulIdentifier",
"src": "16154:1:20"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nativeSrc": "16136:17:20",
"nodeType": "YulIdentifier",
"src": "16136:17:20"
},
"nativeSrc": "16136:20:20",
"nodeType": "YulFunctionCall",
"src": "16136:20:20"
},
"variableNames": [
{
"name": "y",
"nativeSrc": "16131:1:20",
"nodeType": "YulIdentifier",
"src": "16131:1:20"
}
]
},
{
"nativeSrc": "16165:16:20",
"nodeType": "YulAssignment",
"src": "16165:16:20",
"value": {
"arguments": [
{
"name": "x",
"nativeSrc": "16176:1:20",
"nodeType": "YulIdentifier",
"src": "16176:1:20"
},
{
"name": "y",
"nativeSrc": "16179:1:20",
"nodeType": "YulIdentifier",
"src": "16179:1:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "16172:3:20",
"nodeType": "YulIdentifier",
"src": "16172:3:20"
},
"nativeSrc": "16172:9:20",
"nodeType": "YulFunctionCall",
"src": "16172:9:20"
},
"variableNames": [
{
"name": "sum",
"nativeSrc": "16165:3:20",
"nodeType": "YulIdentifier",
"src": "16165:3:20"
}
]
},
{
"body": {
"nativeSrc": "16205:22:20",
"nodeType": "YulBlock",
"src": "16205:22:20",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x11",
"nativeSrc": "16207:16:20",
"nodeType": "YulIdentifier",
"src": "16207:16:20"
},
"nativeSrc": "16207:18:20",
"nodeType": "YulFunctionCall",
"src": "16207:18:20"
},
"nativeSrc": "16207:18:20",
"nodeType": "YulExpressionStatement",
"src": "16207:18:20"
}
]
},
"condition": {
"arguments": [
{
"name": "x",
"nativeSrc": "16197:1:20",
"nodeType": "YulIdentifier",
"src": "16197:1:20"
},
{
"name": "sum",
"nativeSrc": "16200:3:20",
"nodeType": "YulIdentifier",
"src": "16200:3:20"
}
],
"functionName": {
"name": "gt",
"nativeSrc": "16194:2:20",
"nodeType": "YulIdentifier",
"src": "16194:2:20"
},
"nativeSrc": "16194:10:20",
"nodeType": "YulFunctionCall",
"src": "16194:10:20"
},
"nativeSrc": "16191:36:20",
"nodeType": "YulIf",
"src": "16191:36:20"
}
]
},
"name": "checked_add_t_uint256",
"nativeSrc": "16043:191:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "x",
"nativeSrc": "16074:1:20",
"nodeType": "YulTypedName",
"src": "16074:1:20",
"type": ""
},
{
"name": "y",
"nativeSrc": "16077:1:20",
"nodeType": "YulTypedName",
"src": "16077:1:20",
"type": ""
}
],
"returnVariables": [
{
"name": "sum",
"nativeSrc": "16083:3:20",
"nodeType": "YulTypedName",
"src": "16083:3:20",
"type": ""
}
],
"src": "16043:191:20"
},
{
"body": {
"nativeSrc": "16346:62:20",
"nodeType": "YulBlock",
"src": "16346:62:20",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nativeSrc": "16368:6:20",
"nodeType": "YulIdentifier",
"src": "16368:6:20"
},
{
"kind": "number",
"nativeSrc": "16376:1:20",
"nodeType": "YulLiteral",
"src": "16376:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "16364:3:20",
"nodeType": "YulIdentifier",
"src": "16364:3:20"
},
"nativeSrc": "16364:14:20",
"nodeType": "YulFunctionCall",
"src": "16364:14:20"
},
{
"hexValue": "6e6f7420656e6f7567682062616c616e6365",
"kind": "string",
"nativeSrc": "16380:20:20",
"nodeType": "YulLiteral",
"src": "16380:20:20",
"type": "",
"value": "not enough balance"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "16357:6:20",
"nodeType": "YulIdentifier",
"src": "16357:6:20"
},
"nativeSrc": "16357:44:20",
"nodeType": "YulFunctionCall",
"src": "16357:44:20"
},
"nativeSrc": "16357:44:20",
"nodeType": "YulExpressionStatement",
"src": "16357:44:20"
}
]
},
"name": "store_literal_in_memory_596712763af5ad819c1a1c8db05ac93e50918d28937626717ff5e1d919b4454a",
"nativeSrc": "16240:168:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nativeSrc": "16338:6:20",
"nodeType": "YulTypedName",
"src": "16338:6:20",
"type": ""
}
],
"src": "16240:168:20"
},
{
"body": {
"nativeSrc": "16560:220:20",
"nodeType": "YulBlock",
"src": "16560:220:20",
"statements": [
{
"nativeSrc": "16570:74:20",
"nodeType": "YulAssignment",
"src": "16570:74:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "16636:3:20",
"nodeType": "YulIdentifier",
"src": "16636:3:20"
},
{
"kind": "number",
"nativeSrc": "16641:2:20",
"nodeType": "YulLiteral",
"src": "16641:2:20",
"type": "",
"value": "18"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nativeSrc": "16577:58:20",
"nodeType": "YulIdentifier",
"src": "16577:58:20"
},
"nativeSrc": "16577:67:20",
"nodeType": "YulFunctionCall",
"src": "16577:67:20"
},
"variableNames": [
{
"name": "pos",
"nativeSrc": "16570:3:20",
"nodeType": "YulIdentifier",
"src": "16570:3:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "16742:3:20",
"nodeType": "YulIdentifier",
"src": "16742:3:20"
}
],
"functionName": {
"name": "store_literal_in_memory_596712763af5ad819c1a1c8db05ac93e50918d28937626717ff5e1d919b4454a",
"nativeSrc": "16653:88:20",
"nodeType": "YulIdentifier",
"src": "16653:88:20"
},
"nativeSrc": "16653:93:20",
"nodeType": "YulFunctionCall",
"src": "16653:93:20"
},
"nativeSrc": "16653:93:20",
"nodeType": "YulExpressionStatement",
"src": "16653:93:20"
},
{
"nativeSrc": "16755:19:20",
"nodeType": "YulAssignment",
"src": "16755:19:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "16766:3:20",
"nodeType": "YulIdentifier",
"src": "16766:3:20"
},
{
"kind": "number",
"nativeSrc": "16771:2:20",
"nodeType": "YulLiteral",
"src": "16771:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "16762:3:20",
"nodeType": "YulIdentifier",
"src": "16762:3:20"
},
"nativeSrc": "16762:12:20",
"nodeType": "YulFunctionCall",
"src": "16762:12:20"
},
"variableNames": [
{
"name": "end",
"nativeSrc": "16755:3:20",
"nodeType": "YulIdentifier",
"src": "16755:3:20"
}
]
}
]
},
"name": "abi_encode_t_stringliteral_596712763af5ad819c1a1c8db05ac93e50918d28937626717ff5e1d919b4454a_to_t_string_memory_ptr_fromStack",
"nativeSrc": "16414:366:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nativeSrc": "16548:3:20",
"nodeType": "YulTypedName",
"src": "16548:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nativeSrc": "16556:3:20",
"nodeType": "YulTypedName",
"src": "16556:3:20",
"type": ""
}
],
"src": "16414:366:20"
},
{
"body": {
"nativeSrc": "16957:248:20",
"nodeType": "YulBlock",
"src": "16957:248:20",
"statements": [
{
"nativeSrc": "16967:26:20",
"nodeType": "YulAssignment",
"src": "16967:26:20",
"value": {
"arguments": [
{
"name": "headStart",
"nativeSrc": "16979:9:20",
"nodeType": "YulIdentifier",
"src": "16979:9:20"
},
{
"kind": "number",
"nativeSrc": "16990:2:20",
"nodeType": "YulLiteral",
"src": "16990:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "16975:3:20",
"nodeType": "YulIdentifier",
"src": "16975:3:20"
},
"nativeSrc": "16975:18:20",
"nodeType": "YulFunctionCall",
"src": "16975:18:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "16967:4:20",
"nodeType": "YulIdentifier",
"src": "16967:4:20"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "17014:9:20",
"nodeType": "YulIdentifier",
"src": "17014:9:20"
},
{
"kind": "number",
"nativeSrc": "17025:1:20",
"nodeType": "YulLiteral",
"src": "17025:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "17010:3:20",
"nodeType": "YulIdentifier",
"src": "17010:3:20"
},
"nativeSrc": "17010:17:20",
"nodeType": "YulFunctionCall",
"src": "17010:17:20"
},
{
"arguments": [
{
"name": "tail",
"nativeSrc": "17033:4:20",
"nodeType": "YulIdentifier",
"src": "17033:4:20"
},
{
"name": "headStart",
"nativeSrc": "17039:9:20",
"nodeType": "YulIdentifier",
"src": "17039:9:20"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "17029:3:20",
"nodeType": "YulIdentifier",
"src": "17029:3:20"
},
"nativeSrc": "17029:20:20",
"nodeType": "YulFunctionCall",
"src": "17029:20:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "17003:6:20",
"nodeType": "YulIdentifier",
"src": "17003:6:20"
},
"nativeSrc": "17003:47:20",
"nodeType": "YulFunctionCall",
"src": "17003:47:20"
},
"nativeSrc": "17003:47:20",
"nodeType": "YulExpressionStatement",
"src": "17003:47:20"
},
{
"nativeSrc": "17059:139:20",
"nodeType": "YulAssignment",
"src": "17059:139:20",
"value": {
"arguments": [
{
"name": "tail",
"nativeSrc": "17193:4:20",
"nodeType": "YulIdentifier",
"src": "17193:4:20"
}
],
"functionName": {
"name": "abi_encode_t_stringliteral_596712763af5ad819c1a1c8db05ac93e50918d28937626717ff5e1d919b4454a_to_t_string_memory_ptr_fromStack",
"nativeSrc": "17067:124:20",
"nodeType": "YulIdentifier",
"src": "17067:124:20"
},
"nativeSrc": "17067:131:20",
"nodeType": "YulFunctionCall",
"src": "17067:131:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "17059:4:20",
"nodeType": "YulIdentifier",
"src": "17059:4:20"
}
]
}
]
},
"name": "abi_encode_tuple_t_stringliteral_596712763af5ad819c1a1c8db05ac93e50918d28937626717ff5e1d919b4454a__to_t_string_memory_ptr__fromStack_reversed",
"nativeSrc": "16786:419:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "16937:9:20",
"nodeType": "YulTypedName",
"src": "16937:9:20",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nativeSrc": "16952:4:20",
"nodeType": "YulTypedName",
"src": "16952:4:20",
"type": ""
}
],
"src": "16786:419:20"
},
{
"body": {
"nativeSrc": "17317:67:20",
"nodeType": "YulBlock",
"src": "17317:67:20",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nativeSrc": "17339:6:20",
"nodeType": "YulIdentifier",
"src": "17339:6:20"
},
{
"kind": "number",
"nativeSrc": "17347:1:20",
"nodeType": "YulLiteral",
"src": "17347:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "17335:3:20",
"nodeType": "YulIdentifier",
"src": "17335:3:20"
},
"nativeSrc": "17335:14:20",
"nodeType": "YulFunctionCall",
"src": "17335:14:20"
},
{
"hexValue": "4e6f7420617574686f72697a656420746f206d696e742e",
"kind": "string",
"nativeSrc": "17351:25:20",
"nodeType": "YulLiteral",
"src": "17351:25:20",
"type": "",
"value": "Not authorized to mint."
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "17328:6:20",
"nodeType": "YulIdentifier",
"src": "17328:6:20"
},
"nativeSrc": "17328:49:20",
"nodeType": "YulFunctionCall",
"src": "17328:49:20"
},
"nativeSrc": "17328:49:20",
"nodeType": "YulExpressionStatement",
"src": "17328:49:20"
}
]
},
"name": "store_literal_in_memory_19fa12bcfa7d6a1607ff6d71275840261c73292c97fc8050f5d1b6b6df578e14",
"nativeSrc": "17211:173:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nativeSrc": "17309:6:20",
"nodeType": "YulTypedName",
"src": "17309:6:20",
"type": ""
}
],
"src": "17211:173:20"
},
{
"body": {
"nativeSrc": "17536:220:20",
"nodeType": "YulBlock",
"src": "17536:220:20",
"statements": [
{
"nativeSrc": "17546:74:20",
"nodeType": "YulAssignment",
"src": "17546:74:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "17612:3:20",
"nodeType": "YulIdentifier",
"src": "17612:3:20"
},
{
"kind": "number",
"nativeSrc": "17617:2:20",
"nodeType": "YulLiteral",
"src": "17617:2:20",
"type": "",
"value": "23"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nativeSrc": "17553:58:20",
"nodeType": "YulIdentifier",
"src": "17553:58:20"
},
"nativeSrc": "17553:67:20",
"nodeType": "YulFunctionCall",
"src": "17553:67:20"
},
"variableNames": [
{
"name": "pos",
"nativeSrc": "17546:3:20",
"nodeType": "YulIdentifier",
"src": "17546:3:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "17718:3:20",
"nodeType": "YulIdentifier",
"src": "17718:3:20"
}
],
"functionName": {
"name": "store_literal_in_memory_19fa12bcfa7d6a1607ff6d71275840261c73292c97fc8050f5d1b6b6df578e14",
"nativeSrc": "17629:88:20",
"nodeType": "YulIdentifier",
"src": "17629:88:20"
},
"nativeSrc": "17629:93:20",
"nodeType": "YulFunctionCall",
"src": "17629:93:20"
},
"nativeSrc": "17629:93:20",
"nodeType": "YulExpressionStatement",
"src": "17629:93:20"
},
{
"nativeSrc": "17731:19:20",
"nodeType": "YulAssignment",
"src": "17731:19:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "17742:3:20",
"nodeType": "YulIdentifier",
"src": "17742:3:20"
},
{
"kind": "number",
"nativeSrc": "17747:2:20",
"nodeType": "YulLiteral",
"src": "17747:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "17738:3:20",
"nodeType": "YulIdentifier",
"src": "17738:3:20"
},
"nativeSrc": "17738:12:20",
"nodeType": "YulFunctionCall",
"src": "17738:12:20"
},
"variableNames": [
{
"name": "end",
"nativeSrc": "17731:3:20",
"nodeType": "YulIdentifier",
"src": "17731:3:20"
}
]
}
]
},
"name": "abi_encode_t_stringliteral_19fa12bcfa7d6a1607ff6d71275840261c73292c97fc8050f5d1b6b6df578e14_to_t_string_memory_ptr_fromStack",
"nativeSrc": "17390:366:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nativeSrc": "17524:3:20",
"nodeType": "YulTypedName",
"src": "17524:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nativeSrc": "17532:3:20",
"nodeType": "YulTypedName",
"src": "17532:3:20",
"type": ""
}
],
"src": "17390:366:20"
},
{
"body": {
"nativeSrc": "17933:248:20",
"nodeType": "YulBlock",
"src": "17933:248:20",
"statements": [
{
"nativeSrc": "17943:26:20",
"nodeType": "YulAssignment",
"src": "17943:26:20",
"value": {
"arguments": [
{
"name": "headStart",
"nativeSrc": "17955:9:20",
"nodeType": "YulIdentifier",
"src": "17955:9:20"
},
{
"kind": "number",
"nativeSrc": "17966:2:20",
"nodeType": "YulLiteral",
"src": "17966:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "17951:3:20",
"nodeType": "YulIdentifier",
"src": "17951:3:20"
},
"nativeSrc": "17951:18:20",
"nodeType": "YulFunctionCall",
"src": "17951:18:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "17943:4:20",
"nodeType": "YulIdentifier",
"src": "17943:4:20"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "17990:9:20",
"nodeType": "YulIdentifier",
"src": "17990:9:20"
},
{
"kind": "number",
"nativeSrc": "18001:1:20",
"nodeType": "YulLiteral",
"src": "18001:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "17986:3:20",
"nodeType": "YulIdentifier",
"src": "17986:3:20"
},
"nativeSrc": "17986:17:20",
"nodeType": "YulFunctionCall",
"src": "17986:17:20"
},
{
"arguments": [
{
"name": "tail",
"nativeSrc": "18009:4:20",
"nodeType": "YulIdentifier",
"src": "18009:4:20"
},
{
"name": "headStart",
"nativeSrc": "18015:9:20",
"nodeType": "YulIdentifier",
"src": "18015:9:20"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "18005:3:20",
"nodeType": "YulIdentifier",
"src": "18005:3:20"
},
"nativeSrc": "18005:20:20",
"nodeType": "YulFunctionCall",
"src": "18005:20:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "17979:6:20",
"nodeType": "YulIdentifier",
"src": "17979:6:20"
},
"nativeSrc": "17979:47:20",
"nodeType": "YulFunctionCall",
"src": "17979:47:20"
},
"nativeSrc": "17979:47:20",
"nodeType": "YulExpressionStatement",
"src": "17979:47:20"
},
{
"nativeSrc": "18035:139:20",
"nodeType": "YulAssignment",
"src": "18035:139:20",
"value": {
"arguments": [
{
"name": "tail",
"nativeSrc": "18169:4:20",
"nodeType": "YulIdentifier",
"src": "18169:4:20"
}
],
"functionName": {
"name": "abi_encode_t_stringliteral_19fa12bcfa7d6a1607ff6d71275840261c73292c97fc8050f5d1b6b6df578e14_to_t_string_memory_ptr_fromStack",
"nativeSrc": "18043:124:20",
"nodeType": "YulIdentifier",
"src": "18043:124:20"
},
"nativeSrc": "18043:131:20",
"nodeType": "YulFunctionCall",
"src": "18043:131:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "18035:4:20",
"nodeType": "YulIdentifier",
"src": "18035:4:20"
}
]
}
]
},
"name": "abi_encode_tuple_t_stringliteral_19fa12bcfa7d6a1607ff6d71275840261c73292c97fc8050f5d1b6b6df578e14__to_t_string_memory_ptr__fromStack_reversed",
"nativeSrc": "17762:419:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "17913:9:20",
"nodeType": "YulTypedName",
"src": "17913:9:20",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nativeSrc": "17928:4:20",
"nodeType": "YulTypedName",
"src": "17928:4:20",
"type": ""
}
],
"src": "17762:419:20"
},
{
"body": {
"nativeSrc": "18293:64:20",
"nodeType": "YulBlock",
"src": "18293:64:20",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nativeSrc": "18315:6:20",
"nodeType": "YulIdentifier",
"src": "18315:6:20"
},
{
"kind": "number",
"nativeSrc": "18323:1:20",
"nodeType": "YulLiteral",
"src": "18323:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "18311:3:20",
"nodeType": "YulIdentifier",
"src": "18311:3:20"
},
"nativeSrc": "18311:14:20",
"nodeType": "YulFunctionCall",
"src": "18311:14:20"
},
{
"hexValue": "4d696e74696e67207a65726f20746f6b656e732e",
"kind": "string",
"nativeSrc": "18327:22:20",
"nodeType": "YulLiteral",
"src": "18327:22:20",
"type": "",
"value": "Minting zero tokens."
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "18304:6:20",
"nodeType": "YulIdentifier",
"src": "18304:6:20"
},
"nativeSrc": "18304:46:20",
"nodeType": "YulFunctionCall",
"src": "18304:46:20"
},
"nativeSrc": "18304:46:20",
"nodeType": "YulExpressionStatement",
"src": "18304:46:20"
}
]
},
"name": "store_literal_in_memory_7acedc89dd3658da26d0488f7e55737f51bdbd8424532db0708cd962cbb1712b",
"nativeSrc": "18187:170:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nativeSrc": "18285:6:20",
"nodeType": "YulTypedName",
"src": "18285:6:20",
"type": ""
}
],
"src": "18187:170:20"
},
{
"body": {
"nativeSrc": "18509:220:20",
"nodeType": "YulBlock",
"src": "18509:220:20",
"statements": [
{
"nativeSrc": "18519:74:20",
"nodeType": "YulAssignment",
"src": "18519:74:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "18585:3:20",
"nodeType": "YulIdentifier",
"src": "18585:3:20"
},
{
"kind": "number",
"nativeSrc": "18590:2:20",
"nodeType": "YulLiteral",
"src": "18590:2:20",
"type": "",
"value": "20"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nativeSrc": "18526:58:20",
"nodeType": "YulIdentifier",
"src": "18526:58:20"
},
"nativeSrc": "18526:67:20",
"nodeType": "YulFunctionCall",
"src": "18526:67:20"
},
"variableNames": [
{
"name": "pos",
"nativeSrc": "18519:3:20",
"nodeType": "YulIdentifier",
"src": "18519:3:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "18691:3:20",
"nodeType": "YulIdentifier",
"src": "18691:3:20"
}
],
"functionName": {
"name": "store_literal_in_memory_7acedc89dd3658da26d0488f7e55737f51bdbd8424532db0708cd962cbb1712b",
"nativeSrc": "18602:88:20",
"nodeType": "YulIdentifier",
"src": "18602:88:20"
},
"nativeSrc": "18602:93:20",
"nodeType": "YulFunctionCall",
"src": "18602:93:20"
},
"nativeSrc": "18602:93:20",
"nodeType": "YulExpressionStatement",
"src": "18602:93:20"
},
{
"nativeSrc": "18704:19:20",
"nodeType": "YulAssignment",
"src": "18704:19:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "18715:3:20",
"nodeType": "YulIdentifier",
"src": "18715:3:20"
},
{
"kind": "number",
"nativeSrc": "18720:2:20",
"nodeType": "YulLiteral",
"src": "18720:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "18711:3:20",
"nodeType": "YulIdentifier",
"src": "18711:3:20"
},
"nativeSrc": "18711:12:20",
"nodeType": "YulFunctionCall",
"src": "18711:12:20"
},
"variableNames": [
{
"name": "end",
"nativeSrc": "18704:3:20",
"nodeType": "YulIdentifier",
"src": "18704:3:20"
}
]
}
]
},
"name": "abi_encode_t_stringliteral_7acedc89dd3658da26d0488f7e55737f51bdbd8424532db0708cd962cbb1712b_to_t_string_memory_ptr_fromStack",
"nativeSrc": "18363:366:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nativeSrc": "18497:3:20",
"nodeType": "YulTypedName",
"src": "18497:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nativeSrc": "18505:3:20",
"nodeType": "YulTypedName",
"src": "18505:3:20",
"type": ""
}
],
"src": "18363:366:20"
},
{
"body": {
"nativeSrc": "18906:248:20",
"nodeType": "YulBlock",
"src": "18906:248:20",
"statements": [
{
"nativeSrc": "18916:26:20",
"nodeType": "YulAssignment",
"src": "18916:26:20",
"value": {
"arguments": [
{
"name": "headStart",
"nativeSrc": "18928:9:20",
"nodeType": "YulIdentifier",
"src": "18928:9:20"
},
{
"kind": "number",
"nativeSrc": "18939:2:20",
"nodeType": "YulLiteral",
"src": "18939:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "18924:3:20",
"nodeType": "YulIdentifier",
"src": "18924:3:20"
},
"nativeSrc": "18924:18:20",
"nodeType": "YulFunctionCall",
"src": "18924:18:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "18916:4:20",
"nodeType": "YulIdentifier",
"src": "18916:4:20"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "18963:9:20",
"nodeType": "YulIdentifier",
"src": "18963:9:20"
},
{
"kind": "number",
"nativeSrc": "18974:1:20",
"nodeType": "YulLiteral",
"src": "18974:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "18959:3:20",
"nodeType": "YulIdentifier",
"src": "18959:3:20"
},
"nativeSrc": "18959:17:20",
"nodeType": "YulFunctionCall",
"src": "18959:17:20"
},
{
"arguments": [
{
"name": "tail",
"nativeSrc": "18982:4:20",
"nodeType": "YulIdentifier",
"src": "18982:4:20"
},
{
"name": "headStart",
"nativeSrc": "18988:9:20",
"nodeType": "YulIdentifier",
"src": "18988:9:20"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "18978:3:20",
"nodeType": "YulIdentifier",
"src": "18978:3:20"
},
"nativeSrc": "18978:20:20",
"nodeType": "YulFunctionCall",
"src": "18978:20:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "18952:6:20",
"nodeType": "YulIdentifier",
"src": "18952:6:20"
},
"nativeSrc": "18952:47:20",
"nodeType": "YulFunctionCall",
"src": "18952:47:20"
},
"nativeSrc": "18952:47:20",
"nodeType": "YulExpressionStatement",
"src": "18952:47:20"
},
{
"nativeSrc": "19008:139:20",
"nodeType": "YulAssignment",
"src": "19008:139:20",
"value": {
"arguments": [
{
"name": "tail",
"nativeSrc": "19142:4:20",
"nodeType": "YulIdentifier",
"src": "19142:4:20"
}
],
"functionName": {
"name": "abi_encode_t_stringliteral_7acedc89dd3658da26d0488f7e55737f51bdbd8424532db0708cd962cbb1712b_to_t_string_memory_ptr_fromStack",
"nativeSrc": "19016:124:20",
"nodeType": "YulIdentifier",
"src": "19016:124:20"
},
"nativeSrc": "19016:131:20",
"nodeType": "YulFunctionCall",
"src": "19016:131:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "19008:4:20",
"nodeType": "YulIdentifier",
"src": "19008:4:20"
}
]
}
]
},
"name": "abi_encode_tuple_t_stringliteral_7acedc89dd3658da26d0488f7e55737f51bdbd8424532db0708cd962cbb1712b__to_t_string_memory_ptr__fromStack_reversed",
"nativeSrc": "18735:419:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "18886:9:20",
"nodeType": "YulTypedName",
"src": "18886:9:20",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nativeSrc": "18901:4:20",
"nodeType": "YulTypedName",
"src": "18901:4:20",
"type": ""
}
],
"src": "18735:419:20"
},
{
"body": {
"nativeSrc": "19266:67:20",
"nodeType": "YulBlock",
"src": "19266:67:20",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nativeSrc": "19288:6:20",
"nodeType": "YulIdentifier",
"src": "19288:6:20"
},
{
"kind": "number",
"nativeSrc": "19296:1:20",
"nodeType": "YulLiteral",
"src": "19296:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "19284:3:20",
"nodeType": "YulIdentifier",
"src": "19284:3:20"
},
"nativeSrc": "19284:14:20",
"nodeType": "YulFunctionCall",
"src": "19284:14:20"
},
{
"hexValue": "4e6f7420617574686f72697a656420746f206275726e2e",
"kind": "string",
"nativeSrc": "19300:25:20",
"nodeType": "YulLiteral",
"src": "19300:25:20",
"type": "",
"value": "Not authorized to burn."
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "19277:6:20",
"nodeType": "YulIdentifier",
"src": "19277:6:20"
},
"nativeSrc": "19277:49:20",
"nodeType": "YulFunctionCall",
"src": "19277:49:20"
},
"nativeSrc": "19277:49:20",
"nodeType": "YulExpressionStatement",
"src": "19277:49:20"
}
]
},
"name": "store_literal_in_memory_bfd83d10623a5529dfc6af3e2d36b3506e4ee9af9c8ff0477cf2b779ec460a88",
"nativeSrc": "19160:173:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nativeSrc": "19258:6:20",
"nodeType": "YulTypedName",
"src": "19258:6:20",
"type": ""
}
],
"src": "19160:173:20"
},
{
"body": {
"nativeSrc": "19485:220:20",
"nodeType": "YulBlock",
"src": "19485:220:20",
"statements": [
{
"nativeSrc": "19495:74:20",
"nodeType": "YulAssignment",
"src": "19495:74:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "19561:3:20",
"nodeType": "YulIdentifier",
"src": "19561:3:20"
},
{
"kind": "number",
"nativeSrc": "19566:2:20",
"nodeType": "YulLiteral",
"src": "19566:2:20",
"type": "",
"value": "23"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nativeSrc": "19502:58:20",
"nodeType": "YulIdentifier",
"src": "19502:58:20"
},
"nativeSrc": "19502:67:20",
"nodeType": "YulFunctionCall",
"src": "19502:67:20"
},
"variableNames": [
{
"name": "pos",
"nativeSrc": "19495:3:20",
"nodeType": "YulIdentifier",
"src": "19495:3:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "19667:3:20",
"nodeType": "YulIdentifier",
"src": "19667:3:20"
}
],
"functionName": {
"name": "store_literal_in_memory_bfd83d10623a5529dfc6af3e2d36b3506e4ee9af9c8ff0477cf2b779ec460a88",
"nativeSrc": "19578:88:20",
"nodeType": "YulIdentifier",
"src": "19578:88:20"
},
"nativeSrc": "19578:93:20",
"nodeType": "YulFunctionCall",
"src": "19578:93:20"
},
"nativeSrc": "19578:93:20",
"nodeType": "YulExpressionStatement",
"src": "19578:93:20"
},
{
"nativeSrc": "19680:19:20",
"nodeType": "YulAssignment",
"src": "19680:19:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "19691:3:20",
"nodeType": "YulIdentifier",
"src": "19691:3:20"
},
{
"kind": "number",
"nativeSrc": "19696:2:20",
"nodeType": "YulLiteral",
"src": "19696:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "19687:3:20",
"nodeType": "YulIdentifier",
"src": "19687:3:20"
},
"nativeSrc": "19687:12:20",
"nodeType": "YulFunctionCall",
"src": "19687:12:20"
},
"variableNames": [
{
"name": "end",
"nativeSrc": "19680:3:20",
"nodeType": "YulIdentifier",
"src": "19680:3:20"
}
]
}
]
},
"name": "abi_encode_t_stringliteral_bfd83d10623a5529dfc6af3e2d36b3506e4ee9af9c8ff0477cf2b779ec460a88_to_t_string_memory_ptr_fromStack",
"nativeSrc": "19339:366:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nativeSrc": "19473:3:20",
"nodeType": "YulTypedName",
"src": "19473:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nativeSrc": "19481:3:20",
"nodeType": "YulTypedName",
"src": "19481:3:20",
"type": ""
}
],
"src": "19339:366:20"
},
{
"body": {
"nativeSrc": "19882:248:20",
"nodeType": "YulBlock",
"src": "19882:248:20",
"statements": [
{
"nativeSrc": "19892:26:20",
"nodeType": "YulAssignment",
"src": "19892:26:20",
"value": {
"arguments": [
{
"name": "headStart",
"nativeSrc": "19904:9:20",
"nodeType": "YulIdentifier",
"src": "19904:9:20"
},
{
"kind": "number",
"nativeSrc": "19915:2:20",
"nodeType": "YulLiteral",
"src": "19915:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "19900:3:20",
"nodeType": "YulIdentifier",
"src": "19900:3:20"
},
"nativeSrc": "19900:18:20",
"nodeType": "YulFunctionCall",
"src": "19900:18:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "19892:4:20",
"nodeType": "YulIdentifier",
"src": "19892:4:20"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "19939:9:20",
"nodeType": "YulIdentifier",
"src": "19939:9:20"
},
{
"kind": "number",
"nativeSrc": "19950:1:20",
"nodeType": "YulLiteral",
"src": "19950:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "19935:3:20",
"nodeType": "YulIdentifier",
"src": "19935:3:20"
},
"nativeSrc": "19935:17:20",
"nodeType": "YulFunctionCall",
"src": "19935:17:20"
},
{
"arguments": [
{
"name": "tail",
"nativeSrc": "19958:4:20",
"nodeType": "YulIdentifier",
"src": "19958:4:20"
},
{
"name": "headStart",
"nativeSrc": "19964:9:20",
"nodeType": "YulIdentifier",
"src": "19964:9:20"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "19954:3:20",
"nodeType": "YulIdentifier",
"src": "19954:3:20"
},
"nativeSrc": "19954:20:20",
"nodeType": "YulFunctionCall",
"src": "19954:20:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "19928:6:20",
"nodeType": "YulIdentifier",
"src": "19928:6:20"
},
"nativeSrc": "19928:47:20",
"nodeType": "YulFunctionCall",
"src": "19928:47:20"
},
"nativeSrc": "19928:47:20",
"nodeType": "YulExpressionStatement",
"src": "19928:47:20"
},
{
"nativeSrc": "19984:139:20",
"nodeType": "YulAssignment",
"src": "19984:139:20",
"value": {
"arguments": [
{
"name": "tail",
"nativeSrc": "20118:4:20",
"nodeType": "YulIdentifier",
"src": "20118:4:20"
}
],
"functionName": {
"name": "abi_encode_t_stringliteral_bfd83d10623a5529dfc6af3e2d36b3506e4ee9af9c8ff0477cf2b779ec460a88_to_t_string_memory_ptr_fromStack",
"nativeSrc": "19992:124:20",
"nodeType": "YulIdentifier",
"src": "19992:124:20"
},
"nativeSrc": "19992:131:20",
"nodeType": "YulFunctionCall",
"src": "19992:131:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "19984:4:20",
"nodeType": "YulIdentifier",
"src": "19984:4:20"
}
]
}
]
},
"name": "abi_encode_tuple_t_stringliteral_bfd83d10623a5529dfc6af3e2d36b3506e4ee9af9c8ff0477cf2b779ec460a88__to_t_string_memory_ptr__fromStack_reversed",
"nativeSrc": "19711:419:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "19862:9:20",
"nodeType": "YulTypedName",
"src": "19862:9:20",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nativeSrc": "19877:4:20",
"nodeType": "YulTypedName",
"src": "19877:4:20",
"type": ""
}
],
"src": "19711:419:20"
},
{
"body": {
"nativeSrc": "20181:149:20",
"nodeType": "YulBlock",
"src": "20181:149:20",
"statements": [
{
"nativeSrc": "20191:25:20",
"nodeType": "YulAssignment",
"src": "20191:25:20",
"value": {
"arguments": [
{
"name": "x",
"nativeSrc": "20214:1:20",
"nodeType": "YulIdentifier",
"src": "20214:1:20"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nativeSrc": "20196:17:20",
"nodeType": "YulIdentifier",
"src": "20196:17:20"
},
"nativeSrc": "20196:20:20",
"nodeType": "YulFunctionCall",
"src": "20196:20:20"
},
"variableNames": [
{
"name": "x",
"nativeSrc": "20191:1:20",
"nodeType": "YulIdentifier",
"src": "20191:1:20"
}
]
},
{
"nativeSrc": "20225:25:20",
"nodeType": "YulAssignment",
"src": "20225:25:20",
"value": {
"arguments": [
{
"name": "y",
"nativeSrc": "20248:1:20",
"nodeType": "YulIdentifier",
"src": "20248:1:20"
}
],
"functionName": {
"name": "cleanup_t_uint256",
"nativeSrc": "20230:17:20",
"nodeType": "YulIdentifier",
"src": "20230:17:20"
},
"nativeSrc": "20230:20:20",
"nodeType": "YulFunctionCall",
"src": "20230:20:20"
},
"variableNames": [
{
"name": "y",
"nativeSrc": "20225:1:20",
"nodeType": "YulIdentifier",
"src": "20225:1:20"
}
]
},
{
"nativeSrc": "20259:17:20",
"nodeType": "YulAssignment",
"src": "20259:17:20",
"value": {
"arguments": [
{
"name": "x",
"nativeSrc": "20271:1:20",
"nodeType": "YulIdentifier",
"src": "20271:1:20"
},
{
"name": "y",
"nativeSrc": "20274:1:20",
"nodeType": "YulIdentifier",
"src": "20274:1:20"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "20267:3:20",
"nodeType": "YulIdentifier",
"src": "20267:3:20"
},
"nativeSrc": "20267:9:20",
"nodeType": "YulFunctionCall",
"src": "20267:9:20"
},
"variableNames": [
{
"name": "diff",
"nativeSrc": "20259:4:20",
"nodeType": "YulIdentifier",
"src": "20259:4:20"
}
]
},
{
"body": {
"nativeSrc": "20301:22:20",
"nodeType": "YulBlock",
"src": "20301:22:20",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "panic_error_0x11",
"nativeSrc": "20303:16:20",
"nodeType": "YulIdentifier",
"src": "20303:16:20"
},
"nativeSrc": "20303:18:20",
"nodeType": "YulFunctionCall",
"src": "20303:18:20"
},
"nativeSrc": "20303:18:20",
"nodeType": "YulExpressionStatement",
"src": "20303:18:20"
}
]
},
"condition": {
"arguments": [
{
"name": "diff",
"nativeSrc": "20292:4:20",
"nodeType": "YulIdentifier",
"src": "20292:4:20"
},
{
"name": "x",
"nativeSrc": "20298:1:20",
"nodeType": "YulIdentifier",
"src": "20298:1:20"
}
],
"functionName": {
"name": "gt",
"nativeSrc": "20289:2:20",
"nodeType": "YulIdentifier",
"src": "20289:2:20"
},
"nativeSrc": "20289:11:20",
"nodeType": "YulFunctionCall",
"src": "20289:11:20"
},
"nativeSrc": "20286:37:20",
"nodeType": "YulIf",
"src": "20286:37:20"
}
]
},
"name": "checked_sub_t_uint256",
"nativeSrc": "20136:194:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "x",
"nativeSrc": "20167:1:20",
"nodeType": "YulTypedName",
"src": "20167:1:20",
"type": ""
},
{
"name": "y",
"nativeSrc": "20170:1:20",
"nodeType": "YulTypedName",
"src": "20170:1:20",
"type": ""
}
],
"returnVariables": [
{
"name": "diff",
"nativeSrc": "20176:4:20",
"nodeType": "YulTypedName",
"src": "20176:4:20",
"type": ""
}
],
"src": "20136:194:20"
},
{
"body": {
"nativeSrc": "20442:118:20",
"nodeType": "YulBlock",
"src": "20442:118:20",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nativeSrc": "20464:6:20",
"nodeType": "YulIdentifier",
"src": "20464:6:20"
},
{
"kind": "number",
"nativeSrc": "20472:1:20",
"nodeType": "YulLiteral",
"src": "20472:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "20460:3:20",
"nodeType": "YulIdentifier",
"src": "20460:3:20"
},
"nativeSrc": "20460:14:20",
"nodeType": "YulFunctionCall",
"src": "20460:14:20"
},
{
"hexValue": "45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77",
"kind": "string",
"nativeSrc": "20476:34:20",
"nodeType": "YulLiteral",
"src": "20476:34:20",
"type": "",
"value": "ERC20: decreased allowance below"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "20453:6:20",
"nodeType": "YulIdentifier",
"src": "20453:6:20"
},
"nativeSrc": "20453:58:20",
"nodeType": "YulFunctionCall",
"src": "20453:58:20"
},
"nativeSrc": "20453:58:20",
"nodeType": "YulExpressionStatement",
"src": "20453:58:20"
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nativeSrc": "20532:6:20",
"nodeType": "YulIdentifier",
"src": "20532:6:20"
},
{
"kind": "number",
"nativeSrc": "20540:2:20",
"nodeType": "YulLiteral",
"src": "20540:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "20528:3:20",
"nodeType": "YulIdentifier",
"src": "20528:3:20"
},
"nativeSrc": "20528:15:20",
"nodeType": "YulFunctionCall",
"src": "20528:15:20"
},
{
"hexValue": "207a65726f",
"kind": "string",
"nativeSrc": "20545:7:20",
"nodeType": "YulLiteral",
"src": "20545:7:20",
"type": "",
"value": " zero"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "20521:6:20",
"nodeType": "YulIdentifier",
"src": "20521:6:20"
},
"nativeSrc": "20521:32:20",
"nodeType": "YulFunctionCall",
"src": "20521:32:20"
},
"nativeSrc": "20521:32:20",
"nodeType": "YulExpressionStatement",
"src": "20521:32:20"
}
]
},
"name": "store_literal_in_memory_f8b476f7d28209d77d4a4ac1fe36b9f8259aa1bb6bddfa6e89de7e51615cf8a8",
"nativeSrc": "20336:224:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nativeSrc": "20434:6:20",
"nodeType": "YulTypedName",
"src": "20434:6:20",
"type": ""
}
],
"src": "20336:224:20"
},
{
"body": {
"nativeSrc": "20712:220:20",
"nodeType": "YulBlock",
"src": "20712:220:20",
"statements": [
{
"nativeSrc": "20722:74:20",
"nodeType": "YulAssignment",
"src": "20722:74:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "20788:3:20",
"nodeType": "YulIdentifier",
"src": "20788:3:20"
},
{
"kind": "number",
"nativeSrc": "20793:2:20",
"nodeType": "YulLiteral",
"src": "20793:2:20",
"type": "",
"value": "37"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nativeSrc": "20729:58:20",
"nodeType": "YulIdentifier",
"src": "20729:58:20"
},
"nativeSrc": "20729:67:20",
"nodeType": "YulFunctionCall",
"src": "20729:67:20"
},
"variableNames": [
{
"name": "pos",
"nativeSrc": "20722:3:20",
"nodeType": "YulIdentifier",
"src": "20722:3:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "20894:3:20",
"nodeType": "YulIdentifier",
"src": "20894:3:20"
}
],
"functionName": {
"name": "store_literal_in_memory_f8b476f7d28209d77d4a4ac1fe36b9f8259aa1bb6bddfa6e89de7e51615cf8a8",
"nativeSrc": "20805:88:20",
"nodeType": "YulIdentifier",
"src": "20805:88:20"
},
"nativeSrc": "20805:93:20",
"nodeType": "YulFunctionCall",
"src": "20805:93:20"
},
"nativeSrc": "20805:93:20",
"nodeType": "YulExpressionStatement",
"src": "20805:93:20"
},
{
"nativeSrc": "20907:19:20",
"nodeType": "YulAssignment",
"src": "20907:19:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "20918:3:20",
"nodeType": "YulIdentifier",
"src": "20918:3:20"
},
{
"kind": "number",
"nativeSrc": "20923:2:20",
"nodeType": "YulLiteral",
"src": "20923:2:20",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "add",
"nativeSrc": "20914:3:20",
"nodeType": "YulIdentifier",
"src": "20914:3:20"
},
"nativeSrc": "20914:12:20",
"nodeType": "YulFunctionCall",
"src": "20914:12:20"
},
"variableNames": [
{
"name": "end",
"nativeSrc": "20907:3:20",
"nodeType": "YulIdentifier",
"src": "20907:3:20"
}
]
}
]
},
"name": "abi_encode_t_stringliteral_f8b476f7d28209d77d4a4ac1fe36b9f8259aa1bb6bddfa6e89de7e51615cf8a8_to_t_string_memory_ptr_fromStack",
"nativeSrc": "20566:366:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nativeSrc": "20700:3:20",
"nodeType": "YulTypedName",
"src": "20700:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nativeSrc": "20708:3:20",
"nodeType": "YulTypedName",
"src": "20708:3:20",
"type": ""
}
],
"src": "20566:366:20"
},
{
"body": {
"nativeSrc": "21109:248:20",
"nodeType": "YulBlock",
"src": "21109:248:20",
"statements": [
{
"nativeSrc": "21119:26:20",
"nodeType": "YulAssignment",
"src": "21119:26:20",
"value": {
"arguments": [
{
"name": "headStart",
"nativeSrc": "21131:9:20",
"nodeType": "YulIdentifier",
"src": "21131:9:20"
},
{
"kind": "number",
"nativeSrc": "21142:2:20",
"nodeType": "YulLiteral",
"src": "21142:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "21127:3:20",
"nodeType": "YulIdentifier",
"src": "21127:3:20"
},
"nativeSrc": "21127:18:20",
"nodeType": "YulFunctionCall",
"src": "21127:18:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "21119:4:20",
"nodeType": "YulIdentifier",
"src": "21119:4:20"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "21166:9:20",
"nodeType": "YulIdentifier",
"src": "21166:9:20"
},
{
"kind": "number",
"nativeSrc": "21177:1:20",
"nodeType": "YulLiteral",
"src": "21177:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "21162:3:20",
"nodeType": "YulIdentifier",
"src": "21162:3:20"
},
"nativeSrc": "21162:17:20",
"nodeType": "YulFunctionCall",
"src": "21162:17:20"
},
{
"arguments": [
{
"name": "tail",
"nativeSrc": "21185:4:20",
"nodeType": "YulIdentifier",
"src": "21185:4:20"
},
{
"name": "headStart",
"nativeSrc": "21191:9:20",
"nodeType": "YulIdentifier",
"src": "21191:9:20"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "21181:3:20",
"nodeType": "YulIdentifier",
"src": "21181:3:20"
},
"nativeSrc": "21181:20:20",
"nodeType": "YulFunctionCall",
"src": "21181:20:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "21155:6:20",
"nodeType": "YulIdentifier",
"src": "21155:6:20"
},
"nativeSrc": "21155:47:20",
"nodeType": "YulFunctionCall",
"src": "21155:47:20"
},
"nativeSrc": "21155:47:20",
"nodeType": "YulExpressionStatement",
"src": "21155:47:20"
},
{
"nativeSrc": "21211:139:20",
"nodeType": "YulAssignment",
"src": "21211:139:20",
"value": {
"arguments": [
{
"name": "tail",
"nativeSrc": "21345:4:20",
"nodeType": "YulIdentifier",
"src": "21345:4:20"
}
],
"functionName": {
"name": "abi_encode_t_stringliteral_f8b476f7d28209d77d4a4ac1fe36b9f8259aa1bb6bddfa6e89de7e51615cf8a8_to_t_string_memory_ptr_fromStack",
"nativeSrc": "21219:124:20",
"nodeType": "YulIdentifier",
"src": "21219:124:20"
},
"nativeSrc": "21219:131:20",
"nodeType": "YulFunctionCall",
"src": "21219:131:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "21211:4:20",
"nodeType": "YulIdentifier",
"src": "21211:4:20"
}
]
}
]
},
"name": "abi_encode_tuple_t_stringliteral_f8b476f7d28209d77d4a4ac1fe36b9f8259aa1bb6bddfa6e89de7e51615cf8a8__to_t_string_memory_ptr__fromStack_reversed",
"nativeSrc": "20938:419:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "21089:9:20",
"nodeType": "YulTypedName",
"src": "21089:9:20",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nativeSrc": "21104:4:20",
"nodeType": "YulTypedName",
"src": "21104:4:20",
"type": ""
}
],
"src": "20938:419:20"
},
{
"body": {
"nativeSrc": "21391:152:20",
"nodeType": "YulBlock",
"src": "21391:152:20",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "21408:1:20",
"nodeType": "YulLiteral",
"src": "21408:1:20",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "21411:77:20",
"nodeType": "YulLiteral",
"src": "21411:77:20",
"type": "",
"value": "35408467139433450592217433187231851964531694900788300625387963629091585785856"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "21401:6:20",
"nodeType": "YulIdentifier",
"src": "21401:6:20"
},
"nativeSrc": "21401:88:20",
"nodeType": "YulFunctionCall",
"src": "21401:88:20"
},
"nativeSrc": "21401:88:20",
"nodeType": "YulExpressionStatement",
"src": "21401:88:20"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "21505:1:20",
"nodeType": "YulLiteral",
"src": "21505:1:20",
"type": "",
"value": "4"
},
{
"kind": "number",
"nativeSrc": "21508:4:20",
"nodeType": "YulLiteral",
"src": "21508:4:20",
"type": "",
"value": "0x32"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "21498:6:20",
"nodeType": "YulIdentifier",
"src": "21498:6:20"
},
"nativeSrc": "21498:15:20",
"nodeType": "YulFunctionCall",
"src": "21498:15:20"
},
"nativeSrc": "21498:15:20",
"nodeType": "YulExpressionStatement",
"src": "21498:15:20"
},
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "21529:1:20",
"nodeType": "YulLiteral",
"src": "21529:1:20",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "21532:4:20",
"nodeType": "YulLiteral",
"src": "21532:4:20",
"type": "",
"value": "0x24"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "21522:6:20",
"nodeType": "YulIdentifier",
"src": "21522:6:20"
},
"nativeSrc": "21522:15:20",
"nodeType": "YulFunctionCall",
"src": "21522:15:20"
},
"nativeSrc": "21522:15:20",
"nodeType": "YulExpressionStatement",
"src": "21522:15:20"
}
]
},
"name": "panic_error_0x32",
"nativeSrc": "21363:180:20",
"nodeType": "YulFunctionDefinition",
"src": "21363:180:20"
},
{
"body": {
"nativeSrc": "21638:28:20",
"nodeType": "YulBlock",
"src": "21638:28:20",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "21655:1:20",
"nodeType": "YulLiteral",
"src": "21655:1:20",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "21658:1:20",
"nodeType": "YulLiteral",
"src": "21658:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "21648:6:20",
"nodeType": "YulIdentifier",
"src": "21648:6:20"
},
"nativeSrc": "21648:12:20",
"nodeType": "YulFunctionCall",
"src": "21648:12:20"
},
"nativeSrc": "21648:12:20",
"nodeType": "YulExpressionStatement",
"src": "21648:12:20"
}
]
},
"name": "revert_error_356d538aaf70fba12156cc466564b792649f8f3befb07b071c91142253e175ad",
"nativeSrc": "21549:117:20",
"nodeType": "YulFunctionDefinition",
"src": "21549:117:20"
},
{
"body": {
"nativeSrc": "21761:28:20",
"nodeType": "YulBlock",
"src": "21761:28:20",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "21778:1:20",
"nodeType": "YulLiteral",
"src": "21778:1:20",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "21781:1:20",
"nodeType": "YulLiteral",
"src": "21781:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "21771:6:20",
"nodeType": "YulIdentifier",
"src": "21771:6:20"
},
"nativeSrc": "21771:12:20",
"nodeType": "YulFunctionCall",
"src": "21771:12:20"
},
"nativeSrc": "21771:12:20",
"nodeType": "YulExpressionStatement",
"src": "21771:12:20"
}
]
},
"name": "revert_error_1e55d03107e9c4f1b5e21c76a16fba166a461117ab153bcce65e6a4ea8e5fc8a",
"nativeSrc": "21672:117:20",
"nodeType": "YulFunctionDefinition",
"src": "21672:117:20"
},
{
"body": {
"nativeSrc": "21884:28:20",
"nodeType": "YulBlock",
"src": "21884:28:20",
"statements": [
{
"expression": {
"arguments": [
{
"kind": "number",
"nativeSrc": "21901:1:20",
"nodeType": "YulLiteral",
"src": "21901:1:20",
"type": "",
"value": "0"
},
{
"kind": "number",
"nativeSrc": "21904:1:20",
"nodeType": "YulLiteral",
"src": "21904:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "revert",
"nativeSrc": "21894:6:20",
"nodeType": "YulIdentifier",
"src": "21894:6:20"
},
"nativeSrc": "21894:12:20",
"nodeType": "YulFunctionCall",
"src": "21894:12:20"
},
"nativeSrc": "21894:12:20",
"nodeType": "YulExpressionStatement",
"src": "21894:12:20"
}
]
},
"name": "revert_error_977805620ff29572292dee35f70b0f3f3f73d3fdd0e9f4d7a901c2e43ab18a2e",
"nativeSrc": "21795:117:20",
"nodeType": "YulFunctionDefinition",
"src": "21795:117:20"
},
{
"body": {
"nativeSrc": "22008:634:20",
"nodeType": "YulBlock",
"src": "22008:634:20",
"statements": [
{
"nativeSrc": "22018:51:20",
"nodeType": "YulVariableDeclaration",
"src": "22018:51:20",
"value": {
"arguments": [
{
"name": "ptr_to_tail",
"nativeSrc": "22057:11:20",
"nodeType": "YulIdentifier",
"src": "22057:11:20"
}
],
"functionName": {
"name": "calldataload",
"nativeSrc": "22044:12:20",
"nodeType": "YulIdentifier",
"src": "22044:12:20"
},
"nativeSrc": "22044:25:20",
"nodeType": "YulFunctionCall",
"src": "22044:25:20"
},
"variables": [
{
"name": "rel_offset_of_tail",
"nativeSrc": "22022:18:20",
"nodeType": "YulTypedName",
"src": "22022:18:20",
"type": ""
}
]
},
{
"body": {
"nativeSrc": "22163:83:20",
"nodeType": "YulBlock",
"src": "22163:83:20",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_356d538aaf70fba12156cc466564b792649f8f3befb07b071c91142253e175ad",
"nativeSrc": "22165:77:20",
"nodeType": "YulIdentifier",
"src": "22165:77:20"
},
"nativeSrc": "22165:79:20",
"nodeType": "YulFunctionCall",
"src": "22165:79:20"
},
"nativeSrc": "22165:79:20",
"nodeType": "YulExpressionStatement",
"src": "22165:79:20"
}
]
},
"condition": {
"arguments": [
{
"arguments": [
{
"name": "rel_offset_of_tail",
"nativeSrc": "22092:18:20",
"nodeType": "YulIdentifier",
"src": "22092:18:20"
},
{
"arguments": [
{
"arguments": [
{
"arguments": [],
"functionName": {
"name": "calldatasize",
"nativeSrc": "22120:12:20",
"nodeType": "YulIdentifier",
"src": "22120:12:20"
},
"nativeSrc": "22120:14:20",
"nodeType": "YulFunctionCall",
"src": "22120:14:20"
},
{
"name": "base_ref",
"nativeSrc": "22136:8:20",
"nodeType": "YulIdentifier",
"src": "22136:8:20"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "22116:3:20",
"nodeType": "YulIdentifier",
"src": "22116:3:20"
},
"nativeSrc": "22116:29:20",
"nodeType": "YulFunctionCall",
"src": "22116:29:20"
},
{
"arguments": [
{
"kind": "number",
"nativeSrc": "22151:4:20",
"nodeType": "YulLiteral",
"src": "22151:4:20",
"type": "",
"value": "0x20"
},
{
"kind": "number",
"nativeSrc": "22157:1:20",
"nodeType": "YulLiteral",
"src": "22157:1:20",
"type": "",
"value": "1"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "22147:3:20",
"nodeType": "YulIdentifier",
"src": "22147:3:20"
},
"nativeSrc": "22147:12:20",
"nodeType": "YulFunctionCall",
"src": "22147:12:20"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "22112:3:20",
"nodeType": "YulIdentifier",
"src": "22112:3:20"
},
"nativeSrc": "22112:48:20",
"nodeType": "YulFunctionCall",
"src": "22112:48:20"
}
],
"functionName": {
"name": "slt",
"nativeSrc": "22088:3:20",
"nodeType": "YulIdentifier",
"src": "22088:3:20"
},
"nativeSrc": "22088:73:20",
"nodeType": "YulFunctionCall",
"src": "22088:73:20"
}
],
"functionName": {
"name": "iszero",
"nativeSrc": "22081:6:20",
"nodeType": "YulIdentifier",
"src": "22081:6:20"
},
"nativeSrc": "22081:81:20",
"nodeType": "YulFunctionCall",
"src": "22081:81:20"
},
"nativeSrc": "22078:168:20",
"nodeType": "YulIf",
"src": "22078:168:20"
},
{
"nativeSrc": "22255:41:20",
"nodeType": "YulAssignment",
"src": "22255:41:20",
"value": {
"arguments": [
{
"name": "base_ref",
"nativeSrc": "22267:8:20",
"nodeType": "YulIdentifier",
"src": "22267:8:20"
},
{
"name": "rel_offset_of_tail",
"nativeSrc": "22277:18:20",
"nodeType": "YulIdentifier",
"src": "22277:18:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "22263:3:20",
"nodeType": "YulIdentifier",
"src": "22263:3:20"
},
"nativeSrc": "22263:33:20",
"nodeType": "YulFunctionCall",
"src": "22263:33:20"
},
"variableNames": [
{
"name": "addr",
"nativeSrc": "22255:4:20",
"nodeType": "YulIdentifier",
"src": "22255:4:20"
}
]
},
{
"nativeSrc": "22306:28:20",
"nodeType": "YulAssignment",
"src": "22306:28:20",
"value": {
"arguments": [
{
"name": "addr",
"nativeSrc": "22329:4:20",
"nodeType": "YulIdentifier",
"src": "22329:4:20"
}
],
"functionName": {
"name": "calldataload",
"nativeSrc": "22316:12:20",
"nodeType": "YulIdentifier",
"src": "22316:12:20"
},
"nativeSrc": "22316:18:20",
"nodeType": "YulFunctionCall",
"src": "22316:18:20"
},
"variableNames": [
{
"name": "length",
"nativeSrc": "22306:6:20",
"nodeType": "YulIdentifier",
"src": "22306:6:20"
}
]
},
{
"body": {
"nativeSrc": "22377:83:20",
"nodeType": "YulBlock",
"src": "22377:83:20",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_1e55d03107e9c4f1b5e21c76a16fba166a461117ab153bcce65e6a4ea8e5fc8a",
"nativeSrc": "22379:77:20",
"nodeType": "YulIdentifier",
"src": "22379:77:20"
},
"nativeSrc": "22379:79:20",
"nodeType": "YulFunctionCall",
"src": "22379:79:20"
},
"nativeSrc": "22379:79:20",
"nodeType": "YulExpressionStatement",
"src": "22379:79:20"
}
]
},
"condition": {
"arguments": [
{
"name": "length",
"nativeSrc": "22349:6:20",
"nodeType": "YulIdentifier",
"src": "22349:6:20"
},
{
"kind": "number",
"nativeSrc": "22357:18:20",
"nodeType": "YulLiteral",
"src": "22357:18:20",
"type": "",
"value": "0xffffffffffffffff"
}
],
"functionName": {
"name": "gt",
"nativeSrc": "22346:2:20",
"nodeType": "YulIdentifier",
"src": "22346:2:20"
},
"nativeSrc": "22346:30:20",
"nodeType": "YulFunctionCall",
"src": "22346:30:20"
},
"nativeSrc": "22343:117:20",
"nodeType": "YulIf",
"src": "22343:117:20"
},
{
"nativeSrc": "22469:21:20",
"nodeType": "YulAssignment",
"src": "22469:21:20",
"value": {
"arguments": [
{
"name": "addr",
"nativeSrc": "22481:4:20",
"nodeType": "YulIdentifier",
"src": "22481:4:20"
},
{
"kind": "number",
"nativeSrc": "22487:2:20",
"nodeType": "YulLiteral",
"src": "22487:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "22477:3:20",
"nodeType": "YulIdentifier",
"src": "22477:3:20"
},
"nativeSrc": "22477:13:20",
"nodeType": "YulFunctionCall",
"src": "22477:13:20"
},
"variableNames": [
{
"name": "addr",
"nativeSrc": "22469:4:20",
"nodeType": "YulIdentifier",
"src": "22469:4:20"
}
]
},
{
"body": {
"nativeSrc": "22552:83:20",
"nodeType": "YulBlock",
"src": "22552:83:20",
"statements": [
{
"expression": {
"arguments": [],
"functionName": {
"name": "revert_error_977805620ff29572292dee35f70b0f3f3f73d3fdd0e9f4d7a901c2e43ab18a2e",
"nativeSrc": "22554:77:20",
"nodeType": "YulIdentifier",
"src": "22554:77:20"
},
"nativeSrc": "22554:79:20",
"nodeType": "YulFunctionCall",
"src": "22554:79:20"
},
"nativeSrc": "22554:79:20",
"nodeType": "YulExpressionStatement",
"src": "22554:79:20"
}
]
},
"condition": {
"arguments": [
{
"name": "addr",
"nativeSrc": "22506:4:20",
"nodeType": "YulIdentifier",
"src": "22506:4:20"
},
{
"arguments": [
{
"arguments": [],
"functionName": {
"name": "calldatasize",
"nativeSrc": "22516:12:20",
"nodeType": "YulIdentifier",
"src": "22516:12:20"
},
"nativeSrc": "22516:14:20",
"nodeType": "YulFunctionCall",
"src": "22516:14:20"
},
{
"arguments": [
{
"name": "length",
"nativeSrc": "22536:6:20",
"nodeType": "YulIdentifier",
"src": "22536:6:20"
},
{
"kind": "number",
"nativeSrc": "22544:4:20",
"nodeType": "YulLiteral",
"src": "22544:4:20",
"type": "",
"value": "0x01"
}
],
"functionName": {
"name": "mul",
"nativeSrc": "22532:3:20",
"nodeType": "YulIdentifier",
"src": "22532:3:20"
},
"nativeSrc": "22532:17:20",
"nodeType": "YulFunctionCall",
"src": "22532:17:20"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "22512:3:20",
"nodeType": "YulIdentifier",
"src": "22512:3:20"
},
"nativeSrc": "22512:38:20",
"nodeType": "YulFunctionCall",
"src": "22512:38:20"
}
],
"functionName": {
"name": "sgt",
"nativeSrc": "22502:3:20",
"nodeType": "YulIdentifier",
"src": "22502:3:20"
},
"nativeSrc": "22502:49:20",
"nodeType": "YulFunctionCall",
"src": "22502:49:20"
},
"nativeSrc": "22499:136:20",
"nodeType": "YulIf",
"src": "22499:136:20"
}
]
},
"name": "access_calldata_tail_t_bytes_calldata_ptr",
"nativeSrc": "21918:724:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "base_ref",
"nativeSrc": "21969:8:20",
"nodeType": "YulTypedName",
"src": "21969:8:20",
"type": ""
},
{
"name": "ptr_to_tail",
"nativeSrc": "21979:11:20",
"nodeType": "YulTypedName",
"src": "21979:11:20",
"type": ""
}
],
"returnVariables": [
{
"name": "addr",
"nativeSrc": "21995:4:20",
"nodeType": "YulTypedName",
"src": "21995:4:20",
"type": ""
},
{
"name": "length",
"nativeSrc": "22001:6:20",
"nodeType": "YulTypedName",
"src": "22001:6:20",
"type": ""
}
],
"src": "21918:724:20"
},
{
"body": {
"nativeSrc": "22761:34:20",
"nodeType": "YulBlock",
"src": "22761:34:20",
"statements": [
{
"nativeSrc": "22771:18:20",
"nodeType": "YulAssignment",
"src": "22771:18:20",
"value": {
"name": "pos",
"nativeSrc": "22786:3:20",
"nodeType": "YulIdentifier",
"src": "22786:3:20"
},
"variableNames": [
{
"name": "updated_pos",
"nativeSrc": "22771:11:20",
"nodeType": "YulIdentifier",
"src": "22771:11:20"
}
]
}
]
},
"name": "array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack",
"nativeSrc": "22648:147:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nativeSrc": "22733:3:20",
"nodeType": "YulTypedName",
"src": "22733:3:20",
"type": ""
},
{
"name": "length",
"nativeSrc": "22738:6:20",
"nodeType": "YulTypedName",
"src": "22738:6:20",
"type": ""
}
],
"returnVariables": [
{
"name": "updated_pos",
"nativeSrc": "22749:11:20",
"nodeType": "YulTypedName",
"src": "22749:11:20",
"type": ""
}
],
"src": "22648:147:20"
},
{
"body": {
"nativeSrc": "22941:209:20",
"nodeType": "YulBlock",
"src": "22941:209:20",
"statements": [
{
"nativeSrc": "22951:95:20",
"nodeType": "YulAssignment",
"src": "22951:95:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "23034:3:20",
"nodeType": "YulIdentifier",
"src": "23034:3:20"
},
{
"name": "length",
"nativeSrc": "23039:6:20",
"nodeType": "YulIdentifier",
"src": "23039:6:20"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_bytes_memory_ptr_nonPadded_inplace_fromStack",
"nativeSrc": "22958:75:20",
"nodeType": "YulIdentifier",
"src": "22958:75:20"
},
"nativeSrc": "22958:88:20",
"nodeType": "YulFunctionCall",
"src": "22958:88:20"
},
"variableNames": [
{
"name": "pos",
"nativeSrc": "22951:3:20",
"nodeType": "YulIdentifier",
"src": "22951:3:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "start",
"nativeSrc": "23093:5:20",
"nodeType": "YulIdentifier",
"src": "23093:5:20"
},
{
"name": "pos",
"nativeSrc": "23100:3:20",
"nodeType": "YulIdentifier",
"src": "23100:3:20"
},
{
"name": "length",
"nativeSrc": "23105:6:20",
"nodeType": "YulIdentifier",
"src": "23105:6:20"
}
],
"functionName": {
"name": "copy_calldata_to_memory_with_cleanup",
"nativeSrc": "23056:36:20",
"nodeType": "YulIdentifier",
"src": "23056:36:20"
},
"nativeSrc": "23056:56:20",
"nodeType": "YulFunctionCall",
"src": "23056:56:20"
},
"nativeSrc": "23056:56:20",
"nodeType": "YulExpressionStatement",
"src": "23056:56:20"
},
{
"nativeSrc": "23121:23:20",
"nodeType": "YulAssignment",
"src": "23121:23:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "23132:3:20",
"nodeType": "YulIdentifier",
"src": "23132:3:20"
},
{
"name": "length",
"nativeSrc": "23137:6:20",
"nodeType": "YulIdentifier",
"src": "23137:6:20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "23128:3:20",
"nodeType": "YulIdentifier",
"src": "23128:3:20"
},
"nativeSrc": "23128:16:20",
"nodeType": "YulFunctionCall",
"src": "23128:16:20"
},
"variableNames": [
{
"name": "end",
"nativeSrc": "23121:3:20",
"nodeType": "YulIdentifier",
"src": "23121:3:20"
}
]
}
]
},
"name": "abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack",
"nativeSrc": "22823:327:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "start",
"nativeSrc": "22914:5:20",
"nodeType": "YulTypedName",
"src": "22914:5:20",
"type": ""
},
{
"name": "length",
"nativeSrc": "22921:6:20",
"nodeType": "YulTypedName",
"src": "22921:6:20",
"type": ""
},
{
"name": "pos",
"nativeSrc": "22929:3:20",
"nodeType": "YulTypedName",
"src": "22929:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nativeSrc": "22937:3:20",
"nodeType": "YulTypedName",
"src": "22937:3:20",
"type": ""
}
],
"src": "22823:327:20"
},
{
"body": {
"nativeSrc": "23198:52:20",
"nodeType": "YulBlock",
"src": "23198:52:20",
"statements": [
{
"nativeSrc": "23208:35:20",
"nodeType": "YulAssignment",
"src": "23208:35:20",
"value": {
"arguments": [
{
"kind": "number",
"nativeSrc": "23233:2:20",
"nodeType": "YulLiteral",
"src": "23233:2:20",
"type": "",
"value": "96"
},
{
"name": "value",
"nativeSrc": "23237:5:20",
"nodeType": "YulIdentifier",
"src": "23237:5:20"
}
],
"functionName": {
"name": "shl",
"nativeSrc": "23229:3:20",
"nodeType": "YulIdentifier",
"src": "23229:3:20"
},
"nativeSrc": "23229:14:20",
"nodeType": "YulFunctionCall",
"src": "23229:14:20"
},
"variableNames": [
{
"name": "newValue",
"nativeSrc": "23208:8:20",
"nodeType": "YulIdentifier",
"src": "23208:8:20"
}
]
}
]
},
"name": "shift_left_96",
"nativeSrc": "23156:94:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "23179:5:20",
"nodeType": "YulTypedName",
"src": "23179:5:20",
"type": ""
}
],
"returnVariables": [
{
"name": "newValue",
"nativeSrc": "23189:8:20",
"nodeType": "YulTypedName",
"src": "23189:8:20",
"type": ""
}
],
"src": "23156:94:20"
},
{
"body": {
"nativeSrc": "23303:47:20",
"nodeType": "YulBlock",
"src": "23303:47:20",
"statements": [
{
"nativeSrc": "23313:31:20",
"nodeType": "YulAssignment",
"src": "23313:31:20",
"value": {
"arguments": [
{
"name": "value",
"nativeSrc": "23338:5:20",
"nodeType": "YulIdentifier",
"src": "23338:5:20"
}
],
"functionName": {
"name": "shift_left_96",
"nativeSrc": "23324:13:20",
"nodeType": "YulIdentifier",
"src": "23324:13:20"
},
"nativeSrc": "23324:20:20",
"nodeType": "YulFunctionCall",
"src": "23324:20:20"
},
"variableNames": [
{
"name": "aligned",
"nativeSrc": "23313:7:20",
"nodeType": "YulIdentifier",
"src": "23313:7:20"
}
]
}
]
},
"name": "leftAlign_t_uint160",
"nativeSrc": "23256:94:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "23285:5:20",
"nodeType": "YulTypedName",
"src": "23285:5:20",
"type": ""
}
],
"returnVariables": [
{
"name": "aligned",
"nativeSrc": "23295:7:20",
"nodeType": "YulTypedName",
"src": "23295:7:20",
"type": ""
}
],
"src": "23256:94:20"
},
{
"body": {
"nativeSrc": "23403:53:20",
"nodeType": "YulBlock",
"src": "23403:53:20",
"statements": [
{
"nativeSrc": "23413:37:20",
"nodeType": "YulAssignment",
"src": "23413:37:20",
"value": {
"arguments": [
{
"name": "value",
"nativeSrc": "23444:5:20",
"nodeType": "YulIdentifier",
"src": "23444:5:20"
}
],
"functionName": {
"name": "leftAlign_t_uint160",
"nativeSrc": "23424:19:20",
"nodeType": "YulIdentifier",
"src": "23424:19:20"
},
"nativeSrc": "23424:26:20",
"nodeType": "YulFunctionCall",
"src": "23424:26:20"
},
"variableNames": [
{
"name": "aligned",
"nativeSrc": "23413:7:20",
"nodeType": "YulIdentifier",
"src": "23413:7:20"
}
]
}
]
},
"name": "leftAlign_t_address",
"nativeSrc": "23356:100:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "23385:5:20",
"nodeType": "YulTypedName",
"src": "23385:5:20",
"type": ""
}
],
"returnVariables": [
{
"name": "aligned",
"nativeSrc": "23395:7:20",
"nodeType": "YulTypedName",
"src": "23395:7:20",
"type": ""
}
],
"src": "23356:100:20"
},
{
"body": {
"nativeSrc": "23545:74:20",
"nodeType": "YulBlock",
"src": "23545:74:20",
"statements": [
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "23562:3:20",
"nodeType": "YulIdentifier",
"src": "23562:3:20"
},
{
"arguments": [
{
"arguments": [
{
"name": "value",
"nativeSrc": "23605:5:20",
"nodeType": "YulIdentifier",
"src": "23605:5:20"
}
],
"functionName": {
"name": "cleanup_t_address",
"nativeSrc": "23587:17:20",
"nodeType": "YulIdentifier",
"src": "23587:17:20"
},
"nativeSrc": "23587:24:20",
"nodeType": "YulFunctionCall",
"src": "23587:24:20"
}
],
"functionName": {
"name": "leftAlign_t_address",
"nativeSrc": "23567:19:20",
"nodeType": "YulIdentifier",
"src": "23567:19:20"
},
"nativeSrc": "23567:45:20",
"nodeType": "YulFunctionCall",
"src": "23567:45:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "23555:6:20",
"nodeType": "YulIdentifier",
"src": "23555:6:20"
},
"nativeSrc": "23555:58:20",
"nodeType": "YulFunctionCall",
"src": "23555:58:20"
},
"nativeSrc": "23555:58:20",
"nodeType": "YulExpressionStatement",
"src": "23555:58:20"
}
]
},
"name": "abi_encode_t_address_to_t_address_nonPadded_inplace_fromStack",
"nativeSrc": "23462:157:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "value",
"nativeSrc": "23533:5:20",
"nodeType": "YulTypedName",
"src": "23533:5:20",
"type": ""
},
{
"name": "pos",
"nativeSrc": "23540:3:20",
"nodeType": "YulTypedName",
"src": "23540:3:20",
"type": ""
}
],
"src": "23462:157:20"
},
{
"body": {
"nativeSrc": "23797:260:20",
"nodeType": "YulBlock",
"src": "23797:260:20",
"statements": [
{
"nativeSrc": "23808:110:20",
"nodeType": "YulAssignment",
"src": "23808:110:20",
"value": {
"arguments": [
{
"name": "value0",
"nativeSrc": "23897:6:20",
"nodeType": "YulIdentifier",
"src": "23897:6:20"
},
{
"name": "value1",
"nativeSrc": "23905:6:20",
"nodeType": "YulIdentifier",
"src": "23905:6:20"
},
{
"name": "pos",
"nativeSrc": "23914:3:20",
"nodeType": "YulIdentifier",
"src": "23914:3:20"
}
],
"functionName": {
"name": "abi_encode_t_bytes_calldata_ptr_to_t_bytes_memory_ptr_nonPadded_inplace_fromStack",
"nativeSrc": "23815:81:20",
"nodeType": "YulIdentifier",
"src": "23815:81:20"
},
"nativeSrc": "23815:103:20",
"nodeType": "YulFunctionCall",
"src": "23815:103:20"
},
"variableNames": [
{
"name": "pos",
"nativeSrc": "23808:3:20",
"nodeType": "YulIdentifier",
"src": "23808:3:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value2",
"nativeSrc": "23990:6:20",
"nodeType": "YulIdentifier",
"src": "23990:6:20"
},
{
"name": "pos",
"nativeSrc": "23999:3:20",
"nodeType": "YulIdentifier",
"src": "23999:3:20"
}
],
"functionName": {
"name": "abi_encode_t_address_to_t_address_nonPadded_inplace_fromStack",
"nativeSrc": "23928:61:20",
"nodeType": "YulIdentifier",
"src": "23928:61:20"
},
"nativeSrc": "23928:75:20",
"nodeType": "YulFunctionCall",
"src": "23928:75:20"
},
"nativeSrc": "23928:75:20",
"nodeType": "YulExpressionStatement",
"src": "23928:75:20"
},
{
"nativeSrc": "24012:19:20",
"nodeType": "YulAssignment",
"src": "24012:19:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "24023:3:20",
"nodeType": "YulIdentifier",
"src": "24023:3:20"
},
{
"kind": "number",
"nativeSrc": "24028:2:20",
"nodeType": "YulLiteral",
"src": "24028:2:20",
"type": "",
"value": "20"
}
],
"functionName": {
"name": "add",
"nativeSrc": "24019:3:20",
"nodeType": "YulIdentifier",
"src": "24019:3:20"
},
"nativeSrc": "24019:12:20",
"nodeType": "YulFunctionCall",
"src": "24019:12:20"
},
"variableNames": [
{
"name": "pos",
"nativeSrc": "24012:3:20",
"nodeType": "YulIdentifier",
"src": "24012:3:20"
}
]
},
{
"nativeSrc": "24041:10:20",
"nodeType": "YulAssignment",
"src": "24041:10:20",
"value": {
"name": "pos",
"nativeSrc": "24048:3:20",
"nodeType": "YulIdentifier",
"src": "24048:3:20"
},
"variableNames": [
{
"name": "end",
"nativeSrc": "24041:3:20",
"nodeType": "YulIdentifier",
"src": "24041:3:20"
}
]
}
]
},
"name": "abi_encode_tuple_packed_t_bytes_calldata_ptr_t_address__to_t_bytes_memory_ptr_t_address__nonPadded_inplace_fromStack_reversed",
"nativeSrc": "23625:432:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nativeSrc": "23760:3:20",
"nodeType": "YulTypedName",
"src": "23760:3:20",
"type": ""
},
{
"name": "value2",
"nativeSrc": "23766:6:20",
"nodeType": "YulTypedName",
"src": "23766:6:20",
"type": ""
},
{
"name": "value1",
"nativeSrc": "23774:6:20",
"nodeType": "YulTypedName",
"src": "23774:6:20",
"type": ""
},
{
"name": "value0",
"nativeSrc": "23782:6:20",
"nodeType": "YulTypedName",
"src": "23782:6:20",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nativeSrc": "23793:3:20",
"nodeType": "YulTypedName",
"src": "23793:3:20",
"type": ""
}
],
"src": "23625:432:20"
},
{
"body": {
"nativeSrc": "24169:73:20",
"nodeType": "YulBlock",
"src": "24169:73:20",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nativeSrc": "24191:6:20",
"nodeType": "YulIdentifier",
"src": "24191:6:20"
},
{
"kind": "number",
"nativeSrc": "24199:1:20",
"nodeType": "YulLiteral",
"src": "24199:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "24187:3:20",
"nodeType": "YulIdentifier",
"src": "24187:3:20"
},
"nativeSrc": "24187:14:20",
"nodeType": "YulFunctionCall",
"src": "24187:14:20"
},
{
"hexValue": "45524332305065726d69743a206578706972656420646561646c696e65",
"kind": "string",
"nativeSrc": "24203:31:20",
"nodeType": "YulLiteral",
"src": "24203:31:20",
"type": "",
"value": "ERC20Permit: expired deadline"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "24180:6:20",
"nodeType": "YulIdentifier",
"src": "24180:6:20"
},
"nativeSrc": "24180:55:20",
"nodeType": "YulFunctionCall",
"src": "24180:55:20"
},
"nativeSrc": "24180:55:20",
"nodeType": "YulExpressionStatement",
"src": "24180:55:20"
}
]
},
"name": "store_literal_in_memory_3e89525a63fb9c966b61cf8f5305156de8420bc773a2b60828a2f32c3c5797bd",
"nativeSrc": "24063:179:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nativeSrc": "24161:6:20",
"nodeType": "YulTypedName",
"src": "24161:6:20",
"type": ""
}
],
"src": "24063:179:20"
},
{
"body": {
"nativeSrc": "24394:220:20",
"nodeType": "YulBlock",
"src": "24394:220:20",
"statements": [
{
"nativeSrc": "24404:74:20",
"nodeType": "YulAssignment",
"src": "24404:74:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "24470:3:20",
"nodeType": "YulIdentifier",
"src": "24470:3:20"
},
{
"kind": "number",
"nativeSrc": "24475:2:20",
"nodeType": "YulLiteral",
"src": "24475:2:20",
"type": "",
"value": "29"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nativeSrc": "24411:58:20",
"nodeType": "YulIdentifier",
"src": "24411:58:20"
},
"nativeSrc": "24411:67:20",
"nodeType": "YulFunctionCall",
"src": "24411:67:20"
},
"variableNames": [
{
"name": "pos",
"nativeSrc": "24404:3:20",
"nodeType": "YulIdentifier",
"src": "24404:3:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "24576:3:20",
"nodeType": "YulIdentifier",
"src": "24576:3:20"
}
],
"functionName": {
"name": "store_literal_in_memory_3e89525a63fb9c966b61cf8f5305156de8420bc773a2b60828a2f32c3c5797bd",
"nativeSrc": "24487:88:20",
"nodeType": "YulIdentifier",
"src": "24487:88:20"
},
"nativeSrc": "24487:93:20",
"nodeType": "YulFunctionCall",
"src": "24487:93:20"
},
"nativeSrc": "24487:93:20",
"nodeType": "YulExpressionStatement",
"src": "24487:93:20"
},
{
"nativeSrc": "24589:19:20",
"nodeType": "YulAssignment",
"src": "24589:19:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "24600:3:20",
"nodeType": "YulIdentifier",
"src": "24600:3:20"
},
{
"kind": "number",
"nativeSrc": "24605:2:20",
"nodeType": "YulLiteral",
"src": "24605:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "24596:3:20",
"nodeType": "YulIdentifier",
"src": "24596:3:20"
},
"nativeSrc": "24596:12:20",
"nodeType": "YulFunctionCall",
"src": "24596:12:20"
},
"variableNames": [
{
"name": "end",
"nativeSrc": "24589:3:20",
"nodeType": "YulIdentifier",
"src": "24589:3:20"
}
]
}
]
},
"name": "abi_encode_t_stringliteral_3e89525a63fb9c966b61cf8f5305156de8420bc773a2b60828a2f32c3c5797bd_to_t_string_memory_ptr_fromStack",
"nativeSrc": "24248:366:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nativeSrc": "24382:3:20",
"nodeType": "YulTypedName",
"src": "24382:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nativeSrc": "24390:3:20",
"nodeType": "YulTypedName",
"src": "24390:3:20",
"type": ""
}
],
"src": "24248:366:20"
},
{
"body": {
"nativeSrc": "24791:248:20",
"nodeType": "YulBlock",
"src": "24791:248:20",
"statements": [
{
"nativeSrc": "24801:26:20",
"nodeType": "YulAssignment",
"src": "24801:26:20",
"value": {
"arguments": [
{
"name": "headStart",
"nativeSrc": "24813:9:20",
"nodeType": "YulIdentifier",
"src": "24813:9:20"
},
{
"kind": "number",
"nativeSrc": "24824:2:20",
"nodeType": "YulLiteral",
"src": "24824:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "24809:3:20",
"nodeType": "YulIdentifier",
"src": "24809:3:20"
},
"nativeSrc": "24809:18:20",
"nodeType": "YulFunctionCall",
"src": "24809:18:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "24801:4:20",
"nodeType": "YulIdentifier",
"src": "24801:4:20"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "24848:9:20",
"nodeType": "YulIdentifier",
"src": "24848:9:20"
},
{
"kind": "number",
"nativeSrc": "24859:1:20",
"nodeType": "YulLiteral",
"src": "24859:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "24844:3:20",
"nodeType": "YulIdentifier",
"src": "24844:3:20"
},
"nativeSrc": "24844:17:20",
"nodeType": "YulFunctionCall",
"src": "24844:17:20"
},
{
"arguments": [
{
"name": "tail",
"nativeSrc": "24867:4:20",
"nodeType": "YulIdentifier",
"src": "24867:4:20"
},
{
"name": "headStart",
"nativeSrc": "24873:9:20",
"nodeType": "YulIdentifier",
"src": "24873:9:20"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "24863:3:20",
"nodeType": "YulIdentifier",
"src": "24863:3:20"
},
"nativeSrc": "24863:20:20",
"nodeType": "YulFunctionCall",
"src": "24863:20:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "24837:6:20",
"nodeType": "YulIdentifier",
"src": "24837:6:20"
},
"nativeSrc": "24837:47:20",
"nodeType": "YulFunctionCall",
"src": "24837:47:20"
},
"nativeSrc": "24837:47:20",
"nodeType": "YulExpressionStatement",
"src": "24837:47:20"
},
{
"nativeSrc": "24893:139:20",
"nodeType": "YulAssignment",
"src": "24893:139:20",
"value": {
"arguments": [
{
"name": "tail",
"nativeSrc": "25027:4:20",
"nodeType": "YulIdentifier",
"src": "25027:4:20"
}
],
"functionName": {
"name": "abi_encode_t_stringliteral_3e89525a63fb9c966b61cf8f5305156de8420bc773a2b60828a2f32c3c5797bd_to_t_string_memory_ptr_fromStack",
"nativeSrc": "24901:124:20",
"nodeType": "YulIdentifier",
"src": "24901:124:20"
},
"nativeSrc": "24901:131:20",
"nodeType": "YulFunctionCall",
"src": "24901:131:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "24893:4:20",
"nodeType": "YulIdentifier",
"src": "24893:4:20"
}
]
}
]
},
"name": "abi_encode_tuple_t_stringliteral_3e89525a63fb9c966b61cf8f5305156de8420bc773a2b60828a2f32c3c5797bd__to_t_string_memory_ptr__fromStack_reversed",
"nativeSrc": "24620:419:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "24771:9:20",
"nodeType": "YulTypedName",
"src": "24771:9:20",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nativeSrc": "24786:4:20",
"nodeType": "YulTypedName",
"src": "24786:4:20",
"type": ""
}
],
"src": "24620:419:20"
},
{
"body": {
"nativeSrc": "25283:537:20",
"nodeType": "YulBlock",
"src": "25283:537:20",
"statements": [
{
"nativeSrc": "25293:27:20",
"nodeType": "YulAssignment",
"src": "25293:27:20",
"value": {
"arguments": [
{
"name": "headStart",
"nativeSrc": "25305:9:20",
"nodeType": "YulIdentifier",
"src": "25305:9:20"
},
{
"kind": "number",
"nativeSrc": "25316:3:20",
"nodeType": "YulLiteral",
"src": "25316:3:20",
"type": "",
"value": "192"
}
],
"functionName": {
"name": "add",
"nativeSrc": "25301:3:20",
"nodeType": "YulIdentifier",
"src": "25301:3:20"
},
"nativeSrc": "25301:19:20",
"nodeType": "YulFunctionCall",
"src": "25301:19:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "25293:4:20",
"nodeType": "YulIdentifier",
"src": "25293:4:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value0",
"nativeSrc": "25374:6:20",
"nodeType": "YulIdentifier",
"src": "25374:6:20"
},
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "25387:9:20",
"nodeType": "YulIdentifier",
"src": "25387:9:20"
},
{
"kind": "number",
"nativeSrc": "25398:1:20",
"nodeType": "YulLiteral",
"src": "25398:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "25383:3:20",
"nodeType": "YulIdentifier",
"src": "25383:3:20"
},
"nativeSrc": "25383:17:20",
"nodeType": "YulFunctionCall",
"src": "25383:17:20"
}
],
"functionName": {
"name": "abi_encode_t_bytes32_to_t_bytes32_fromStack",
"nativeSrc": "25330:43:20",
"nodeType": "YulIdentifier",
"src": "25330:43:20"
},
"nativeSrc": "25330:71:20",
"nodeType": "YulFunctionCall",
"src": "25330:71:20"
},
"nativeSrc": "25330:71:20",
"nodeType": "YulExpressionStatement",
"src": "25330:71:20"
},
{
"expression": {
"arguments": [
{
"name": "value1",
"nativeSrc": "25455:6:20",
"nodeType": "YulIdentifier",
"src": "25455:6:20"
},
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "25468:9:20",
"nodeType": "YulIdentifier",
"src": "25468:9:20"
},
{
"kind": "number",
"nativeSrc": "25479:2:20",
"nodeType": "YulLiteral",
"src": "25479:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "25464:3:20",
"nodeType": "YulIdentifier",
"src": "25464:3:20"
},
"nativeSrc": "25464:18:20",
"nodeType": "YulFunctionCall",
"src": "25464:18:20"
}
],
"functionName": {
"name": "abi_encode_t_address_to_t_address_fromStack",
"nativeSrc": "25411:43:20",
"nodeType": "YulIdentifier",
"src": "25411:43:20"
},
"nativeSrc": "25411:72:20",
"nodeType": "YulFunctionCall",
"src": "25411:72:20"
},
"nativeSrc": "25411:72:20",
"nodeType": "YulExpressionStatement",
"src": "25411:72:20"
},
{
"expression": {
"arguments": [
{
"name": "value2",
"nativeSrc": "25537:6:20",
"nodeType": "YulIdentifier",
"src": "25537:6:20"
},
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "25550:9:20",
"nodeType": "YulIdentifier",
"src": "25550:9:20"
},
{
"kind": "number",
"nativeSrc": "25561:2:20",
"nodeType": "YulLiteral",
"src": "25561:2:20",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "add",
"nativeSrc": "25546:3:20",
"nodeType": "YulIdentifier",
"src": "25546:3:20"
},
"nativeSrc": "25546:18:20",
"nodeType": "YulFunctionCall",
"src": "25546:18:20"
}
],
"functionName": {
"name": "abi_encode_t_address_to_t_address_fromStack",
"nativeSrc": "25493:43:20",
"nodeType": "YulIdentifier",
"src": "25493:43:20"
},
"nativeSrc": "25493:72:20",
"nodeType": "YulFunctionCall",
"src": "25493:72:20"
},
"nativeSrc": "25493:72:20",
"nodeType": "YulExpressionStatement",
"src": "25493:72:20"
},
{
"expression": {
"arguments": [
{
"name": "value3",
"nativeSrc": "25619:6:20",
"nodeType": "YulIdentifier",
"src": "25619:6:20"
},
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "25632:9:20",
"nodeType": "YulIdentifier",
"src": "25632:9:20"
},
{
"kind": "number",
"nativeSrc": "25643:2:20",
"nodeType": "YulLiteral",
"src": "25643:2:20",
"type": "",
"value": "96"
}
],
"functionName": {
"name": "add",
"nativeSrc": "25628:3:20",
"nodeType": "YulIdentifier",
"src": "25628:3:20"
},
"nativeSrc": "25628:18:20",
"nodeType": "YulFunctionCall",
"src": "25628:18:20"
}
],
"functionName": {
"name": "abi_encode_t_uint256_to_t_uint256_fromStack",
"nativeSrc": "25575:43:20",
"nodeType": "YulIdentifier",
"src": "25575:43:20"
},
"nativeSrc": "25575:72:20",
"nodeType": "YulFunctionCall",
"src": "25575:72:20"
},
"nativeSrc": "25575:72:20",
"nodeType": "YulExpressionStatement",
"src": "25575:72:20"
},
{
"expression": {
"arguments": [
{
"name": "value4",
"nativeSrc": "25701:6:20",
"nodeType": "YulIdentifier",
"src": "25701:6:20"
},
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "25714:9:20",
"nodeType": "YulIdentifier",
"src": "25714:9:20"
},
{
"kind": "number",
"nativeSrc": "25725:3:20",
"nodeType": "YulLiteral",
"src": "25725:3:20",
"type": "",
"value": "128"
}
],
"functionName": {
"name": "add",
"nativeSrc": "25710:3:20",
"nodeType": "YulIdentifier",
"src": "25710:3:20"
},
"nativeSrc": "25710:19:20",
"nodeType": "YulFunctionCall",
"src": "25710:19:20"
}
],
"functionName": {
"name": "abi_encode_t_uint256_to_t_uint256_fromStack",
"nativeSrc": "25657:43:20",
"nodeType": "YulIdentifier",
"src": "25657:43:20"
},
"nativeSrc": "25657:73:20",
"nodeType": "YulFunctionCall",
"src": "25657:73:20"
},
"nativeSrc": "25657:73:20",
"nodeType": "YulExpressionStatement",
"src": "25657:73:20"
},
{
"expression": {
"arguments": [
{
"name": "value5",
"nativeSrc": "25784:6:20",
"nodeType": "YulIdentifier",
"src": "25784:6:20"
},
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "25797:9:20",
"nodeType": "YulIdentifier",
"src": "25797:9:20"
},
{
"kind": "number",
"nativeSrc": "25808:3:20",
"nodeType": "YulLiteral",
"src": "25808:3:20",
"type": "",
"value": "160"
}
],
"functionName": {
"name": "add",
"nativeSrc": "25793:3:20",
"nodeType": "YulIdentifier",
"src": "25793:3:20"
},
"nativeSrc": "25793:19:20",
"nodeType": "YulFunctionCall",
"src": "25793:19:20"
}
],
"functionName": {
"name": "abi_encode_t_uint256_to_t_uint256_fromStack",
"nativeSrc": "25740:43:20",
"nodeType": "YulIdentifier",
"src": "25740:43:20"
},
"nativeSrc": "25740:73:20",
"nodeType": "YulFunctionCall",
"src": "25740:73:20"
},
"nativeSrc": "25740:73:20",
"nodeType": "YulExpressionStatement",
"src": "25740:73:20"
}
]
},
"name": "abi_encode_tuple_t_bytes32_t_address_t_address_t_uint256_t_uint256_t_uint256__to_t_bytes32_t_address_t_address_t_uint256_t_uint256_t_uint256__fromStack_reversed",
"nativeSrc": "25045:775:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "25215:9:20",
"nodeType": "YulTypedName",
"src": "25215:9:20",
"type": ""
},
{
"name": "value5",
"nativeSrc": "25227:6:20",
"nodeType": "YulTypedName",
"src": "25227:6:20",
"type": ""
},
{
"name": "value4",
"nativeSrc": "25235:6:20",
"nodeType": "YulTypedName",
"src": "25235:6:20",
"type": ""
},
{
"name": "value3",
"nativeSrc": "25243:6:20",
"nodeType": "YulTypedName",
"src": "25243:6:20",
"type": ""
},
{
"name": "value2",
"nativeSrc": "25251:6:20",
"nodeType": "YulTypedName",
"src": "25251:6:20",
"type": ""
},
{
"name": "value1",
"nativeSrc": "25259:6:20",
"nodeType": "YulTypedName",
"src": "25259:6:20",
"type": ""
},
{
"name": "value0",
"nativeSrc": "25267:6:20",
"nodeType": "YulTypedName",
"src": "25267:6:20",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nativeSrc": "25278:4:20",
"nodeType": "YulTypedName",
"src": "25278:4:20",
"type": ""
}
],
"src": "25045:775:20"
},
{
"body": {
"nativeSrc": "25932:74:20",
"nodeType": "YulBlock",
"src": "25932:74:20",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nativeSrc": "25954:6:20",
"nodeType": "YulIdentifier",
"src": "25954:6:20"
},
{
"kind": "number",
"nativeSrc": "25962:1:20",
"nodeType": "YulLiteral",
"src": "25962:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "25950:3:20",
"nodeType": "YulIdentifier",
"src": "25950:3:20"
},
"nativeSrc": "25950:14:20",
"nodeType": "YulFunctionCall",
"src": "25950:14:20"
},
{
"hexValue": "45524332305065726d69743a20696e76616c6964207369676e6174757265",
"kind": "string",
"nativeSrc": "25966:32:20",
"nodeType": "YulLiteral",
"src": "25966:32:20",
"type": "",
"value": "ERC20Permit: invalid signature"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "25943:6:20",
"nodeType": "YulIdentifier",
"src": "25943:6:20"
},
"nativeSrc": "25943:56:20",
"nodeType": "YulFunctionCall",
"src": "25943:56:20"
},
"nativeSrc": "25943:56:20",
"nodeType": "YulExpressionStatement",
"src": "25943:56:20"
}
]
},
"name": "store_literal_in_memory_94ca1ab58dfda790a1782ffbb0c0a140ec51d4148dbeecc6c39e37b25ff4b124",
"nativeSrc": "25826:180:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nativeSrc": "25924:6:20",
"nodeType": "YulTypedName",
"src": "25924:6:20",
"type": ""
}
],
"src": "25826:180:20"
},
{
"body": {
"nativeSrc": "26158:220:20",
"nodeType": "YulBlock",
"src": "26158:220:20",
"statements": [
{
"nativeSrc": "26168:74:20",
"nodeType": "YulAssignment",
"src": "26168:74:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "26234:3:20",
"nodeType": "YulIdentifier",
"src": "26234:3:20"
},
{
"kind": "number",
"nativeSrc": "26239:2:20",
"nodeType": "YulLiteral",
"src": "26239:2:20",
"type": "",
"value": "30"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nativeSrc": "26175:58:20",
"nodeType": "YulIdentifier",
"src": "26175:58:20"
},
"nativeSrc": "26175:67:20",
"nodeType": "YulFunctionCall",
"src": "26175:67:20"
},
"variableNames": [
{
"name": "pos",
"nativeSrc": "26168:3:20",
"nodeType": "YulIdentifier",
"src": "26168:3:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "26340:3:20",
"nodeType": "YulIdentifier",
"src": "26340:3:20"
}
],
"functionName": {
"name": "store_literal_in_memory_94ca1ab58dfda790a1782ffbb0c0a140ec51d4148dbeecc6c39e37b25ff4b124",
"nativeSrc": "26251:88:20",
"nodeType": "YulIdentifier",
"src": "26251:88:20"
},
"nativeSrc": "26251:93:20",
"nodeType": "YulFunctionCall",
"src": "26251:93:20"
},
"nativeSrc": "26251:93:20",
"nodeType": "YulExpressionStatement",
"src": "26251:93:20"
},
{
"nativeSrc": "26353:19:20",
"nodeType": "YulAssignment",
"src": "26353:19:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "26364:3:20",
"nodeType": "YulIdentifier",
"src": "26364:3:20"
},
{
"kind": "number",
"nativeSrc": "26369:2:20",
"nodeType": "YulLiteral",
"src": "26369:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "26360:3:20",
"nodeType": "YulIdentifier",
"src": "26360:3:20"
},
"nativeSrc": "26360:12:20",
"nodeType": "YulFunctionCall",
"src": "26360:12:20"
},
"variableNames": [
{
"name": "end",
"nativeSrc": "26353:3:20",
"nodeType": "YulIdentifier",
"src": "26353:3:20"
}
]
}
]
},
"name": "abi_encode_t_stringliteral_94ca1ab58dfda790a1782ffbb0c0a140ec51d4148dbeecc6c39e37b25ff4b124_to_t_string_memory_ptr_fromStack",
"nativeSrc": "26012:366:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nativeSrc": "26146:3:20",
"nodeType": "YulTypedName",
"src": "26146:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nativeSrc": "26154:3:20",
"nodeType": "YulTypedName",
"src": "26154:3:20",
"type": ""
}
],
"src": "26012:366:20"
},
{
"body": {
"nativeSrc": "26555:248:20",
"nodeType": "YulBlock",
"src": "26555:248:20",
"statements": [
{
"nativeSrc": "26565:26:20",
"nodeType": "YulAssignment",
"src": "26565:26:20",
"value": {
"arguments": [
{
"name": "headStart",
"nativeSrc": "26577:9:20",
"nodeType": "YulIdentifier",
"src": "26577:9:20"
},
{
"kind": "number",
"nativeSrc": "26588:2:20",
"nodeType": "YulLiteral",
"src": "26588:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "26573:3:20",
"nodeType": "YulIdentifier",
"src": "26573:3:20"
},
"nativeSrc": "26573:18:20",
"nodeType": "YulFunctionCall",
"src": "26573:18:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "26565:4:20",
"nodeType": "YulIdentifier",
"src": "26565:4:20"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "26612:9:20",
"nodeType": "YulIdentifier",
"src": "26612:9:20"
},
{
"kind": "number",
"nativeSrc": "26623:1:20",
"nodeType": "YulLiteral",
"src": "26623:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "26608:3:20",
"nodeType": "YulIdentifier",
"src": "26608:3:20"
},
"nativeSrc": "26608:17:20",
"nodeType": "YulFunctionCall",
"src": "26608:17:20"
},
{
"arguments": [
{
"name": "tail",
"nativeSrc": "26631:4:20",
"nodeType": "YulIdentifier",
"src": "26631:4:20"
},
{
"name": "headStart",
"nativeSrc": "26637:9:20",
"nodeType": "YulIdentifier",
"src": "26637:9:20"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "26627:3:20",
"nodeType": "YulIdentifier",
"src": "26627:3:20"
},
"nativeSrc": "26627:20:20",
"nodeType": "YulFunctionCall",
"src": "26627:20:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "26601:6:20",
"nodeType": "YulIdentifier",
"src": "26601:6:20"
},
"nativeSrc": "26601:47:20",
"nodeType": "YulFunctionCall",
"src": "26601:47:20"
},
"nativeSrc": "26601:47:20",
"nodeType": "YulExpressionStatement",
"src": "26601:47:20"
},
{
"nativeSrc": "26657:139:20",
"nodeType": "YulAssignment",
"src": "26657:139:20",
"value": {
"arguments": [
{
"name": "tail",
"nativeSrc": "26791:4:20",
"nodeType": "YulIdentifier",
"src": "26791:4:20"
}
],
"functionName": {
"name": "abi_encode_t_stringliteral_94ca1ab58dfda790a1782ffbb0c0a140ec51d4148dbeecc6c39e37b25ff4b124_to_t_string_memory_ptr_fromStack",
"nativeSrc": "26665:124:20",
"nodeType": "YulIdentifier",
"src": "26665:124:20"
},
"nativeSrc": "26665:131:20",
"nodeType": "YulFunctionCall",
"src": "26665:131:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "26657:4:20",
"nodeType": "YulIdentifier",
"src": "26657:4:20"
}
]
}
]
},
"name": "abi_encode_tuple_t_stringliteral_94ca1ab58dfda790a1782ffbb0c0a140ec51d4148dbeecc6c39e37b25ff4b124__to_t_string_memory_ptr__fromStack_reversed",
"nativeSrc": "26384:419:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "26535:9:20",
"nodeType": "YulTypedName",
"src": "26535:9:20",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nativeSrc": "26550:4:20",
"nodeType": "YulTypedName",
"src": "26550:4:20",
"type": ""
}
],
"src": "26384:419:20"
},
{
"body": {
"nativeSrc": "26915:117:20",
"nodeType": "YulBlock",
"src": "26915:117:20",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nativeSrc": "26937:6:20",
"nodeType": "YulIdentifier",
"src": "26937:6:20"
},
{
"kind": "number",
"nativeSrc": "26945:1:20",
"nodeType": "YulLiteral",
"src": "26945:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "26933:3:20",
"nodeType": "YulIdentifier",
"src": "26933:3:20"
},
"nativeSrc": "26933:14:20",
"nodeType": "YulFunctionCall",
"src": "26933:14:20"
},
{
"hexValue": "45524332303a20617070726f76652066726f6d20746865207a65726f20616464",
"kind": "string",
"nativeSrc": "26949:34:20",
"nodeType": "YulLiteral",
"src": "26949:34:20",
"type": "",
"value": "ERC20: approve from the zero add"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "26926:6:20",
"nodeType": "YulIdentifier",
"src": "26926:6:20"
},
"nativeSrc": "26926:58:20",
"nodeType": "YulFunctionCall",
"src": "26926:58:20"
},
"nativeSrc": "26926:58:20",
"nodeType": "YulExpressionStatement",
"src": "26926:58:20"
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nativeSrc": "27005:6:20",
"nodeType": "YulIdentifier",
"src": "27005:6:20"
},
{
"kind": "number",
"nativeSrc": "27013:2:20",
"nodeType": "YulLiteral",
"src": "27013:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "27001:3:20",
"nodeType": "YulIdentifier",
"src": "27001:3:20"
},
"nativeSrc": "27001:15:20",
"nodeType": "YulFunctionCall",
"src": "27001:15:20"
},
{
"hexValue": "72657373",
"kind": "string",
"nativeSrc": "27018:6:20",
"nodeType": "YulLiteral",
"src": "27018:6:20",
"type": "",
"value": "ress"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "26994:6:20",
"nodeType": "YulIdentifier",
"src": "26994:6:20"
},
"nativeSrc": "26994:31:20",
"nodeType": "YulFunctionCall",
"src": "26994:31:20"
},
"nativeSrc": "26994:31:20",
"nodeType": "YulExpressionStatement",
"src": "26994:31:20"
}
]
},
"name": "store_literal_in_memory_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208",
"nativeSrc": "26809:223:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nativeSrc": "26907:6:20",
"nodeType": "YulTypedName",
"src": "26907:6:20",
"type": ""
}
],
"src": "26809:223:20"
},
{
"body": {
"nativeSrc": "27184:220:20",
"nodeType": "YulBlock",
"src": "27184:220:20",
"statements": [
{
"nativeSrc": "27194:74:20",
"nodeType": "YulAssignment",
"src": "27194:74:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "27260:3:20",
"nodeType": "YulIdentifier",
"src": "27260:3:20"
},
{
"kind": "number",
"nativeSrc": "27265:2:20",
"nodeType": "YulLiteral",
"src": "27265:2:20",
"type": "",
"value": "36"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nativeSrc": "27201:58:20",
"nodeType": "YulIdentifier",
"src": "27201:58:20"
},
"nativeSrc": "27201:67:20",
"nodeType": "YulFunctionCall",
"src": "27201:67:20"
},
"variableNames": [
{
"name": "pos",
"nativeSrc": "27194:3:20",
"nodeType": "YulIdentifier",
"src": "27194:3:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "27366:3:20",
"nodeType": "YulIdentifier",
"src": "27366:3:20"
}
],
"functionName": {
"name": "store_literal_in_memory_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208",
"nativeSrc": "27277:88:20",
"nodeType": "YulIdentifier",
"src": "27277:88:20"
},
"nativeSrc": "27277:93:20",
"nodeType": "YulFunctionCall",
"src": "27277:93:20"
},
"nativeSrc": "27277:93:20",
"nodeType": "YulExpressionStatement",
"src": "27277:93:20"
},
{
"nativeSrc": "27379:19:20",
"nodeType": "YulAssignment",
"src": "27379:19:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "27390:3:20",
"nodeType": "YulIdentifier",
"src": "27390:3:20"
},
{
"kind": "number",
"nativeSrc": "27395:2:20",
"nodeType": "YulLiteral",
"src": "27395:2:20",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "add",
"nativeSrc": "27386:3:20",
"nodeType": "YulIdentifier",
"src": "27386:3:20"
},
"nativeSrc": "27386:12:20",
"nodeType": "YulFunctionCall",
"src": "27386:12:20"
},
"variableNames": [
{
"name": "end",
"nativeSrc": "27379:3:20",
"nodeType": "YulIdentifier",
"src": "27379:3:20"
}
]
}
]
},
"name": "abi_encode_t_stringliteral_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208_to_t_string_memory_ptr_fromStack",
"nativeSrc": "27038:366:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nativeSrc": "27172:3:20",
"nodeType": "YulTypedName",
"src": "27172:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nativeSrc": "27180:3:20",
"nodeType": "YulTypedName",
"src": "27180:3:20",
"type": ""
}
],
"src": "27038:366:20"
},
{
"body": {
"nativeSrc": "27581:248:20",
"nodeType": "YulBlock",
"src": "27581:248:20",
"statements": [
{
"nativeSrc": "27591:26:20",
"nodeType": "YulAssignment",
"src": "27591:26:20",
"value": {
"arguments": [
{
"name": "headStart",
"nativeSrc": "27603:9:20",
"nodeType": "YulIdentifier",
"src": "27603:9:20"
},
{
"kind": "number",
"nativeSrc": "27614:2:20",
"nodeType": "YulLiteral",
"src": "27614:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "27599:3:20",
"nodeType": "YulIdentifier",
"src": "27599:3:20"
},
"nativeSrc": "27599:18:20",
"nodeType": "YulFunctionCall",
"src": "27599:18:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "27591:4:20",
"nodeType": "YulIdentifier",
"src": "27591:4:20"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "27638:9:20",
"nodeType": "YulIdentifier",
"src": "27638:9:20"
},
{
"kind": "number",
"nativeSrc": "27649:1:20",
"nodeType": "YulLiteral",
"src": "27649:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "27634:3:20",
"nodeType": "YulIdentifier",
"src": "27634:3:20"
},
"nativeSrc": "27634:17:20",
"nodeType": "YulFunctionCall",
"src": "27634:17:20"
},
{
"arguments": [
{
"name": "tail",
"nativeSrc": "27657:4:20",
"nodeType": "YulIdentifier",
"src": "27657:4:20"
},
{
"name": "headStart",
"nativeSrc": "27663:9:20",
"nodeType": "YulIdentifier",
"src": "27663:9:20"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "27653:3:20",
"nodeType": "YulIdentifier",
"src": "27653:3:20"
},
"nativeSrc": "27653:20:20",
"nodeType": "YulFunctionCall",
"src": "27653:20:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "27627:6:20",
"nodeType": "YulIdentifier",
"src": "27627:6:20"
},
"nativeSrc": "27627:47:20",
"nodeType": "YulFunctionCall",
"src": "27627:47:20"
},
"nativeSrc": "27627:47:20",
"nodeType": "YulExpressionStatement",
"src": "27627:47:20"
},
{
"nativeSrc": "27683:139:20",
"nodeType": "YulAssignment",
"src": "27683:139:20",
"value": {
"arguments": [
{
"name": "tail",
"nativeSrc": "27817:4:20",
"nodeType": "YulIdentifier",
"src": "27817:4:20"
}
],
"functionName": {
"name": "abi_encode_t_stringliteral_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208_to_t_string_memory_ptr_fromStack",
"nativeSrc": "27691:124:20",
"nodeType": "YulIdentifier",
"src": "27691:124:20"
},
"nativeSrc": "27691:131:20",
"nodeType": "YulFunctionCall",
"src": "27691:131:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "27683:4:20",
"nodeType": "YulIdentifier",
"src": "27683:4:20"
}
]
}
]
},
"name": "abi_encode_tuple_t_stringliteral_c953f4879035ed60e766b34720f656aab5c697b141d924c283124ecedb91c208__to_t_string_memory_ptr__fromStack_reversed",
"nativeSrc": "27410:419:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "27561:9:20",
"nodeType": "YulTypedName",
"src": "27561:9:20",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nativeSrc": "27576:4:20",
"nodeType": "YulTypedName",
"src": "27576:4:20",
"type": ""
}
],
"src": "27410:419:20"
},
{
"body": {
"nativeSrc": "27941:115:20",
"nodeType": "YulBlock",
"src": "27941:115:20",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nativeSrc": "27963:6:20",
"nodeType": "YulIdentifier",
"src": "27963:6:20"
},
{
"kind": "number",
"nativeSrc": "27971:1:20",
"nodeType": "YulLiteral",
"src": "27971:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "27959:3:20",
"nodeType": "YulIdentifier",
"src": "27959:3:20"
},
"nativeSrc": "27959:14:20",
"nodeType": "YulFunctionCall",
"src": "27959:14:20"
},
{
"hexValue": "45524332303a20617070726f766520746f20746865207a65726f206164647265",
"kind": "string",
"nativeSrc": "27975:34:20",
"nodeType": "YulLiteral",
"src": "27975:34:20",
"type": "",
"value": "ERC20: approve to the zero addre"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "27952:6:20",
"nodeType": "YulIdentifier",
"src": "27952:6:20"
},
"nativeSrc": "27952:58:20",
"nodeType": "YulFunctionCall",
"src": "27952:58:20"
},
"nativeSrc": "27952:58:20",
"nodeType": "YulExpressionStatement",
"src": "27952:58:20"
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nativeSrc": "28031:6:20",
"nodeType": "YulIdentifier",
"src": "28031:6:20"
},
{
"kind": "number",
"nativeSrc": "28039:2:20",
"nodeType": "YulLiteral",
"src": "28039:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "28027:3:20",
"nodeType": "YulIdentifier",
"src": "28027:3:20"
},
"nativeSrc": "28027:15:20",
"nodeType": "YulFunctionCall",
"src": "28027:15:20"
},
{
"hexValue": "7373",
"kind": "string",
"nativeSrc": "28044:4:20",
"nodeType": "YulLiteral",
"src": "28044:4:20",
"type": "",
"value": "ss"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "28020:6:20",
"nodeType": "YulIdentifier",
"src": "28020:6:20"
},
"nativeSrc": "28020:29:20",
"nodeType": "YulFunctionCall",
"src": "28020:29:20"
},
"nativeSrc": "28020:29:20",
"nodeType": "YulExpressionStatement",
"src": "28020:29:20"
}
]
},
"name": "store_literal_in_memory_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029",
"nativeSrc": "27835:221:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nativeSrc": "27933:6:20",
"nodeType": "YulTypedName",
"src": "27933:6:20",
"type": ""
}
],
"src": "27835:221:20"
},
{
"body": {
"nativeSrc": "28208:220:20",
"nodeType": "YulBlock",
"src": "28208:220:20",
"statements": [
{
"nativeSrc": "28218:74:20",
"nodeType": "YulAssignment",
"src": "28218:74:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "28284:3:20",
"nodeType": "YulIdentifier",
"src": "28284:3:20"
},
{
"kind": "number",
"nativeSrc": "28289:2:20",
"nodeType": "YulLiteral",
"src": "28289:2:20",
"type": "",
"value": "34"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nativeSrc": "28225:58:20",
"nodeType": "YulIdentifier",
"src": "28225:58:20"
},
"nativeSrc": "28225:67:20",
"nodeType": "YulFunctionCall",
"src": "28225:67:20"
},
"variableNames": [
{
"name": "pos",
"nativeSrc": "28218:3:20",
"nodeType": "YulIdentifier",
"src": "28218:3:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "28390:3:20",
"nodeType": "YulIdentifier",
"src": "28390:3:20"
}
],
"functionName": {
"name": "store_literal_in_memory_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029",
"nativeSrc": "28301:88:20",
"nodeType": "YulIdentifier",
"src": "28301:88:20"
},
"nativeSrc": "28301:93:20",
"nodeType": "YulFunctionCall",
"src": "28301:93:20"
},
"nativeSrc": "28301:93:20",
"nodeType": "YulExpressionStatement",
"src": "28301:93:20"
},
{
"nativeSrc": "28403:19:20",
"nodeType": "YulAssignment",
"src": "28403:19:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "28414:3:20",
"nodeType": "YulIdentifier",
"src": "28414:3:20"
},
{
"kind": "number",
"nativeSrc": "28419:2:20",
"nodeType": "YulLiteral",
"src": "28419:2:20",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "add",
"nativeSrc": "28410:3:20",
"nodeType": "YulIdentifier",
"src": "28410:3:20"
},
"nativeSrc": "28410:12:20",
"nodeType": "YulFunctionCall",
"src": "28410:12:20"
},
"variableNames": [
{
"name": "end",
"nativeSrc": "28403:3:20",
"nodeType": "YulIdentifier",
"src": "28403:3:20"
}
]
}
]
},
"name": "abi_encode_t_stringliteral_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029_to_t_string_memory_ptr_fromStack",
"nativeSrc": "28062:366:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nativeSrc": "28196:3:20",
"nodeType": "YulTypedName",
"src": "28196:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nativeSrc": "28204:3:20",
"nodeType": "YulTypedName",
"src": "28204:3:20",
"type": ""
}
],
"src": "28062:366:20"
},
{
"body": {
"nativeSrc": "28605:248:20",
"nodeType": "YulBlock",
"src": "28605:248:20",
"statements": [
{
"nativeSrc": "28615:26:20",
"nodeType": "YulAssignment",
"src": "28615:26:20",
"value": {
"arguments": [
{
"name": "headStart",
"nativeSrc": "28627:9:20",
"nodeType": "YulIdentifier",
"src": "28627:9:20"
},
{
"kind": "number",
"nativeSrc": "28638:2:20",
"nodeType": "YulLiteral",
"src": "28638:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "28623:3:20",
"nodeType": "YulIdentifier",
"src": "28623:3:20"
},
"nativeSrc": "28623:18:20",
"nodeType": "YulFunctionCall",
"src": "28623:18:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "28615:4:20",
"nodeType": "YulIdentifier",
"src": "28615:4:20"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "28662:9:20",
"nodeType": "YulIdentifier",
"src": "28662:9:20"
},
{
"kind": "number",
"nativeSrc": "28673:1:20",
"nodeType": "YulLiteral",
"src": "28673:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "28658:3:20",
"nodeType": "YulIdentifier",
"src": "28658:3:20"
},
"nativeSrc": "28658:17:20",
"nodeType": "YulFunctionCall",
"src": "28658:17:20"
},
{
"arguments": [
{
"name": "tail",
"nativeSrc": "28681:4:20",
"nodeType": "YulIdentifier",
"src": "28681:4:20"
},
{
"name": "headStart",
"nativeSrc": "28687:9:20",
"nodeType": "YulIdentifier",
"src": "28687:9:20"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "28677:3:20",
"nodeType": "YulIdentifier",
"src": "28677:3:20"
},
"nativeSrc": "28677:20:20",
"nodeType": "YulFunctionCall",
"src": "28677:20:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "28651:6:20",
"nodeType": "YulIdentifier",
"src": "28651:6:20"
},
"nativeSrc": "28651:47:20",
"nodeType": "YulFunctionCall",
"src": "28651:47:20"
},
"nativeSrc": "28651:47:20",
"nodeType": "YulExpressionStatement",
"src": "28651:47:20"
},
{
"nativeSrc": "28707:139:20",
"nodeType": "YulAssignment",
"src": "28707:139:20",
"value": {
"arguments": [
{
"name": "tail",
"nativeSrc": "28841:4:20",
"nodeType": "YulIdentifier",
"src": "28841:4:20"
}
],
"functionName": {
"name": "abi_encode_t_stringliteral_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029_to_t_string_memory_ptr_fromStack",
"nativeSrc": "28715:124:20",
"nodeType": "YulIdentifier",
"src": "28715:124:20"
},
"nativeSrc": "28715:131:20",
"nodeType": "YulFunctionCall",
"src": "28715:131:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "28707:4:20",
"nodeType": "YulIdentifier",
"src": "28707:4:20"
}
]
}
]
},
"name": "abi_encode_tuple_t_stringliteral_24883cc5fe64ace9d0df1893501ecb93c77180f0ff69cca79affb3c316dc8029__to_t_string_memory_ptr__fromStack_reversed",
"nativeSrc": "28434:419:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "28585:9:20",
"nodeType": "YulTypedName",
"src": "28585:9:20",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nativeSrc": "28600:4:20",
"nodeType": "YulTypedName",
"src": "28600:4:20",
"type": ""
}
],
"src": "28434:419:20"
},
{
"body": {
"nativeSrc": "28965:73:20",
"nodeType": "YulBlock",
"src": "28965:73:20",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nativeSrc": "28987:6:20",
"nodeType": "YulIdentifier",
"src": "28987:6:20"
},
{
"kind": "number",
"nativeSrc": "28995:1:20",
"nodeType": "YulLiteral",
"src": "28995:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "28983:3:20",
"nodeType": "YulIdentifier",
"src": "28983:3:20"
},
"nativeSrc": "28983:14:20",
"nodeType": "YulFunctionCall",
"src": "28983:14:20"
},
{
"hexValue": "45524332303a20696e73756666696369656e7420616c6c6f77616e6365",
"kind": "string",
"nativeSrc": "28999:31:20",
"nodeType": "YulLiteral",
"src": "28999:31:20",
"type": "",
"value": "ERC20: insufficient allowance"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "28976:6:20",
"nodeType": "YulIdentifier",
"src": "28976:6:20"
},
"nativeSrc": "28976:55:20",
"nodeType": "YulFunctionCall",
"src": "28976:55:20"
},
"nativeSrc": "28976:55:20",
"nodeType": "YulExpressionStatement",
"src": "28976:55:20"
}
]
},
"name": "store_literal_in_memory_3b6607e091cba9325f958656d2b5e0622ab7dc0eac71a26ac788cb25bc19f4fe",
"nativeSrc": "28859:179:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nativeSrc": "28957:6:20",
"nodeType": "YulTypedName",
"src": "28957:6:20",
"type": ""
}
],
"src": "28859:179:20"
},
{
"body": {
"nativeSrc": "29190:220:20",
"nodeType": "YulBlock",
"src": "29190:220:20",
"statements": [
{
"nativeSrc": "29200:74:20",
"nodeType": "YulAssignment",
"src": "29200:74:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "29266:3:20",
"nodeType": "YulIdentifier",
"src": "29266:3:20"
},
{
"kind": "number",
"nativeSrc": "29271:2:20",
"nodeType": "YulLiteral",
"src": "29271:2:20",
"type": "",
"value": "29"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nativeSrc": "29207:58:20",
"nodeType": "YulIdentifier",
"src": "29207:58:20"
},
"nativeSrc": "29207:67:20",
"nodeType": "YulFunctionCall",
"src": "29207:67:20"
},
"variableNames": [
{
"name": "pos",
"nativeSrc": "29200:3:20",
"nodeType": "YulIdentifier",
"src": "29200:3:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "29372:3:20",
"nodeType": "YulIdentifier",
"src": "29372:3:20"
}
],
"functionName": {
"name": "store_literal_in_memory_3b6607e091cba9325f958656d2b5e0622ab7dc0eac71a26ac788cb25bc19f4fe",
"nativeSrc": "29283:88:20",
"nodeType": "YulIdentifier",
"src": "29283:88:20"
},
"nativeSrc": "29283:93:20",
"nodeType": "YulFunctionCall",
"src": "29283:93:20"
},
"nativeSrc": "29283:93:20",
"nodeType": "YulExpressionStatement",
"src": "29283:93:20"
},
{
"nativeSrc": "29385:19:20",
"nodeType": "YulAssignment",
"src": "29385:19:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "29396:3:20",
"nodeType": "YulIdentifier",
"src": "29396:3:20"
},
{
"kind": "number",
"nativeSrc": "29401:2:20",
"nodeType": "YulLiteral",
"src": "29401:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "29392:3:20",
"nodeType": "YulIdentifier",
"src": "29392:3:20"
},
"nativeSrc": "29392:12:20",
"nodeType": "YulFunctionCall",
"src": "29392:12:20"
},
"variableNames": [
{
"name": "end",
"nativeSrc": "29385:3:20",
"nodeType": "YulIdentifier",
"src": "29385:3:20"
}
]
}
]
},
"name": "abi_encode_t_stringliteral_3b6607e091cba9325f958656d2b5e0622ab7dc0eac71a26ac788cb25bc19f4fe_to_t_string_memory_ptr_fromStack",
"nativeSrc": "29044:366:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nativeSrc": "29178:3:20",
"nodeType": "YulTypedName",
"src": "29178:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nativeSrc": "29186:3:20",
"nodeType": "YulTypedName",
"src": "29186:3:20",
"type": ""
}
],
"src": "29044:366:20"
},
{
"body": {
"nativeSrc": "29587:248:20",
"nodeType": "YulBlock",
"src": "29587:248:20",
"statements": [
{
"nativeSrc": "29597:26:20",
"nodeType": "YulAssignment",
"src": "29597:26:20",
"value": {
"arguments": [
{
"name": "headStart",
"nativeSrc": "29609:9:20",
"nodeType": "YulIdentifier",
"src": "29609:9:20"
},
{
"kind": "number",
"nativeSrc": "29620:2:20",
"nodeType": "YulLiteral",
"src": "29620:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "29605:3:20",
"nodeType": "YulIdentifier",
"src": "29605:3:20"
},
"nativeSrc": "29605:18:20",
"nodeType": "YulFunctionCall",
"src": "29605:18:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "29597:4:20",
"nodeType": "YulIdentifier",
"src": "29597:4:20"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "29644:9:20",
"nodeType": "YulIdentifier",
"src": "29644:9:20"
},
{
"kind": "number",
"nativeSrc": "29655:1:20",
"nodeType": "YulLiteral",
"src": "29655:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "29640:3:20",
"nodeType": "YulIdentifier",
"src": "29640:3:20"
},
"nativeSrc": "29640:17:20",
"nodeType": "YulFunctionCall",
"src": "29640:17:20"
},
{
"arguments": [
{
"name": "tail",
"nativeSrc": "29663:4:20",
"nodeType": "YulIdentifier",
"src": "29663:4:20"
},
{
"name": "headStart",
"nativeSrc": "29669:9:20",
"nodeType": "YulIdentifier",
"src": "29669:9:20"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "29659:3:20",
"nodeType": "YulIdentifier",
"src": "29659:3:20"
},
"nativeSrc": "29659:20:20",
"nodeType": "YulFunctionCall",
"src": "29659:20:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "29633:6:20",
"nodeType": "YulIdentifier",
"src": "29633:6:20"
},
"nativeSrc": "29633:47:20",
"nodeType": "YulFunctionCall",
"src": "29633:47:20"
},
"nativeSrc": "29633:47:20",
"nodeType": "YulExpressionStatement",
"src": "29633:47:20"
},
{
"nativeSrc": "29689:139:20",
"nodeType": "YulAssignment",
"src": "29689:139:20",
"value": {
"arguments": [
{
"name": "tail",
"nativeSrc": "29823:4:20",
"nodeType": "YulIdentifier",
"src": "29823:4:20"
}
],
"functionName": {
"name": "abi_encode_t_stringliteral_3b6607e091cba9325f958656d2b5e0622ab7dc0eac71a26ac788cb25bc19f4fe_to_t_string_memory_ptr_fromStack",
"nativeSrc": "29697:124:20",
"nodeType": "YulIdentifier",
"src": "29697:124:20"
},
"nativeSrc": "29697:131:20",
"nodeType": "YulFunctionCall",
"src": "29697:131:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "29689:4:20",
"nodeType": "YulIdentifier",
"src": "29689:4:20"
}
]
}
]
},
"name": "abi_encode_tuple_t_stringliteral_3b6607e091cba9325f958656d2b5e0622ab7dc0eac71a26ac788cb25bc19f4fe__to_t_string_memory_ptr__fromStack_reversed",
"nativeSrc": "29416:419:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "29567:9:20",
"nodeType": "YulTypedName",
"src": "29567:9:20",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nativeSrc": "29582:4:20",
"nodeType": "YulTypedName",
"src": "29582:4:20",
"type": ""
}
],
"src": "29416:419:20"
},
{
"body": {
"nativeSrc": "29947:118:20",
"nodeType": "YulBlock",
"src": "29947:118:20",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nativeSrc": "29969:6:20",
"nodeType": "YulIdentifier",
"src": "29969:6:20"
},
{
"kind": "number",
"nativeSrc": "29977:1:20",
"nodeType": "YulLiteral",
"src": "29977:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "29965:3:20",
"nodeType": "YulIdentifier",
"src": "29965:3:20"
},
"nativeSrc": "29965:14:20",
"nodeType": "YulFunctionCall",
"src": "29965:14:20"
},
{
"hexValue": "45524332303a207472616e736665722066726f6d20746865207a65726f206164",
"kind": "string",
"nativeSrc": "29981:34:20",
"nodeType": "YulLiteral",
"src": "29981:34:20",
"type": "",
"value": "ERC20: transfer from the zero ad"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "29958:6:20",
"nodeType": "YulIdentifier",
"src": "29958:6:20"
},
"nativeSrc": "29958:58:20",
"nodeType": "YulFunctionCall",
"src": "29958:58:20"
},
"nativeSrc": "29958:58:20",
"nodeType": "YulExpressionStatement",
"src": "29958:58:20"
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nativeSrc": "30037:6:20",
"nodeType": "YulIdentifier",
"src": "30037:6:20"
},
{
"kind": "number",
"nativeSrc": "30045:2:20",
"nodeType": "YulLiteral",
"src": "30045:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "30033:3:20",
"nodeType": "YulIdentifier",
"src": "30033:3:20"
},
"nativeSrc": "30033:15:20",
"nodeType": "YulFunctionCall",
"src": "30033:15:20"
},
{
"hexValue": "6472657373",
"kind": "string",
"nativeSrc": "30050:7:20",
"nodeType": "YulLiteral",
"src": "30050:7:20",
"type": "",
"value": "dress"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "30026:6:20",
"nodeType": "YulIdentifier",
"src": "30026:6:20"
},
"nativeSrc": "30026:32:20",
"nodeType": "YulFunctionCall",
"src": "30026:32:20"
},
"nativeSrc": "30026:32:20",
"nodeType": "YulExpressionStatement",
"src": "30026:32:20"
}
]
},
"name": "store_literal_in_memory_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea",
"nativeSrc": "29841:224:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nativeSrc": "29939:6:20",
"nodeType": "YulTypedName",
"src": "29939:6:20",
"type": ""
}
],
"src": "29841:224:20"
},
{
"body": {
"nativeSrc": "30217:220:20",
"nodeType": "YulBlock",
"src": "30217:220:20",
"statements": [
{
"nativeSrc": "30227:74:20",
"nodeType": "YulAssignment",
"src": "30227:74:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "30293:3:20",
"nodeType": "YulIdentifier",
"src": "30293:3:20"
},
{
"kind": "number",
"nativeSrc": "30298:2:20",
"nodeType": "YulLiteral",
"src": "30298:2:20",
"type": "",
"value": "37"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nativeSrc": "30234:58:20",
"nodeType": "YulIdentifier",
"src": "30234:58:20"
},
"nativeSrc": "30234:67:20",
"nodeType": "YulFunctionCall",
"src": "30234:67:20"
},
"variableNames": [
{
"name": "pos",
"nativeSrc": "30227:3:20",
"nodeType": "YulIdentifier",
"src": "30227:3:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "30399:3:20",
"nodeType": "YulIdentifier",
"src": "30399:3:20"
}
],
"functionName": {
"name": "store_literal_in_memory_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea",
"nativeSrc": "30310:88:20",
"nodeType": "YulIdentifier",
"src": "30310:88:20"
},
"nativeSrc": "30310:93:20",
"nodeType": "YulFunctionCall",
"src": "30310:93:20"
},
"nativeSrc": "30310:93:20",
"nodeType": "YulExpressionStatement",
"src": "30310:93:20"
},
{
"nativeSrc": "30412:19:20",
"nodeType": "YulAssignment",
"src": "30412:19:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "30423:3:20",
"nodeType": "YulIdentifier",
"src": "30423:3:20"
},
{
"kind": "number",
"nativeSrc": "30428:2:20",
"nodeType": "YulLiteral",
"src": "30428:2:20",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "add",
"nativeSrc": "30419:3:20",
"nodeType": "YulIdentifier",
"src": "30419:3:20"
},
"nativeSrc": "30419:12:20",
"nodeType": "YulFunctionCall",
"src": "30419:12:20"
},
"variableNames": [
{
"name": "end",
"nativeSrc": "30412:3:20",
"nodeType": "YulIdentifier",
"src": "30412:3:20"
}
]
}
]
},
"name": "abi_encode_t_stringliteral_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea_to_t_string_memory_ptr_fromStack",
"nativeSrc": "30071:366:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nativeSrc": "30205:3:20",
"nodeType": "YulTypedName",
"src": "30205:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nativeSrc": "30213:3:20",
"nodeType": "YulTypedName",
"src": "30213:3:20",
"type": ""
}
],
"src": "30071:366:20"
},
{
"body": {
"nativeSrc": "30614:248:20",
"nodeType": "YulBlock",
"src": "30614:248:20",
"statements": [
{
"nativeSrc": "30624:26:20",
"nodeType": "YulAssignment",
"src": "30624:26:20",
"value": {
"arguments": [
{
"name": "headStart",
"nativeSrc": "30636:9:20",
"nodeType": "YulIdentifier",
"src": "30636:9:20"
},
{
"kind": "number",
"nativeSrc": "30647:2:20",
"nodeType": "YulLiteral",
"src": "30647:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "30632:3:20",
"nodeType": "YulIdentifier",
"src": "30632:3:20"
},
"nativeSrc": "30632:18:20",
"nodeType": "YulFunctionCall",
"src": "30632:18:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "30624:4:20",
"nodeType": "YulIdentifier",
"src": "30624:4:20"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "30671:9:20",
"nodeType": "YulIdentifier",
"src": "30671:9:20"
},
{
"kind": "number",
"nativeSrc": "30682:1:20",
"nodeType": "YulLiteral",
"src": "30682:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "30667:3:20",
"nodeType": "YulIdentifier",
"src": "30667:3:20"
},
"nativeSrc": "30667:17:20",
"nodeType": "YulFunctionCall",
"src": "30667:17:20"
},
{
"arguments": [
{
"name": "tail",
"nativeSrc": "30690:4:20",
"nodeType": "YulIdentifier",
"src": "30690:4:20"
},
{
"name": "headStart",
"nativeSrc": "30696:9:20",
"nodeType": "YulIdentifier",
"src": "30696:9:20"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "30686:3:20",
"nodeType": "YulIdentifier",
"src": "30686:3:20"
},
"nativeSrc": "30686:20:20",
"nodeType": "YulFunctionCall",
"src": "30686:20:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "30660:6:20",
"nodeType": "YulIdentifier",
"src": "30660:6:20"
},
"nativeSrc": "30660:47:20",
"nodeType": "YulFunctionCall",
"src": "30660:47:20"
},
"nativeSrc": "30660:47:20",
"nodeType": "YulExpressionStatement",
"src": "30660:47:20"
},
{
"nativeSrc": "30716:139:20",
"nodeType": "YulAssignment",
"src": "30716:139:20",
"value": {
"arguments": [
{
"name": "tail",
"nativeSrc": "30850:4:20",
"nodeType": "YulIdentifier",
"src": "30850:4:20"
}
],
"functionName": {
"name": "abi_encode_t_stringliteral_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea_to_t_string_memory_ptr_fromStack",
"nativeSrc": "30724:124:20",
"nodeType": "YulIdentifier",
"src": "30724:124:20"
},
"nativeSrc": "30724:131:20",
"nodeType": "YulFunctionCall",
"src": "30724:131:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "30716:4:20",
"nodeType": "YulIdentifier",
"src": "30716:4:20"
}
]
}
]
},
"name": "abi_encode_tuple_t_stringliteral_baecc556b46f4ed0f2b4cb599d60785ac8563dd2dc0a5bf12edea1c39e5e1fea__to_t_string_memory_ptr__fromStack_reversed",
"nativeSrc": "30443:419:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "30594:9:20",
"nodeType": "YulTypedName",
"src": "30594:9:20",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nativeSrc": "30609:4:20",
"nodeType": "YulTypedName",
"src": "30609:4:20",
"type": ""
}
],
"src": "30443:419:20"
},
{
"body": {
"nativeSrc": "30974:116:20",
"nodeType": "YulBlock",
"src": "30974:116:20",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nativeSrc": "30996:6:20",
"nodeType": "YulIdentifier",
"src": "30996:6:20"
},
{
"kind": "number",
"nativeSrc": "31004:1:20",
"nodeType": "YulLiteral",
"src": "31004:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "30992:3:20",
"nodeType": "YulIdentifier",
"src": "30992:3:20"
},
"nativeSrc": "30992:14:20",
"nodeType": "YulFunctionCall",
"src": "30992:14:20"
},
{
"hexValue": "45524332303a207472616e7366657220746f20746865207a65726f2061646472",
"kind": "string",
"nativeSrc": "31008:34:20",
"nodeType": "YulLiteral",
"src": "31008:34:20",
"type": "",
"value": "ERC20: transfer to the zero addr"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "30985:6:20",
"nodeType": "YulIdentifier",
"src": "30985:6:20"
},
"nativeSrc": "30985:58:20",
"nodeType": "YulFunctionCall",
"src": "30985:58:20"
},
"nativeSrc": "30985:58:20",
"nodeType": "YulExpressionStatement",
"src": "30985:58:20"
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nativeSrc": "31064:6:20",
"nodeType": "YulIdentifier",
"src": "31064:6:20"
},
{
"kind": "number",
"nativeSrc": "31072:2:20",
"nodeType": "YulLiteral",
"src": "31072:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "31060:3:20",
"nodeType": "YulIdentifier",
"src": "31060:3:20"
},
"nativeSrc": "31060:15:20",
"nodeType": "YulFunctionCall",
"src": "31060:15:20"
},
{
"hexValue": "657373",
"kind": "string",
"nativeSrc": "31077:5:20",
"nodeType": "YulLiteral",
"src": "31077:5:20",
"type": "",
"value": "ess"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "31053:6:20",
"nodeType": "YulIdentifier",
"src": "31053:6:20"
},
"nativeSrc": "31053:30:20",
"nodeType": "YulFunctionCall",
"src": "31053:30:20"
},
"nativeSrc": "31053:30:20",
"nodeType": "YulExpressionStatement",
"src": "31053:30:20"
}
]
},
"name": "store_literal_in_memory_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f",
"nativeSrc": "30868:222:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nativeSrc": "30966:6:20",
"nodeType": "YulTypedName",
"src": "30966:6:20",
"type": ""
}
],
"src": "30868:222:20"
},
{
"body": {
"nativeSrc": "31242:220:20",
"nodeType": "YulBlock",
"src": "31242:220:20",
"statements": [
{
"nativeSrc": "31252:74:20",
"nodeType": "YulAssignment",
"src": "31252:74:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "31318:3:20",
"nodeType": "YulIdentifier",
"src": "31318:3:20"
},
{
"kind": "number",
"nativeSrc": "31323:2:20",
"nodeType": "YulLiteral",
"src": "31323:2:20",
"type": "",
"value": "35"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nativeSrc": "31259:58:20",
"nodeType": "YulIdentifier",
"src": "31259:58:20"
},
"nativeSrc": "31259:67:20",
"nodeType": "YulFunctionCall",
"src": "31259:67:20"
},
"variableNames": [
{
"name": "pos",
"nativeSrc": "31252:3:20",
"nodeType": "YulIdentifier",
"src": "31252:3:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "31424:3:20",
"nodeType": "YulIdentifier",
"src": "31424:3:20"
}
],
"functionName": {
"name": "store_literal_in_memory_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f",
"nativeSrc": "31335:88:20",
"nodeType": "YulIdentifier",
"src": "31335:88:20"
},
"nativeSrc": "31335:93:20",
"nodeType": "YulFunctionCall",
"src": "31335:93:20"
},
"nativeSrc": "31335:93:20",
"nodeType": "YulExpressionStatement",
"src": "31335:93:20"
},
{
"nativeSrc": "31437:19:20",
"nodeType": "YulAssignment",
"src": "31437:19:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "31448:3:20",
"nodeType": "YulIdentifier",
"src": "31448:3:20"
},
{
"kind": "number",
"nativeSrc": "31453:2:20",
"nodeType": "YulLiteral",
"src": "31453:2:20",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "add",
"nativeSrc": "31444:3:20",
"nodeType": "YulIdentifier",
"src": "31444:3:20"
},
"nativeSrc": "31444:12:20",
"nodeType": "YulFunctionCall",
"src": "31444:12:20"
},
"variableNames": [
{
"name": "end",
"nativeSrc": "31437:3:20",
"nodeType": "YulIdentifier",
"src": "31437:3:20"
}
]
}
]
},
"name": "abi_encode_t_stringliteral_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f_to_t_string_memory_ptr_fromStack",
"nativeSrc": "31096:366:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nativeSrc": "31230:3:20",
"nodeType": "YulTypedName",
"src": "31230:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nativeSrc": "31238:3:20",
"nodeType": "YulTypedName",
"src": "31238:3:20",
"type": ""
}
],
"src": "31096:366:20"
},
{
"body": {
"nativeSrc": "31639:248:20",
"nodeType": "YulBlock",
"src": "31639:248:20",
"statements": [
{
"nativeSrc": "31649:26:20",
"nodeType": "YulAssignment",
"src": "31649:26:20",
"value": {
"arguments": [
{
"name": "headStart",
"nativeSrc": "31661:9:20",
"nodeType": "YulIdentifier",
"src": "31661:9:20"
},
{
"kind": "number",
"nativeSrc": "31672:2:20",
"nodeType": "YulLiteral",
"src": "31672:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "31657:3:20",
"nodeType": "YulIdentifier",
"src": "31657:3:20"
},
"nativeSrc": "31657:18:20",
"nodeType": "YulFunctionCall",
"src": "31657:18:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "31649:4:20",
"nodeType": "YulIdentifier",
"src": "31649:4:20"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "31696:9:20",
"nodeType": "YulIdentifier",
"src": "31696:9:20"
},
{
"kind": "number",
"nativeSrc": "31707:1:20",
"nodeType": "YulLiteral",
"src": "31707:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "31692:3:20",
"nodeType": "YulIdentifier",
"src": "31692:3:20"
},
"nativeSrc": "31692:17:20",
"nodeType": "YulFunctionCall",
"src": "31692:17:20"
},
{
"arguments": [
{
"name": "tail",
"nativeSrc": "31715:4:20",
"nodeType": "YulIdentifier",
"src": "31715:4:20"
},
{
"name": "headStart",
"nativeSrc": "31721:9:20",
"nodeType": "YulIdentifier",
"src": "31721:9:20"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "31711:3:20",
"nodeType": "YulIdentifier",
"src": "31711:3:20"
},
"nativeSrc": "31711:20:20",
"nodeType": "YulFunctionCall",
"src": "31711:20:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "31685:6:20",
"nodeType": "YulIdentifier",
"src": "31685:6:20"
},
"nativeSrc": "31685:47:20",
"nodeType": "YulFunctionCall",
"src": "31685:47:20"
},
"nativeSrc": "31685:47:20",
"nodeType": "YulExpressionStatement",
"src": "31685:47:20"
},
{
"nativeSrc": "31741:139:20",
"nodeType": "YulAssignment",
"src": "31741:139:20",
"value": {
"arguments": [
{
"name": "tail",
"nativeSrc": "31875:4:20",
"nodeType": "YulIdentifier",
"src": "31875:4:20"
}
],
"functionName": {
"name": "abi_encode_t_stringliteral_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f_to_t_string_memory_ptr_fromStack",
"nativeSrc": "31749:124:20",
"nodeType": "YulIdentifier",
"src": "31749:124:20"
},
"nativeSrc": "31749:131:20",
"nodeType": "YulFunctionCall",
"src": "31749:131:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "31741:4:20",
"nodeType": "YulIdentifier",
"src": "31741:4:20"
}
]
}
]
},
"name": "abi_encode_tuple_t_stringliteral_0557e210f7a69a685100a7e4e3d0a7024c546085cee28910fd17d0b081d9516f__to_t_string_memory_ptr__fromStack_reversed",
"nativeSrc": "31468:419:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "31619:9:20",
"nodeType": "YulTypedName",
"src": "31619:9:20",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nativeSrc": "31634:4:20",
"nodeType": "YulTypedName",
"src": "31634:4:20",
"type": ""
}
],
"src": "31468:419:20"
},
{
"body": {
"nativeSrc": "31999:119:20",
"nodeType": "YulBlock",
"src": "31999:119:20",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nativeSrc": "32021:6:20",
"nodeType": "YulIdentifier",
"src": "32021:6:20"
},
{
"kind": "number",
"nativeSrc": "32029:1:20",
"nodeType": "YulLiteral",
"src": "32029:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "32017:3:20",
"nodeType": "YulIdentifier",
"src": "32017:3:20"
},
"nativeSrc": "32017:14:20",
"nodeType": "YulFunctionCall",
"src": "32017:14:20"
},
{
"hexValue": "45524332303a207472616e7366657220616d6f756e7420657863656564732062",
"kind": "string",
"nativeSrc": "32033:34:20",
"nodeType": "YulLiteral",
"src": "32033:34:20",
"type": "",
"value": "ERC20: transfer amount exceeds b"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "32010:6:20",
"nodeType": "YulIdentifier",
"src": "32010:6:20"
},
"nativeSrc": "32010:58:20",
"nodeType": "YulFunctionCall",
"src": "32010:58:20"
},
"nativeSrc": "32010:58:20",
"nodeType": "YulExpressionStatement",
"src": "32010:58:20"
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nativeSrc": "32089:6:20",
"nodeType": "YulIdentifier",
"src": "32089:6:20"
},
{
"kind": "number",
"nativeSrc": "32097:2:20",
"nodeType": "YulLiteral",
"src": "32097:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "32085:3:20",
"nodeType": "YulIdentifier",
"src": "32085:3:20"
},
"nativeSrc": "32085:15:20",
"nodeType": "YulFunctionCall",
"src": "32085:15:20"
},
{
"hexValue": "616c616e6365",
"kind": "string",
"nativeSrc": "32102:8:20",
"nodeType": "YulLiteral",
"src": "32102:8:20",
"type": "",
"value": "alance"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "32078:6:20",
"nodeType": "YulIdentifier",
"src": "32078:6:20"
},
"nativeSrc": "32078:33:20",
"nodeType": "YulFunctionCall",
"src": "32078:33:20"
},
"nativeSrc": "32078:33:20",
"nodeType": "YulExpressionStatement",
"src": "32078:33:20"
}
]
},
"name": "store_literal_in_memory_4107e8a8b9e94bf8ff83080ddec1c0bffe897ebc2241b89d44f66b3d274088b6",
"nativeSrc": "31893:225:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nativeSrc": "31991:6:20",
"nodeType": "YulTypedName",
"src": "31991:6:20",
"type": ""
}
],
"src": "31893:225:20"
},
{
"body": {
"nativeSrc": "32270:220:20",
"nodeType": "YulBlock",
"src": "32270:220:20",
"statements": [
{
"nativeSrc": "32280:74:20",
"nodeType": "YulAssignment",
"src": "32280:74:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "32346:3:20",
"nodeType": "YulIdentifier",
"src": "32346:3:20"
},
{
"kind": "number",
"nativeSrc": "32351:2:20",
"nodeType": "YulLiteral",
"src": "32351:2:20",
"type": "",
"value": "38"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nativeSrc": "32287:58:20",
"nodeType": "YulIdentifier",
"src": "32287:58:20"
},
"nativeSrc": "32287:67:20",
"nodeType": "YulFunctionCall",
"src": "32287:67:20"
},
"variableNames": [
{
"name": "pos",
"nativeSrc": "32280:3:20",
"nodeType": "YulIdentifier",
"src": "32280:3:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "32452:3:20",
"nodeType": "YulIdentifier",
"src": "32452:3:20"
}
],
"functionName": {
"name": "store_literal_in_memory_4107e8a8b9e94bf8ff83080ddec1c0bffe897ebc2241b89d44f66b3d274088b6",
"nativeSrc": "32363:88:20",
"nodeType": "YulIdentifier",
"src": "32363:88:20"
},
"nativeSrc": "32363:93:20",
"nodeType": "YulFunctionCall",
"src": "32363:93:20"
},
"nativeSrc": "32363:93:20",
"nodeType": "YulExpressionStatement",
"src": "32363:93:20"
},
{
"nativeSrc": "32465:19:20",
"nodeType": "YulAssignment",
"src": "32465:19:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "32476:3:20",
"nodeType": "YulIdentifier",
"src": "32476:3:20"
},
{
"kind": "number",
"nativeSrc": "32481:2:20",
"nodeType": "YulLiteral",
"src": "32481:2:20",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "add",
"nativeSrc": "32472:3:20",
"nodeType": "YulIdentifier",
"src": "32472:3:20"
},
"nativeSrc": "32472:12:20",
"nodeType": "YulFunctionCall",
"src": "32472:12:20"
},
"variableNames": [
{
"name": "end",
"nativeSrc": "32465:3:20",
"nodeType": "YulIdentifier",
"src": "32465:3:20"
}
]
}
]
},
"name": "abi_encode_t_stringliteral_4107e8a8b9e94bf8ff83080ddec1c0bffe897ebc2241b89d44f66b3d274088b6_to_t_string_memory_ptr_fromStack",
"nativeSrc": "32124:366:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nativeSrc": "32258:3:20",
"nodeType": "YulTypedName",
"src": "32258:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nativeSrc": "32266:3:20",
"nodeType": "YulTypedName",
"src": "32266:3:20",
"type": ""
}
],
"src": "32124:366:20"
},
{
"body": {
"nativeSrc": "32667:248:20",
"nodeType": "YulBlock",
"src": "32667:248:20",
"statements": [
{
"nativeSrc": "32677:26:20",
"nodeType": "YulAssignment",
"src": "32677:26:20",
"value": {
"arguments": [
{
"name": "headStart",
"nativeSrc": "32689:9:20",
"nodeType": "YulIdentifier",
"src": "32689:9:20"
},
{
"kind": "number",
"nativeSrc": "32700:2:20",
"nodeType": "YulLiteral",
"src": "32700:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "32685:3:20",
"nodeType": "YulIdentifier",
"src": "32685:3:20"
},
"nativeSrc": "32685:18:20",
"nodeType": "YulFunctionCall",
"src": "32685:18:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "32677:4:20",
"nodeType": "YulIdentifier",
"src": "32677:4:20"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "32724:9:20",
"nodeType": "YulIdentifier",
"src": "32724:9:20"
},
{
"kind": "number",
"nativeSrc": "32735:1:20",
"nodeType": "YulLiteral",
"src": "32735:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "32720:3:20",
"nodeType": "YulIdentifier",
"src": "32720:3:20"
},
"nativeSrc": "32720:17:20",
"nodeType": "YulFunctionCall",
"src": "32720:17:20"
},
{
"arguments": [
{
"name": "tail",
"nativeSrc": "32743:4:20",
"nodeType": "YulIdentifier",
"src": "32743:4:20"
},
{
"name": "headStart",
"nativeSrc": "32749:9:20",
"nodeType": "YulIdentifier",
"src": "32749:9:20"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "32739:3:20",
"nodeType": "YulIdentifier",
"src": "32739:3:20"
},
"nativeSrc": "32739:20:20",
"nodeType": "YulFunctionCall",
"src": "32739:20:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "32713:6:20",
"nodeType": "YulIdentifier",
"src": "32713:6:20"
},
"nativeSrc": "32713:47:20",
"nodeType": "YulFunctionCall",
"src": "32713:47:20"
},
"nativeSrc": "32713:47:20",
"nodeType": "YulExpressionStatement",
"src": "32713:47:20"
},
{
"nativeSrc": "32769:139:20",
"nodeType": "YulAssignment",
"src": "32769:139:20",
"value": {
"arguments": [
{
"name": "tail",
"nativeSrc": "32903:4:20",
"nodeType": "YulIdentifier",
"src": "32903:4:20"
}
],
"functionName": {
"name": "abi_encode_t_stringliteral_4107e8a8b9e94bf8ff83080ddec1c0bffe897ebc2241b89d44f66b3d274088b6_to_t_string_memory_ptr_fromStack",
"nativeSrc": "32777:124:20",
"nodeType": "YulIdentifier",
"src": "32777:124:20"
},
"nativeSrc": "32777:131:20",
"nodeType": "YulFunctionCall",
"src": "32777:131:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "32769:4:20",
"nodeType": "YulIdentifier",
"src": "32769:4:20"
}
]
}
]
},
"name": "abi_encode_tuple_t_stringliteral_4107e8a8b9e94bf8ff83080ddec1c0bffe897ebc2241b89d44f66b3d274088b6__to_t_string_memory_ptr__fromStack_reversed",
"nativeSrc": "32496:419:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "32647:9:20",
"nodeType": "YulTypedName",
"src": "32647:9:20",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nativeSrc": "32662:4:20",
"nodeType": "YulTypedName",
"src": "32662:4:20",
"type": ""
}
],
"src": "32496:419:20"
},
{
"body": {
"nativeSrc": "33131:454:20",
"nodeType": "YulBlock",
"src": "33131:454:20",
"statements": [
{
"nativeSrc": "33141:27:20",
"nodeType": "YulAssignment",
"src": "33141:27:20",
"value": {
"arguments": [
{
"name": "headStart",
"nativeSrc": "33153:9:20",
"nodeType": "YulIdentifier",
"src": "33153:9:20"
},
{
"kind": "number",
"nativeSrc": "33164:3:20",
"nodeType": "YulLiteral",
"src": "33164:3:20",
"type": "",
"value": "160"
}
],
"functionName": {
"name": "add",
"nativeSrc": "33149:3:20",
"nodeType": "YulIdentifier",
"src": "33149:3:20"
},
"nativeSrc": "33149:19:20",
"nodeType": "YulFunctionCall",
"src": "33149:19:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "33141:4:20",
"nodeType": "YulIdentifier",
"src": "33141:4:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "value0",
"nativeSrc": "33222:6:20",
"nodeType": "YulIdentifier",
"src": "33222:6:20"
},
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "33235:9:20",
"nodeType": "YulIdentifier",
"src": "33235:9:20"
},
{
"kind": "number",
"nativeSrc": "33246:1:20",
"nodeType": "YulLiteral",
"src": "33246:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "33231:3:20",
"nodeType": "YulIdentifier",
"src": "33231:3:20"
},
"nativeSrc": "33231:17:20",
"nodeType": "YulFunctionCall",
"src": "33231:17:20"
}
],
"functionName": {
"name": "abi_encode_t_bytes32_to_t_bytes32_fromStack",
"nativeSrc": "33178:43:20",
"nodeType": "YulIdentifier",
"src": "33178:43:20"
},
"nativeSrc": "33178:71:20",
"nodeType": "YulFunctionCall",
"src": "33178:71:20"
},
"nativeSrc": "33178:71:20",
"nodeType": "YulExpressionStatement",
"src": "33178:71:20"
},
{
"expression": {
"arguments": [
{
"name": "value1",
"nativeSrc": "33303:6:20",
"nodeType": "YulIdentifier",
"src": "33303:6:20"
},
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "33316:9:20",
"nodeType": "YulIdentifier",
"src": "33316:9:20"
},
{
"kind": "number",
"nativeSrc": "33327:2:20",
"nodeType": "YulLiteral",
"src": "33327:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "33312:3:20",
"nodeType": "YulIdentifier",
"src": "33312:3:20"
},
"nativeSrc": "33312:18:20",
"nodeType": "YulFunctionCall",
"src": "33312:18:20"
}
],
"functionName": {
"name": "abi_encode_t_bytes32_to_t_bytes32_fromStack",
"nativeSrc": "33259:43:20",
"nodeType": "YulIdentifier",
"src": "33259:43:20"
},
"nativeSrc": "33259:72:20",
"nodeType": "YulFunctionCall",
"src": "33259:72:20"
},
"nativeSrc": "33259:72:20",
"nodeType": "YulExpressionStatement",
"src": "33259:72:20"
},
{
"expression": {
"arguments": [
{
"name": "value2",
"nativeSrc": "33385:6:20",
"nodeType": "YulIdentifier",
"src": "33385:6:20"
},
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "33398:9:20",
"nodeType": "YulIdentifier",
"src": "33398:9:20"
},
{
"kind": "number",
"nativeSrc": "33409:2:20",
"nodeType": "YulLiteral",
"src": "33409:2:20",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "add",
"nativeSrc": "33394:3:20",
"nodeType": "YulIdentifier",
"src": "33394:3:20"
},
"nativeSrc": "33394:18:20",
"nodeType": "YulFunctionCall",
"src": "33394:18:20"
}
],
"functionName": {
"name": "abi_encode_t_bytes32_to_t_bytes32_fromStack",
"nativeSrc": "33341:43:20",
"nodeType": "YulIdentifier",
"src": "33341:43:20"
},
"nativeSrc": "33341:72:20",
"nodeType": "YulFunctionCall",
"src": "33341:72:20"
},
"nativeSrc": "33341:72:20",
"nodeType": "YulExpressionStatement",
"src": "33341:72:20"
},
{
"expression": {
"arguments": [
{
"name": "value3",
"nativeSrc": "33467:6:20",
"nodeType": "YulIdentifier",
"src": "33467:6:20"
},
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "33480:9:20",
"nodeType": "YulIdentifier",
"src": "33480:9:20"
},
{
"kind": "number",
"nativeSrc": "33491:2:20",
"nodeType": "YulLiteral",
"src": "33491:2:20",
"type": "",
"value": "96"
}
],
"functionName": {
"name": "add",
"nativeSrc": "33476:3:20",
"nodeType": "YulIdentifier",
"src": "33476:3:20"
},
"nativeSrc": "33476:18:20",
"nodeType": "YulFunctionCall",
"src": "33476:18:20"
}
],
"functionName": {
"name": "abi_encode_t_uint256_to_t_uint256_fromStack",
"nativeSrc": "33423:43:20",
"nodeType": "YulIdentifier",
"src": "33423:43:20"
},
"nativeSrc": "33423:72:20",
"nodeType": "YulFunctionCall",
"src": "33423:72:20"
},
"nativeSrc": "33423:72:20",
"nodeType": "YulExpressionStatement",
"src": "33423:72:20"
},
{
"expression": {
"arguments": [
{
"name": "value4",
"nativeSrc": "33549:6:20",
"nodeType": "YulIdentifier",
"src": "33549:6:20"
},
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "33562:9:20",
"nodeType": "YulIdentifier",
"src": "33562:9:20"
},
{
"kind": "number",
"nativeSrc": "33573:3:20",
"nodeType": "YulLiteral",
"src": "33573:3:20",
"type": "",
"value": "128"
}
],
"functionName": {
"name": "add",
"nativeSrc": "33558:3:20",
"nodeType": "YulIdentifier",
"src": "33558:3:20"
},
"nativeSrc": "33558:19:20",
"nodeType": "YulFunctionCall",
"src": "33558:19:20"
}
],
"functionName": {
"name": "abi_encode_t_address_to_t_address_fromStack",
"nativeSrc": "33505:43:20",
"nodeType": "YulIdentifier",
"src": "33505:43:20"
},
"nativeSrc": "33505:73:20",
"nodeType": "YulFunctionCall",
"src": "33505:73:20"
},
"nativeSrc": "33505:73:20",
"nodeType": "YulExpressionStatement",
"src": "33505:73:20"
}
]
},
"name": "abi_encode_tuple_t_bytes32_t_bytes32_t_bytes32_t_uint256_t_address__to_t_bytes32_t_bytes32_t_bytes32_t_uint256_t_address__fromStack_reversed",
"nativeSrc": "32921:664:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "33071:9:20",
"nodeType": "YulTypedName",
"src": "33071:9:20",
"type": ""
},
{
"name": "value4",
"nativeSrc": "33083:6:20",
"nodeType": "YulTypedName",
"src": "33083:6:20",
"type": ""
},
{
"name": "value3",
"nativeSrc": "33091:6:20",
"nodeType": "YulTypedName",
"src": "33091:6:20",
"type": ""
},
{
"name": "value2",
"nativeSrc": "33099:6:20",
"nodeType": "YulTypedName",
"src": "33099:6:20",
"type": ""
},
{
"name": "value1",
"nativeSrc": "33107:6:20",
"nodeType": "YulTypedName",
"src": "33107:6:20",
"type": ""
},
{
"name": "value0",
"nativeSrc": "33115:6:20",
"nodeType": "YulTypedName",
"src": "33115:6:20",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nativeSrc": "33126:4:20",
"nodeType": "YulTypedName",
"src": "33126:4:20",
"type": ""
}
],
"src": "32921:664:20"
},
{
"body": {
"nativeSrc": "33697:114:20",
"nodeType": "YulBlock",
"src": "33697:114:20",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nativeSrc": "33719:6:20",
"nodeType": "YulIdentifier",
"src": "33719:6:20"
},
{
"kind": "number",
"nativeSrc": "33727:1:20",
"nodeType": "YulLiteral",
"src": "33727:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "33715:3:20",
"nodeType": "YulIdentifier",
"src": "33715:3:20"
},
"nativeSrc": "33715:14:20",
"nodeType": "YulFunctionCall",
"src": "33715:14:20"
},
{
"hexValue": "45524332303a206275726e2066726f6d20746865207a65726f20616464726573",
"kind": "string",
"nativeSrc": "33731:34:20",
"nodeType": "YulLiteral",
"src": "33731:34:20",
"type": "",
"value": "ERC20: burn from the zero addres"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "33708:6:20",
"nodeType": "YulIdentifier",
"src": "33708:6:20"
},
"nativeSrc": "33708:58:20",
"nodeType": "YulFunctionCall",
"src": "33708:58:20"
},
"nativeSrc": "33708:58:20",
"nodeType": "YulExpressionStatement",
"src": "33708:58:20"
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nativeSrc": "33787:6:20",
"nodeType": "YulIdentifier",
"src": "33787:6:20"
},
{
"kind": "number",
"nativeSrc": "33795:2:20",
"nodeType": "YulLiteral",
"src": "33795:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "33783:3:20",
"nodeType": "YulIdentifier",
"src": "33783:3:20"
},
"nativeSrc": "33783:15:20",
"nodeType": "YulFunctionCall",
"src": "33783:15:20"
},
{
"hexValue": "73",
"kind": "string",
"nativeSrc": "33800:3:20",
"nodeType": "YulLiteral",
"src": "33800:3:20",
"type": "",
"value": "s"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "33776:6:20",
"nodeType": "YulIdentifier",
"src": "33776:6:20"
},
"nativeSrc": "33776:28:20",
"nodeType": "YulFunctionCall",
"src": "33776:28:20"
},
"nativeSrc": "33776:28:20",
"nodeType": "YulExpressionStatement",
"src": "33776:28:20"
}
]
},
"name": "store_literal_in_memory_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f",
"nativeSrc": "33591:220:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nativeSrc": "33689:6:20",
"nodeType": "YulTypedName",
"src": "33689:6:20",
"type": ""
}
],
"src": "33591:220:20"
},
{
"body": {
"nativeSrc": "33963:220:20",
"nodeType": "YulBlock",
"src": "33963:220:20",
"statements": [
{
"nativeSrc": "33973:74:20",
"nodeType": "YulAssignment",
"src": "33973:74:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "34039:3:20",
"nodeType": "YulIdentifier",
"src": "34039:3:20"
},
{
"kind": "number",
"nativeSrc": "34044:2:20",
"nodeType": "YulLiteral",
"src": "34044:2:20",
"type": "",
"value": "33"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nativeSrc": "33980:58:20",
"nodeType": "YulIdentifier",
"src": "33980:58:20"
},
"nativeSrc": "33980:67:20",
"nodeType": "YulFunctionCall",
"src": "33980:67:20"
},
"variableNames": [
{
"name": "pos",
"nativeSrc": "33973:3:20",
"nodeType": "YulIdentifier",
"src": "33973:3:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "34145:3:20",
"nodeType": "YulIdentifier",
"src": "34145:3:20"
}
],
"functionName": {
"name": "store_literal_in_memory_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f",
"nativeSrc": "34056:88:20",
"nodeType": "YulIdentifier",
"src": "34056:88:20"
},
"nativeSrc": "34056:93:20",
"nodeType": "YulFunctionCall",
"src": "34056:93:20"
},
"nativeSrc": "34056:93:20",
"nodeType": "YulExpressionStatement",
"src": "34056:93:20"
},
{
"nativeSrc": "34158:19:20",
"nodeType": "YulAssignment",
"src": "34158:19:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "34169:3:20",
"nodeType": "YulIdentifier",
"src": "34169:3:20"
},
{
"kind": "number",
"nativeSrc": "34174:2:20",
"nodeType": "YulLiteral",
"src": "34174:2:20",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "add",
"nativeSrc": "34165:3:20",
"nodeType": "YulIdentifier",
"src": "34165:3:20"
},
"nativeSrc": "34165:12:20",
"nodeType": "YulFunctionCall",
"src": "34165:12:20"
},
"variableNames": [
{
"name": "end",
"nativeSrc": "34158:3:20",
"nodeType": "YulIdentifier",
"src": "34158:3:20"
}
]
}
]
},
"name": "abi_encode_t_stringliteral_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f_to_t_string_memory_ptr_fromStack",
"nativeSrc": "33817:366:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nativeSrc": "33951:3:20",
"nodeType": "YulTypedName",
"src": "33951:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nativeSrc": "33959:3:20",
"nodeType": "YulTypedName",
"src": "33959:3:20",
"type": ""
}
],
"src": "33817:366:20"
},
{
"body": {
"nativeSrc": "34360:248:20",
"nodeType": "YulBlock",
"src": "34360:248:20",
"statements": [
{
"nativeSrc": "34370:26:20",
"nodeType": "YulAssignment",
"src": "34370:26:20",
"value": {
"arguments": [
{
"name": "headStart",
"nativeSrc": "34382:9:20",
"nodeType": "YulIdentifier",
"src": "34382:9:20"
},
{
"kind": "number",
"nativeSrc": "34393:2:20",
"nodeType": "YulLiteral",
"src": "34393:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "34378:3:20",
"nodeType": "YulIdentifier",
"src": "34378:3:20"
},
"nativeSrc": "34378:18:20",
"nodeType": "YulFunctionCall",
"src": "34378:18:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "34370:4:20",
"nodeType": "YulIdentifier",
"src": "34370:4:20"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "34417:9:20",
"nodeType": "YulIdentifier",
"src": "34417:9:20"
},
{
"kind": "number",
"nativeSrc": "34428:1:20",
"nodeType": "YulLiteral",
"src": "34428:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "34413:3:20",
"nodeType": "YulIdentifier",
"src": "34413:3:20"
},
"nativeSrc": "34413:17:20",
"nodeType": "YulFunctionCall",
"src": "34413:17:20"
},
{
"arguments": [
{
"name": "tail",
"nativeSrc": "34436:4:20",
"nodeType": "YulIdentifier",
"src": "34436:4:20"
},
{
"name": "headStart",
"nativeSrc": "34442:9:20",
"nodeType": "YulIdentifier",
"src": "34442:9:20"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "34432:3:20",
"nodeType": "YulIdentifier",
"src": "34432:3:20"
},
"nativeSrc": "34432:20:20",
"nodeType": "YulFunctionCall",
"src": "34432:20:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "34406:6:20",
"nodeType": "YulIdentifier",
"src": "34406:6:20"
},
"nativeSrc": "34406:47:20",
"nodeType": "YulFunctionCall",
"src": "34406:47:20"
},
"nativeSrc": "34406:47:20",
"nodeType": "YulExpressionStatement",
"src": "34406:47:20"
},
{
"nativeSrc": "34462:139:20",
"nodeType": "YulAssignment",
"src": "34462:139:20",
"value": {
"arguments": [
{
"name": "tail",
"nativeSrc": "34596:4:20",
"nodeType": "YulIdentifier",
"src": "34596:4:20"
}
],
"functionName": {
"name": "abi_encode_t_stringliteral_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f_to_t_string_memory_ptr_fromStack",
"nativeSrc": "34470:124:20",
"nodeType": "YulIdentifier",
"src": "34470:124:20"
},
"nativeSrc": "34470:131:20",
"nodeType": "YulFunctionCall",
"src": "34470:131:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "34462:4:20",
"nodeType": "YulIdentifier",
"src": "34462:4:20"
}
]
}
]
},
"name": "abi_encode_tuple_t_stringliteral_b16788493b576042bb52c50ed56189e0b250db113c7bfb1c3897d25cf9632d7f__to_t_string_memory_ptr__fromStack_reversed",
"nativeSrc": "34189:419:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "34340:9:20",
"nodeType": "YulTypedName",
"src": "34340:9:20",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nativeSrc": "34355:4:20",
"nodeType": "YulTypedName",
"src": "34355:4:20",
"type": ""
}
],
"src": "34189:419:20"
},
{
"body": {
"nativeSrc": "34720:115:20",
"nodeType": "YulBlock",
"src": "34720:115:20",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nativeSrc": "34742:6:20",
"nodeType": "YulIdentifier",
"src": "34742:6:20"
},
{
"kind": "number",
"nativeSrc": "34750:1:20",
"nodeType": "YulLiteral",
"src": "34750:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "34738:3:20",
"nodeType": "YulIdentifier",
"src": "34738:3:20"
},
"nativeSrc": "34738:14:20",
"nodeType": "YulFunctionCall",
"src": "34738:14:20"
},
{
"hexValue": "45524332303a206275726e20616d6f756e7420657863656564732062616c616e",
"kind": "string",
"nativeSrc": "34754:34:20",
"nodeType": "YulLiteral",
"src": "34754:34:20",
"type": "",
"value": "ERC20: burn amount exceeds balan"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "34731:6:20",
"nodeType": "YulIdentifier",
"src": "34731:6:20"
},
"nativeSrc": "34731:58:20",
"nodeType": "YulFunctionCall",
"src": "34731:58:20"
},
"nativeSrc": "34731:58:20",
"nodeType": "YulExpressionStatement",
"src": "34731:58:20"
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nativeSrc": "34810:6:20",
"nodeType": "YulIdentifier",
"src": "34810:6:20"
},
{
"kind": "number",
"nativeSrc": "34818:2:20",
"nodeType": "YulLiteral",
"src": "34818:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "34806:3:20",
"nodeType": "YulIdentifier",
"src": "34806:3:20"
},
"nativeSrc": "34806:15:20",
"nodeType": "YulFunctionCall",
"src": "34806:15:20"
},
{
"hexValue": "6365",
"kind": "string",
"nativeSrc": "34823:4:20",
"nodeType": "YulLiteral",
"src": "34823:4:20",
"type": "",
"value": "ce"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "34799:6:20",
"nodeType": "YulIdentifier",
"src": "34799:6:20"
},
"nativeSrc": "34799:29:20",
"nodeType": "YulFunctionCall",
"src": "34799:29:20"
},
"nativeSrc": "34799:29:20",
"nodeType": "YulExpressionStatement",
"src": "34799:29:20"
}
]
},
"name": "store_literal_in_memory_149b126e7125232b4200af45303d04fba8b74653b1a295a6a561a528c33fefdd",
"nativeSrc": "34614:221:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nativeSrc": "34712:6:20",
"nodeType": "YulTypedName",
"src": "34712:6:20",
"type": ""
}
],
"src": "34614:221:20"
},
{
"body": {
"nativeSrc": "34987:220:20",
"nodeType": "YulBlock",
"src": "34987:220:20",
"statements": [
{
"nativeSrc": "34997:74:20",
"nodeType": "YulAssignment",
"src": "34997:74:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "35063:3:20",
"nodeType": "YulIdentifier",
"src": "35063:3:20"
},
{
"kind": "number",
"nativeSrc": "35068:2:20",
"nodeType": "YulLiteral",
"src": "35068:2:20",
"type": "",
"value": "34"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nativeSrc": "35004:58:20",
"nodeType": "YulIdentifier",
"src": "35004:58:20"
},
"nativeSrc": "35004:67:20",
"nodeType": "YulFunctionCall",
"src": "35004:67:20"
},
"variableNames": [
{
"name": "pos",
"nativeSrc": "34997:3:20",
"nodeType": "YulIdentifier",
"src": "34997:3:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "35169:3:20",
"nodeType": "YulIdentifier",
"src": "35169:3:20"
}
],
"functionName": {
"name": "store_literal_in_memory_149b126e7125232b4200af45303d04fba8b74653b1a295a6a561a528c33fefdd",
"nativeSrc": "35080:88:20",
"nodeType": "YulIdentifier",
"src": "35080:88:20"
},
"nativeSrc": "35080:93:20",
"nodeType": "YulFunctionCall",
"src": "35080:93:20"
},
"nativeSrc": "35080:93:20",
"nodeType": "YulExpressionStatement",
"src": "35080:93:20"
},
{
"nativeSrc": "35182:19:20",
"nodeType": "YulAssignment",
"src": "35182:19:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "35193:3:20",
"nodeType": "YulIdentifier",
"src": "35193:3:20"
},
{
"kind": "number",
"nativeSrc": "35198:2:20",
"nodeType": "YulLiteral",
"src": "35198:2:20",
"type": "",
"value": "64"
}
],
"functionName": {
"name": "add",
"nativeSrc": "35189:3:20",
"nodeType": "YulIdentifier",
"src": "35189:3:20"
},
"nativeSrc": "35189:12:20",
"nodeType": "YulFunctionCall",
"src": "35189:12:20"
},
"variableNames": [
{
"name": "end",
"nativeSrc": "35182:3:20",
"nodeType": "YulIdentifier",
"src": "35182:3:20"
}
]
}
]
},
"name": "abi_encode_t_stringliteral_149b126e7125232b4200af45303d04fba8b74653b1a295a6a561a528c33fefdd_to_t_string_memory_ptr_fromStack",
"nativeSrc": "34841:366:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nativeSrc": "34975:3:20",
"nodeType": "YulTypedName",
"src": "34975:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nativeSrc": "34983:3:20",
"nodeType": "YulTypedName",
"src": "34983:3:20",
"type": ""
}
],
"src": "34841:366:20"
},
{
"body": {
"nativeSrc": "35384:248:20",
"nodeType": "YulBlock",
"src": "35384:248:20",
"statements": [
{
"nativeSrc": "35394:26:20",
"nodeType": "YulAssignment",
"src": "35394:26:20",
"value": {
"arguments": [
{
"name": "headStart",
"nativeSrc": "35406:9:20",
"nodeType": "YulIdentifier",
"src": "35406:9:20"
},
{
"kind": "number",
"nativeSrc": "35417:2:20",
"nodeType": "YulLiteral",
"src": "35417:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "35402:3:20",
"nodeType": "YulIdentifier",
"src": "35402:3:20"
},
"nativeSrc": "35402:18:20",
"nodeType": "YulFunctionCall",
"src": "35402:18:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "35394:4:20",
"nodeType": "YulIdentifier",
"src": "35394:4:20"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "35441:9:20",
"nodeType": "YulIdentifier",
"src": "35441:9:20"
},
{
"kind": "number",
"nativeSrc": "35452:1:20",
"nodeType": "YulLiteral",
"src": "35452:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "35437:3:20",
"nodeType": "YulIdentifier",
"src": "35437:3:20"
},
"nativeSrc": "35437:17:20",
"nodeType": "YulFunctionCall",
"src": "35437:17:20"
},
{
"arguments": [
{
"name": "tail",
"nativeSrc": "35460:4:20",
"nodeType": "YulIdentifier",
"src": "35460:4:20"
},
{
"name": "headStart",
"nativeSrc": "35466:9:20",
"nodeType": "YulIdentifier",
"src": "35466:9:20"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "35456:3:20",
"nodeType": "YulIdentifier",
"src": "35456:3:20"
},
"nativeSrc": "35456:20:20",
"nodeType": "YulFunctionCall",
"src": "35456:20:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "35430:6:20",
"nodeType": "YulIdentifier",
"src": "35430:6:20"
},
"nativeSrc": "35430:47:20",
"nodeType": "YulFunctionCall",
"src": "35430:47:20"
},
"nativeSrc": "35430:47:20",
"nodeType": "YulExpressionStatement",
"src": "35430:47:20"
},
{
"nativeSrc": "35486:139:20",
"nodeType": "YulAssignment",
"src": "35486:139:20",
"value": {
"arguments": [
{
"name": "tail",
"nativeSrc": "35620:4:20",
"nodeType": "YulIdentifier",
"src": "35620:4:20"
}
],
"functionName": {
"name": "abi_encode_t_stringliteral_149b126e7125232b4200af45303d04fba8b74653b1a295a6a561a528c33fefdd_to_t_string_memory_ptr_fromStack",
"nativeSrc": "35494:124:20",
"nodeType": "YulIdentifier",
"src": "35494:124:20"
},
"nativeSrc": "35494:131:20",
"nodeType": "YulFunctionCall",
"src": "35494:131:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "35486:4:20",
"nodeType": "YulIdentifier",
"src": "35486:4:20"
}
]
}
]
},
"name": "abi_encode_tuple_t_stringliteral_149b126e7125232b4200af45303d04fba8b74653b1a295a6a561a528c33fefdd__to_t_string_memory_ptr__fromStack_reversed",
"nativeSrc": "35213:419:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "35364:9:20",
"nodeType": "YulTypedName",
"src": "35364:9:20",
"type": ""
}
],
"returnVariables": [
{
"name": "tail",
"nativeSrc": "35379:4:20",
"nodeType": "YulTypedName",
"src": "35379:4:20",
"type": ""
}
],
"src": "35213:419:20"
},
{
"body": {
"nativeSrc": "35744:75:20",
"nodeType": "YulBlock",
"src": "35744:75:20",
"statements": [
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "memPtr",
"nativeSrc": "35766:6:20",
"nodeType": "YulIdentifier",
"src": "35766:6:20"
},
{
"kind": "number",
"nativeSrc": "35774:1:20",
"nodeType": "YulLiteral",
"src": "35774:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "35762:3:20",
"nodeType": "YulIdentifier",
"src": "35762:3:20"
},
"nativeSrc": "35762:14:20",
"nodeType": "YulFunctionCall",
"src": "35762:14:20"
},
{
"hexValue": "45524332303a206d696e7420746f20746865207a65726f2061646472657373",
"kind": "string",
"nativeSrc": "35778:33:20",
"nodeType": "YulLiteral",
"src": "35778:33:20",
"type": "",
"value": "ERC20: mint to the zero address"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "35755:6:20",
"nodeType": "YulIdentifier",
"src": "35755:6:20"
},
"nativeSrc": "35755:57:20",
"nodeType": "YulFunctionCall",
"src": "35755:57:20"
},
"nativeSrc": "35755:57:20",
"nodeType": "YulExpressionStatement",
"src": "35755:57:20"
}
]
},
"name": "store_literal_in_memory_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e",
"nativeSrc": "35638:181:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "memPtr",
"nativeSrc": "35736:6:20",
"nodeType": "YulTypedName",
"src": "35736:6:20",
"type": ""
}
],
"src": "35638:181:20"
},
{
"body": {
"nativeSrc": "35971:220:20",
"nodeType": "YulBlock",
"src": "35971:220:20",
"statements": [
{
"nativeSrc": "35981:74:20",
"nodeType": "YulAssignment",
"src": "35981:74:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "36047:3:20",
"nodeType": "YulIdentifier",
"src": "36047:3:20"
},
{
"kind": "number",
"nativeSrc": "36052:2:20",
"nodeType": "YulLiteral",
"src": "36052:2:20",
"type": "",
"value": "31"
}
],
"functionName": {
"name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack",
"nativeSrc": "35988:58:20",
"nodeType": "YulIdentifier",
"src": "35988:58:20"
},
"nativeSrc": "35988:67:20",
"nodeType": "YulFunctionCall",
"src": "35988:67:20"
},
"variableNames": [
{
"name": "pos",
"nativeSrc": "35981:3:20",
"nodeType": "YulIdentifier",
"src": "35981:3:20"
}
]
},
{
"expression": {
"arguments": [
{
"name": "pos",
"nativeSrc": "36153:3:20",
"nodeType": "YulIdentifier",
"src": "36153:3:20"
}
],
"functionName": {
"name": "store_literal_in_memory_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e",
"nativeSrc": "36064:88:20",
"nodeType": "YulIdentifier",
"src": "36064:88:20"
},
"nativeSrc": "36064:93:20",
"nodeType": "YulFunctionCall",
"src": "36064:93:20"
},
"nativeSrc": "36064:93:20",
"nodeType": "YulExpressionStatement",
"src": "36064:93:20"
},
{
"nativeSrc": "36166:19:20",
"nodeType": "YulAssignment",
"src": "36166:19:20",
"value": {
"arguments": [
{
"name": "pos",
"nativeSrc": "36177:3:20",
"nodeType": "YulIdentifier",
"src": "36177:3:20"
},
{
"kind": "number",
"nativeSrc": "36182:2:20",
"nodeType": "YulLiteral",
"src": "36182:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "36173:3:20",
"nodeType": "YulIdentifier",
"src": "36173:3:20"
},
"nativeSrc": "36173:12:20",
"nodeType": "YulFunctionCall",
"src": "36173:12:20"
},
"variableNames": [
{
"name": "end",
"nativeSrc": "36166:3:20",
"nodeType": "YulIdentifier",
"src": "36166:3:20"
}
]
}
]
},
"name": "abi_encode_t_stringliteral_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e_to_t_string_memory_ptr_fromStack",
"nativeSrc": "35825:366:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "pos",
"nativeSrc": "35959:3:20",
"nodeType": "YulTypedName",
"src": "35959:3:20",
"type": ""
}
],
"returnVariables": [
{
"name": "end",
"nativeSrc": "35967:3:20",
"nodeType": "YulTypedName",
"src": "35967:3:20",
"type": ""
}
],
"src": "35825:366:20"
},
{
"body": {
"nativeSrc": "36368:248:20",
"nodeType": "YulBlock",
"src": "36368:248:20",
"statements": [
{
"nativeSrc": "36378:26:20",
"nodeType": "YulAssignment",
"src": "36378:26:20",
"value": {
"arguments": [
{
"name": "headStart",
"nativeSrc": "36390:9:20",
"nodeType": "YulIdentifier",
"src": "36390:9:20"
},
{
"kind": "number",
"nativeSrc": "36401:2:20",
"nodeType": "YulLiteral",
"src": "36401:2:20",
"type": "",
"value": "32"
}
],
"functionName": {
"name": "add",
"nativeSrc": "36386:3:20",
"nodeType": "YulIdentifier",
"src": "36386:3:20"
},
"nativeSrc": "36386:18:20",
"nodeType": "YulFunctionCall",
"src": "36386:18:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "36378:4:20",
"nodeType": "YulIdentifier",
"src": "36378:4:20"
}
]
},
{
"expression": {
"arguments": [
{
"arguments": [
{
"name": "headStart",
"nativeSrc": "36425:9:20",
"nodeType": "YulIdentifier",
"src": "36425:9:20"
},
{
"kind": "number",
"nativeSrc": "36436:1:20",
"nodeType": "YulLiteral",
"src": "36436:1:20",
"type": "",
"value": "0"
}
],
"functionName": {
"name": "add",
"nativeSrc": "36421:3:20",
"nodeType": "YulIdentifier",
"src": "36421:3:20"
},
"nativeSrc": "36421:17:20",
"nodeType": "YulFunctionCall",
"src": "36421:17:20"
},
{
"arguments": [
{
"name": "tail",
"nativeSrc": "36444:4:20",
"nodeType": "YulIdentifier",
"src": "36444:4:20"
},
{
"name": "headStart",
"nativeSrc": "36450:9:20",
"nodeType": "YulIdentifier",
"src": "36450:9:20"
}
],
"functionName": {
"name": "sub",
"nativeSrc": "36440:3:20",
"nodeType": "YulIdentifier",
"src": "36440:3:20"
},
"nativeSrc": "36440:20:20",
"nodeType": "YulFunctionCall",
"src": "36440:20:20"
}
],
"functionName": {
"name": "mstore",
"nativeSrc": "36414:6:20",
"nodeType": "YulIdentifier",
"src": "36414:6:20"
},
"nativeSrc": "36414:47:20",
"nodeType": "YulFunctionCall",
"src": "36414:47:20"
},
"nativeSrc": "36414:47:20",
"nodeType": "YulExpressionStatement",
"src": "36414:47:20"
},
{
"nativeSrc": "36470:139:20",
"nodeType": "YulAssignment",
"src": "36470:139:20",
"value": {
"arguments": [
{
"name": "tail",
"nativeSrc": "36604:4:20",
"nodeType": "YulIdentifier",
"src": "36604:4:20"
}
],
"functionName": {
"name": "abi_encode_t_stringliteral_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e_to_t_string_memory_ptr_fromStack",
"nativeSrc": "36478:124:20",
"nodeType": "YulIdentifier",
"src": "36478:124:20"
},
"nativeSrc": "36478:131:20",
"nodeType": "YulFunctionCall",
"src": "36478:131:20"
},
"variableNames": [
{
"name": "tail",
"nativeSrc": "36470:4:20",
"nodeType": "YulIdentifier",
"src": "36470:4:20"
}
]
}
]
},
"name": "abi_encode_tuple_t_stringliteral_fc0b381caf0a47702017f3c4b358ebe3d3aff6c60ce819a8bf3ef5a95d4f202e__to_t_string_memory_ptr__fromStack_reversed",
"nativeSrc": "36197:419:20",
"nodeType": "YulFunctionDefinition",
"parameters": [
{
"name": "headStart",
"nativeSrc": "36348:9:20",
"nodeType": "YulTypedName",
"src": "36348:9:20",
"type": ""
}
],
"returnVariables": [
{
"name":
View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

View raw

(Sorry about that, but we can’t show files that are this big right now.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment