ETH Price: $3,329.61 (+2.68%)

Contract

0x7a9c12551e50C307c2D3EA5FFEBFb5240C660d53
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Create Custom Sn...208597352024-09-29 23:58:59114 days ago1727654339IN
0x7a9c1255...40C660d53
0 ETH0.00050315.05
Create Custom Sn...208597352024-09-29 23:58:59114 days ago1727654339IN
0x7a9c1255...40C660d53
0 ETH0.000387695.05
Create Custom Sn...208597352024-09-29 23:58:59114 days ago1727654339IN
0x7a9c1255...40C660d53
0 ETH0.000358515.05
Initialize Balan...208597352024-09-29 23:58:59114 days ago1727654339IN
0x7a9c1255...40C660d53
0 ETH0.021709535.05
Initialize Remai...208597352024-09-29 23:58:59114 days ago1727654339IN
0x7a9c1255...40C660d53
0 ETH0.026788215.05

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
ROPMetadataRendererV2

Compiler Version
v0.8.25+commit.b61c2a91

Optimization Enabled:
Yes with 10000 runs

Other Settings:
shanghai EvmVersion
File 1 of 6 : ROPMetadataRendererV2.sol
// SPDX-License-Identifier: MIT
pragma solidity >=0.8.25;

import { Ownable } from "@openzeppelin/contracts/access/Ownable.sol";
import { IERC1155 } from "@openzeppelin/contracts/token/ERC1155/IERC1155.sol";
import { LibString } from "solady/utils/LibString.sol";

/// @title ROPMetadataRendererV2
/// @author @yigitduman
/// @notice This contract is used to collect the balances of addresses and render them as base64 encoded image
/// @dev This is an updated version of the ROPMetadataRenderer contract
/// @dev Changes include:
/// @dev - Added support for snapshotting the balances of the addresses
/// @dev - Added getDeficitBalanceFromTheInitialSnapshot
/// @dev - Added documentation
contract ROPMetadataRendererV2 is Ownable {
    /// @notice Struct to store balance changes for a snapshot
    struct BalanceSnapshot {
        mapping(uint256 => uint256) balanceChanges;
        uint256 snapshotTimestamp;
    }

    /// @notice Event emitted when a snapshot is taken
    event SnapshotTaken(uint256 snapshotIndex, uint256 timestamp);
    /// @notice Event emitted when a snapshot is deleted
    event SnapshotDeleted(uint256 snapshotIndex);
    /// @notice Event emitted when the live snapshot index is set
    event LiveSnapshotIndexSet(uint256 liveSnapshotIndex);
    /// @notice Event emitted when the show live data flag is set
    event ShowLiveDataSet(bool showLiveData);

    /// @notice Error thrown when a non-collector tries to perform a collector-only action
    error NotCollector();
    /// @notice Error thrown when trying to access a snapshot index that doesn't exist
    error SnapshotIndexOutOfBounds();
    /// @notice Error thrown when trying to delete initial snapshots
    error CannotDeleteInitialSnapshots();
    /// @notice Error thrown when trying to access a snapshot that doesn't exist
    error SnapshotNotTaken();
    /// @notice Error thrown when trying to set an invalid address array
    error InvalidAddressArrayLength();
    /// @notice Error thrown when trying to set an invalid initial balances array
    error InvalidInitialBalancesArrayLength();
    /// @notice Error thrown when trying to create a snapshot with mismatched array lengths
    error MismatchedArrayLengths();

    /// @notice Mapping to store balance snapshots
    mapping(uint256 => BalanceSnapshot) public snapshots;
    uint256 public snapshotIndex;

    /// @notice Mapping to store initial balances
    uint40[981] public initialBalances;

    /// @notice Mapping to store addresses
    address[981] public addresses;

    /// @notice Address of the RothkoOnPennies contract
    IERC1155 public immutable rothkoOnPennies;

    /// @notice Index of the current live snapshot
    uint256 public liveSnapshotIndex;

    /// @notice Boolean to toggle live data visibility
    bool public showLiveData = true;

    /// @notice Constructor to initialize the contract with the RothkoOnPennies contract address
    /// @param _rothkoOnPennies Address of the RothkoOnPennies contract
    constructor(address _rothkoOnPennies, address[] memory partialAddresses) Ownable() {
        rothkoOnPennies = IERC1155(_rothkoOnPennies);
        uint256 partialAddressesLength = partialAddresses.length;
        for (uint256 i = 0; i < partialAddressesLength; i++) {
            addresses[i] = partialAddresses[i];
        }
    }

    /// @notice Initialize the contract with addresses
    /// @param _addresses Array of addresses to set
    function initializeRemainingAddresses(address[] calldata _addresses, uint256 startIndex) public onlyOwner {
        uint256 _addressesLength = _addresses.length;
        for (uint256 i = 0; i < _addressesLength; i++) {
            addresses[startIndex + i] = _addresses[i];
        }
    }

    /// @notice Initialize the contract with initial balances
    /// @param _initialBalances Array of initial balances for the addresses
    function initializeBalances(uint40[981] memory _initialBalances) public onlyOwner {
        initialBalances = _initialBalances;
    }

    /// @notice Set new addresses
    /// @param _addresses Array of addresses to set
    function setAddresses(address[981] memory _addresses) public onlyOwner {
        if (_addresses.length != 981) revert InvalidAddressArrayLength();
        addresses = _addresses;
    }

    /// @notice Set initial balances for addresses
    /// @param _initialBalances Array of initial balances for the addresses
    function setInitialBalances(uint40[981] memory _initialBalances) public onlyOwner {
        if (_initialBalances.length != 981) revert InvalidInitialBalancesArrayLength();
        initialBalances = _initialBalances;
    }

    /// @notice Check if the sender is a collector
    /// @return True if the sender is a collector, false otherwise
    function isCollector() public view returns (bool) {
        return isCollector(msg.sender);
    }

    /// @notice Check if the address is a collector
    /// @param addr Address to check
    /// @return True if the address is a collector, false otherwise
    function isCollector(address addr) public view returns (bool) {
        return rothkoOnPennies.balanceOf(addr, 1) > 0;
    }

    /// @notice Modifier to restrict function access to only the collector
    modifier onlyCollector() {
        if (!isCollector()) revert NotCollector();
        _;
    }

    /// @notice Modifier to restrict function access to either the collector or the contract owner
    modifier onlyCollectorOrOwner() {
        if (!isCollector() && msg.sender != owner()) revert NotCollector();
        _;
    }

    /// @notice Take a snapshot of the current balance changes
    function takeSnapshot() public onlyCollectorOrOwner {
        BalanceSnapshot storage newSnapshot = snapshots[snapshotIndex];
        newSnapshot.snapshotTimestamp = block.timestamp;

        uint256 addressCount = addresses.length;
        for (uint256 i = 0; i < addressCount; i++) {
            address addr = addresses[i];
            uint256 balanceChange = address(addr).balance - uint256(initialBalances[i]);
            if (balanceChange != 0) {
                newSnapshot.balanceChanges[i] = balanceChange;
            }
        }

        emit SnapshotTaken(snapshotIndex, block.timestamp);
        snapshotIndex++;
    }

    /// @notice Delete a snapshot by setting it to an empty struct
    /// @param snapshotIndex_ Index of the snapshot to delete
    /// @dev Cannot delete snapshots at index 0 (initial snapshot)
    function deleteSnapshot(uint256 snapshotIndex_) public onlyOwner {
        if (snapshotIndex_ >= snapshotIndex) revert SnapshotIndexOutOfBounds();
        if (snapshotIndex_ < 3) revert CannotDeleteInitialSnapshots();
        delete snapshots[snapshotIndex_];
        emit SnapshotDeleted(snapshotIndex_);
    }

    /// @notice Create a custom snapshot with specified balance changes
    /// @param timestamp The timestamp for the snapshot
    /// @param balanceChanges Array of balance changes for each address
    /// @param balanceChangeIndexes Array of indexes for balance changes
    function createCustomSnapshot(
        uint256 timestamp,
        uint256[] memory balanceChanges,
        uint256[] memory balanceChangeIndexes
    )
        public
        onlyOwner
    {
        if (balanceChanges.length != balanceChangeIndexes.length) revert MismatchedArrayLengths();
        BalanceSnapshot storage newSnapshot = snapshots[snapshotIndex];
        newSnapshot.snapshotTimestamp = timestamp;
        for (uint256 i = 0; i < balanceChanges.length; i++) {
            if (balanceChanges[i] != 0) {
                newSnapshot.balanceChanges[balanceChangeIndexes[i]] = balanceChanges[i];
            }
        }
        emit SnapshotTaken(snapshotIndex, timestamp);
        snapshotIndex++;
    }

    /// @notice Render metadata from an array of balances
    /// @param balances Array of balances to render metadata from
    /// @return Concatenated string of encoded balances
    /// @dev Encodes each balance as a 5-byte string, except for the last balance which is encoded as a 2-byte string
    function renderMetadataFromBalances(uint256[] memory balances) public pure returns (string memory) {
        string memory concatenatedString = "";

        for (uint256 i = 0; i < balances.length; i++) {
            uint256 balance256 = balances[i];
            uint40 balance = uint40(balance256);
            bytes memory balanceByte = abi.encodePacked(balance);
            string memory balanceString = string(balanceByte);
            if (i == balances.length - 1) {
                balanceString = LibString.slice(balanceString, 0, 2);
            }
            concatenatedString = string.concat(concatenatedString, balanceString);
        }

        return concatenatedString;
    }

    /// @notice Render metadata based on live balances of stored addresses
    /// @return Concatenated string of encoded balances
    function renderLiveMetadata() public view returns (string memory) {
        uint256 addressCount = addresses.length;
        uint256[] memory balances = new uint256[](addressCount);
        for (uint256 i = 0; i < addressCount; i++) {
            balances[i] = address(addresses[i]).balance;
        }
        return renderMetadataFromBalances(balances);
    }

    /// @notice Render metadata from a specific snapshot
    /// @param snapshotIndex_ Index of the snapshot to render metadata from
    /// @return Concatenated string of encoded balance changes from the specified snapshot
    function renderSnapshotMetadata(uint256 snapshotIndex_) public view returns (string memory) {
        if (snapshotIndex_ >= snapshotIndex) revert SnapshotIndexOutOfBounds();
        if (snapshots[snapshotIndex_].snapshotTimestamp == 0) revert SnapshotNotTaken();

        uint256[] memory balances = getSnapshotBalances(snapshotIndex_);

        return renderMetadataFromBalances(balances);
    }

    /// @notice Render metadata from the initial snapshot
    /// @return Concatenated string of encoded initial balances
    function renderInitialMetadata() public view returns (string memory) {
        uint256[] memory balances = new uint256[](981);
        for (uint256 i = 0; i < 981; i++) {
            balances[i] = initialBalances[i];
        }

        return renderMetadataFromBalances(balances);
    }

    /// @notice Set the index of the live snapshot
    /// @param _liveSnapshotIndex New index for the live snapshot
    /// @dev This function also sets showLiveData to false
    function setLiveSnapshotIndex(uint256 _liveSnapshotIndex) public onlyCollector {
        if (_liveSnapshotIndex >= snapshotIndex) revert SnapshotIndexOutOfBounds();
        if (snapshots[_liveSnapshotIndex].snapshotTimestamp == 0) revert SnapshotNotTaken();

        liveSnapshotIndex = _liveSnapshotIndex;
        showLiveData = false;
        emit LiveSnapshotIndexSet(_liveSnapshotIndex);
    }

    /// @notice Set the visibility of live data
    /// @param _showLiveData New visibility state for live data
    function setShowLiveData(bool _showLiveData) public onlyCollector {
        showLiveData = _showLiveData;
        emit ShowLiveDataSet(_showLiveData);
    }

    /// @notice Render metadata from the current live snapshot or live data
    /// @return Concatenated string of encoded balance changes from the live snapshot or live data
    function renderMetadata() public view returns (string memory) {
        if (showLiveData) {
            return renderLiveMetadata();
        } else {
            return renderSnapshotMetadata(liveSnapshotIndex);
        }
    }

    /// @notice Retrieve the balances from a specific snapshot
    /// @param snapshotIndex_ Index of the snapshot to retrieve balance changes from
    /// @return balances Array of balances from the specified snapshot
    function getSnapshotBalances(uint256 snapshotIndex_) public view returns (uint256[] memory balances) {
        if (snapshotIndex_ >= snapshotIndex) revert SnapshotIndexOutOfBounds();
        if (snapshots[snapshotIndex_].snapshotTimestamp == 0) revert SnapshotNotTaken();

        uint256 addressCount = addresses.length;
        balances = new uint256[](addressCount);
        for (uint256 i = 0; i < addressCount; i++) {
            if (snapshots[snapshotIndex_].balanceChanges[i] != 0) {
                balances[i] = initialBalances[i] + snapshots[snapshotIndex_].balanceChanges[i];
            } else {
                balances[i] = initialBalances[i];
            }
        }
    }

    /// @notice Get the deficit balance from the initial snapshot
    /// @return deficitBalance The total balance change since the initial snapshot
    function getDeficitBalanceFromTheInitialSnapshot() public view returns (uint256) {
        uint256 totalBalanceChange = 0;
        uint256 addressCount = addresses.length;
        for (uint256 i = 0; i < addressCount; i++) {
            address addr = addresses[i];
            totalBalanceChange += address(addr).balance - uint256(initialBalances[i]);
        }
        return totalBalanceChange;
    }
}

File 2 of 6 : Ownable.sol
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v4.9.0) (access/Ownable.sol)

pragma solidity ^0.8.0;

import "../utils/Context.sol";

/**
 * @dev Contract module which provides a basic access control mechanism, where
 * there is an account (an owner) that can be granted exclusive access to
 * specific functions.
 *
 * By default, the owner account will be the one that deploys the contract. This
 * can later be changed with {transferOwnership}.
 *
 * This module is used through inheritance. It will make available the modifier
 * `onlyOwner`, which can be applied to your functions to restrict their use to
 * the owner.
 */
abstract contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    /**
     * @dev Initializes the contract setting the deployer as the initial owner.
     */
    constructor() {
        _transferOwnership(_msgSender());
    }

    /**
     * @dev Throws if called by any account other than the owner.
     */
    modifier onlyOwner() {
        _checkOwner();
        _;
    }

    /**
     * @dev Returns the address of the current owner.
     */
    function owner() public view virtual returns (address) {
        return _owner;
    }

    /**
     * @dev Throws if the sender is not the owner.
     */
    function _checkOwner() internal view virtual {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
    }

    /**
     * @dev Leaves the contract without owner. It will not be possible to call
     * `onlyOwner` functions. Can only be called by the current owner.
     *
     * NOTE: Renouncing ownership will leave the contract without an owner,
     * thereby disabling any functionality that is only available to the owner.
     */
    function renounceOwnership() public virtual onlyOwner {
        _transferOwnership(address(0));
    }

    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     * Can only be called by the current owner.
     */
    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        _transferOwnership(newOwner);
    }

    /**
     * @dev Transfers ownership of the contract to a new account (`newOwner`).
     * Internal function without access restriction.
     */
    function _transferOwnership(address newOwner) internal virtual {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

File 3 of 6 : IERC1155.sol
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v4.9.0) (token/ERC1155/IERC1155.sol)

pragma solidity ^0.8.0;

import "../../utils/introspection/IERC165.sol";

/**
 * @dev Required interface of an ERC1155 compliant contract, as defined in the
 * https://eips.ethereum.org/EIPS/eip-1155[EIP].
 *
 * _Available since v3.1._
 */
interface IERC1155 is IERC165 {
    /**
     * @dev Emitted when `value` tokens of token type `id` are transferred from `from` to `to` by `operator`.
     */
    event TransferSingle(address indexed operator, address indexed from, address indexed to, uint256 id, uint256 value);

    /**
     * @dev Equivalent to multiple {TransferSingle} events, where `operator`, `from` and `to` are the same for all
     * transfers.
     */
    event TransferBatch(
        address indexed operator,
        address indexed from,
        address indexed to,
        uint256[] ids,
        uint256[] values
    );

    /**
     * @dev Emitted when `account` grants or revokes permission to `operator` to transfer their tokens, according to
     * `approved`.
     */
    event ApprovalForAll(address indexed account, address indexed operator, bool approved);

    /**
     * @dev Emitted when the URI for token type `id` changes to `value`, if it is a non-programmatic URI.
     *
     * If an {URI} event was emitted for `id`, the standard
     * https://eips.ethereum.org/EIPS/eip-1155#metadata-extensions[guarantees] that `value` will equal the value
     * returned by {IERC1155MetadataURI-uri}.
     */
    event URI(string value, uint256 indexed id);

    /**
     * @dev Returns the amount of tokens of token type `id` owned by `account`.
     *
     * Requirements:
     *
     * - `account` cannot be the zero address.
     */
    function balanceOf(address account, uint256 id) external view returns (uint256);

    /**
     * @dev xref:ROOT:erc1155.adoc#batch-operations[Batched] version of {balanceOf}.
     *
     * Requirements:
     *
     * - `accounts` and `ids` must have the same length.
     */
    function balanceOfBatch(
        address[] calldata accounts,
        uint256[] calldata ids
    ) external view returns (uint256[] memory);

    /**
     * @dev Grants or revokes permission to `operator` to transfer the caller's tokens, according to `approved`,
     *
     * Emits an {ApprovalForAll} event.
     *
     * Requirements:
     *
     * - `operator` cannot be the caller.
     */
    function setApprovalForAll(address operator, bool approved) external;

    /**
     * @dev Returns true if `operator` is approved to transfer ``account``'s tokens.
     *
     * See {setApprovalForAll}.
     */
    function isApprovedForAll(address account, address operator) external view returns (bool);

    /**
     * @dev Transfers `amount` tokens of token type `id` from `from` to `to`.
     *
     * Emits a {TransferSingle} event.
     *
     * Requirements:
     *
     * - `to` cannot be the zero address.
     * - If the caller is not `from`, it must have been approved to spend ``from``'s tokens via {setApprovalForAll}.
     * - `from` must have a balance of tokens of type `id` of at least `amount`.
     * - If `to` refers to a smart contract, it must implement {IERC1155Receiver-onERC1155Received} and return the
     * acceptance magic value.
     */
    function safeTransferFrom(address from, address to, uint256 id, uint256 amount, bytes calldata data) external;

    /**
     * @dev xref:ROOT:erc1155.adoc#batch-operations[Batched] version of {safeTransferFrom}.
     *
     * Emits a {TransferBatch} event.
     *
     * Requirements:
     *
     * - `ids` and `amounts` must have the same length.
     * - If `to` refers to a smart contract, it must implement {IERC1155Receiver-onERC1155BatchReceived} and return the
     * acceptance magic value.
     */
    function safeBatchTransferFrom(
        address from,
        address to,
        uint256[] calldata ids,
        uint256[] calldata amounts,
        bytes calldata data
    ) external;
}

File 4 of 6 : LibString.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.4;

/// @notice Library for converting numbers into strings and other string operations.
/// @author Solady (https://github.com/vectorized/solady/blob/main/src/utils/LibString.sol)
/// @author Modified from Solmate (https://github.com/transmissions11/solmate/blob/main/src/utils/LibString.sol)
///
/// @dev Note:
/// For performance and bytecode compactness, most of the string operations are restricted to
/// byte strings (7-bit ASCII), except where otherwise specified.
/// Usage of byte string operations on charsets with runes spanning two or more bytes
/// can lead to undefined behavior.
library LibString {
    /*´:°•.°+.*•´.*:˚.°*.˚•´.°:°•.°•.*•´.*:˚.°*.˚•´.°:°•.°+.*•´.*:*/
    /*                        CUSTOM ERRORS                       */
    /*.•°:°.´+˚.*°.˚:*.´•*.+°.•°:´*.´•*.•°.•°:°.´:•˚°.*°.˚:*.´+°.•*/

    /// @dev The length of the output is too small to contain all the hex digits.
    error HexLengthInsufficient();

    /// @dev The length of the string is more than 32 bytes.
    error TooBigForSmallString();

    /// @dev The input string must be a 7-bit ASCII.
    error StringNot7BitASCII();

    /*´:°•.°+.*•´.*:˚.°*.˚•´.°:°•.°•.*•´.*:˚.°*.˚•´.°:°•.°+.*•´.*:*/
    /*                         CONSTANTS                          */
    /*.•°:°.´+˚.*°.˚:*.´•*.+°.•°:´*.´•*.•°.•°:°.´:•˚°.*°.˚:*.´+°.•*/

    /// @dev The constant returned when the `search` is not found in the string.
    uint256 internal constant NOT_FOUND = type(uint256).max;

    /// @dev Lookup for '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'.
    uint128 internal constant ALPHANUMERIC_7_BIT_ASCII = 0x7fffffe07fffffe03ff000000000000;

    /// @dev Lookup for 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'.
    uint128 internal constant LETTERS_7_BIT_ASCII = 0x7fffffe07fffffe0000000000000000;

    /// @dev Lookup for 'abcdefghijklmnopqrstuvwxyz'.
    uint128 internal constant LOWERCASE_7_BIT_ASCII = 0x7fffffe000000000000000000000000;

    /// @dev Lookup for 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'.
    uint128 internal constant UPPERCASE_7_BIT_ASCII = 0x7fffffe0000000000000000;

    /// @dev Lookup for '0123456789'.
    uint128 internal constant DIGITS_7_BIT_ASCII = 0x3ff000000000000;

    /// @dev Lookup for '0123456789abcdefABCDEF'.
    uint128 internal constant HEXDIGITS_7_BIT_ASCII = 0x7e0000007e03ff000000000000;

    /// @dev Lookup for '01234567'.
    uint128 internal constant OCTDIGITS_7_BIT_ASCII = 0xff000000000000;

    /// @dev Lookup for '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~ \t\n\r\x0b\x0c'.
    uint128 internal constant PRINTABLE_7_BIT_ASCII = 0x7fffffffffffffffffffffff00003e00;

    /// @dev Lookup for '!"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~'.
    uint128 internal constant PUNCTUATION_7_BIT_ASCII = 0x78000001f8000001fc00fffe00000000;

    /// @dev Lookup for ' \t\n\r\x0b\x0c'.
    uint128 internal constant WHITESPACE_7_BIT_ASCII = 0x100003e00;

    /*´:°•.°+.*•´.*:˚.°*.˚•´.°:°•.°•.*•´.*:˚.°*.˚•´.°:°•.°+.*•´.*:*/
    /*                     DECIMAL OPERATIONS                     */
    /*.•°:°.´+˚.*°.˚:*.´•*.+°.•°:´*.´•*.•°.•°:°.´:•˚°.*°.˚:*.´+°.•*/

    /// @dev Returns the base 10 decimal representation of `value`.
    function toString(uint256 value) internal pure returns (string memory str) {
        /// @solidity memory-safe-assembly
        assembly {
            // The maximum value of a uint256 contains 78 digits (1 byte per digit), but
            // we allocate 0xa0 bytes to keep the free memory pointer 32-byte word aligned.
            // We will need 1 word for the trailing zeros padding, 1 word for the length,
            // and 3 words for a maximum of 78 digits.
            str := add(mload(0x40), 0x80)
            mstore(0x40, add(str, 0x20)) // Allocate the memory.
            mstore(str, 0) // Zeroize the slot after the string.

            let end := str // Cache the end of the memory to calculate the length later.
            let w := not(0) // Tsk.
            // We write the string from rightmost digit to leftmost digit.
            // The following is essentially a do-while loop that also handles the zero case.
            for { let temp := value } 1 {} {
                str := add(str, w) // `sub(str, 1)`.
                // Store the character to the pointer.
                // The ASCII index of the '0' character is 48.
                mstore8(str, add(48, mod(temp, 10)))
                temp := div(temp, 10) // Keep dividing `temp` until zero.
                if iszero(temp) { break }
            }
            let length := sub(end, str)
            str := sub(str, 0x20) // Move the pointer 32 bytes back to make room for the length.
            mstore(str, length) // Store the length.
        }
    }

    /// @dev Returns the base 10 decimal representation of `value`.
    function toString(int256 value) internal pure returns (string memory str) {
        if (value >= 0) return toString(uint256(value));
        unchecked {
            str = toString(~uint256(value) + 1);
        }
        /// @solidity memory-safe-assembly
        assembly {
            // We still have some spare memory space on the left,
            // as we have allocated 3 words (96 bytes) for up to 78 digits.
            let length := mload(str) // Load the string length.
            mstore(str, 0x2d) // Store the '-' character.
            str := sub(str, 1) // Move back the string pointer by a byte.
            mstore(str, add(length, 1)) // Update the string length.
        }
    }

    /*´:°•.°+.*•´.*:˚.°*.˚•´.°:°•.°•.*•´.*:˚.°*.˚•´.°:°•.°+.*•´.*:*/
    /*                   HEXADECIMAL OPERATIONS                   */
    /*.•°:°.´+˚.*°.˚:*.´•*.+°.•°:´*.´•*.•°.•°:°.´:•˚°.*°.˚:*.´+°.•*/

    /// @dev Returns the hexadecimal representation of `value`,
    /// left-padded to an input length of `length` bytes.
    /// The output is prefixed with "0x" encoded using 2 hexadecimal digits per byte,
    /// giving a total length of `length * 2 + 2` bytes.
    /// Reverts if `length` is too small for the output to contain all the digits.
    function toHexString(uint256 value, uint256 length) internal pure returns (string memory str) {
        str = toHexStringNoPrefix(value, length);
        /// @solidity memory-safe-assembly
        assembly {
            let strLength := add(mload(str), 2) // Compute the length.
            mstore(str, 0x3078) // Store the "0x" prefix.
            str := sub(str, 2) // Move the pointer.
            mstore(str, strLength) // Store the length.
        }
    }

    /// @dev Returns the hexadecimal representation of `value`,
    /// left-padded to an input length of `length` bytes.
    /// The output is prefixed with "0x" encoded using 2 hexadecimal digits per byte,
    /// giving a total length of `length * 2` bytes.
    /// Reverts if `length` is too small for the output to contain all the digits.
    function toHexStringNoPrefix(uint256 value, uint256 length)
        internal
        pure
        returns (string memory str)
    {
        /// @solidity memory-safe-assembly
        assembly {
            // We need 0x20 bytes for the trailing zeros padding, `length * 2` bytes
            // for the digits, 0x02 bytes for the prefix, and 0x20 bytes for the length.
            // We add 0x20 to the total and round down to a multiple of 0x20.
            // (0x20 + 0x20 + 0x02 + 0x20) = 0x62.
            str := add(mload(0x40), and(add(shl(1, length), 0x42), not(0x1f)))
            mstore(0x40, add(str, 0x20)) // Allocate the memory.
            mstore(str, 0) // Zeroize the slot after the string.

            let end := str // Cache the end to calculate the length later.
            // Store "0123456789abcdef" in scratch space.
            mstore(0x0f, 0x30313233343536373839616263646566)

            let start := sub(str, add(length, length))
            let w := not(1) // Tsk.
            let temp := value
            // We write the string from rightmost digit to leftmost digit.
            // The following is essentially a do-while loop that also handles the zero case.
            for {} 1 {} {
                str := add(str, w) // `sub(str, 2)`.
                mstore8(add(str, 1), mload(and(temp, 15)))
                mstore8(str, mload(and(shr(4, temp), 15)))
                temp := shr(8, temp)
                if iszero(xor(str, start)) { break }
            }
            if temp {
                mstore(0x00, 0x2194895a) // `HexLengthInsufficient()`.
                revert(0x1c, 0x04)
            }
            let strLength := sub(end, str)
            str := sub(str, 0x20)
            mstore(str, strLength) // Store the length.
        }
    }

    /// @dev Returns the hexadecimal representation of `value`.
    /// The output is prefixed with "0x" and encoded using 2 hexadecimal digits per byte.
    /// As address are 20 bytes long, the output will left-padded to have
    /// a length of `20 * 2 + 2` bytes.
    function toHexString(uint256 value) internal pure returns (string memory str) {
        str = toHexStringNoPrefix(value);
        /// @solidity memory-safe-assembly
        assembly {
            let strLength := add(mload(str), 2) // Compute the length.
            mstore(str, 0x3078) // Store the "0x" prefix.
            str := sub(str, 2) // Move the pointer.
            mstore(str, strLength) // Store the length.
        }
    }

    /// @dev Returns the hexadecimal representation of `value`.
    /// The output is prefixed with "0x".
    /// The output excludes leading "0" from the `toHexString` output.
    /// `0x00: "0x0", 0x01: "0x1", 0x12: "0x12", 0x123: "0x123"`.
    function toMinimalHexString(uint256 value) internal pure returns (string memory str) {
        str = toHexStringNoPrefix(value);
        /// @solidity memory-safe-assembly
        assembly {
            let o := eq(byte(0, mload(add(str, 0x20))), 0x30) // Whether leading zero is present.
            let strLength := add(mload(str), 2) // Compute the length.
            mstore(add(str, o), 0x3078) // Store the "0x" prefix, accounting for leading zero.
            str := sub(add(str, o), 2) // Move the pointer, accounting for leading zero.
            mstore(str, sub(strLength, o)) // Store the length, accounting for leading zero.
        }
    }

    /// @dev Returns the hexadecimal representation of `value`.
    /// The output excludes leading "0" from the `toHexStringNoPrefix` output.
    /// `0x00: "0", 0x01: "1", 0x12: "12", 0x123: "123"`.
    function toMinimalHexStringNoPrefix(uint256 value) internal pure returns (string memory str) {
        str = toHexStringNoPrefix(value);
        /// @solidity memory-safe-assembly
        assembly {
            let o := eq(byte(0, mload(add(str, 0x20))), 0x30) // Whether leading zero is present.
            let strLength := mload(str) // Get the length.
            str := add(str, o) // Move the pointer, accounting for leading zero.
            mstore(str, sub(strLength, o)) // Store the length, accounting for leading zero.
        }
    }

    /// @dev Returns the hexadecimal representation of `value`.
    /// The output is encoded using 2 hexadecimal digits per byte.
    /// As address are 20 bytes long, the output will left-padded to have
    /// a length of `20 * 2` bytes.
    function toHexStringNoPrefix(uint256 value) internal pure returns (string memory str) {
        /// @solidity memory-safe-assembly
        assembly {
            // We need 0x20 bytes for the trailing zeros padding, 0x20 bytes for the length,
            // 0x02 bytes for the prefix, and 0x40 bytes for the digits.
            // The next multiple of 0x20 above (0x20 + 0x20 + 0x02 + 0x40) is 0xa0.
            str := add(mload(0x40), 0x80)
            mstore(0x40, add(str, 0x20)) // Allocate the memory.
            mstore(str, 0) // Zeroize the slot after the string.

            let end := str // Cache the end to calculate the length later.
            mstore(0x0f, 0x30313233343536373839616263646566) // Store the "0123456789abcdef" lookup.

            let w := not(1) // Tsk.
            // We write the string from rightmost digit to leftmost digit.
            // The following is essentially a do-while loop that also handles the zero case.
            for { let temp := value } 1 {} {
                str := add(str, w) // `sub(str, 2)`.
                mstore8(add(str, 1), mload(and(temp, 15)))
                mstore8(str, mload(and(shr(4, temp), 15)))
                temp := shr(8, temp)
                if iszero(temp) { break }
            }
            let strLength := sub(end, str)
            str := sub(str, 0x20)
            mstore(str, strLength) // Store the length.
        }
    }

    /// @dev Returns the hexadecimal representation of `value`.
    /// The output is prefixed with "0x", encoded using 2 hexadecimal digits per byte,
    /// and the alphabets are capitalized conditionally according to
    /// https://eips.ethereum.org/EIPS/eip-55
    function toHexStringChecksummed(address value) internal pure returns (string memory str) {
        str = toHexString(value);
        /// @solidity memory-safe-assembly
        assembly {
            let mask := shl(6, div(not(0), 255)) // `0b010000000100000000 ...`
            let o := add(str, 0x22)
            let hashed := and(keccak256(o, 40), mul(34, mask)) // `0b10001000 ... `
            let t := shl(240, 136) // `0b10001000 << 240`
            for { let i := 0 } 1 {} {
                mstore(add(i, i), mul(t, byte(i, hashed)))
                i := add(i, 1)
                if eq(i, 20) { break }
            }
            mstore(o, xor(mload(o), shr(1, and(mload(0x00), and(mload(o), mask)))))
            o := add(o, 0x20)
            mstore(o, xor(mload(o), shr(1, and(mload(0x20), and(mload(o), mask)))))
        }
    }

    /// @dev Returns the hexadecimal representation of `value`.
    /// The output is prefixed with "0x" and encoded using 2 hexadecimal digits per byte.
    function toHexString(address value) internal pure returns (string memory str) {
        str = toHexStringNoPrefix(value);
        /// @solidity memory-safe-assembly
        assembly {
            let strLength := add(mload(str), 2) // Compute the length.
            mstore(str, 0x3078) // Store the "0x" prefix.
            str := sub(str, 2) // Move the pointer.
            mstore(str, strLength) // Store the length.
        }
    }

    /// @dev Returns the hexadecimal representation of `value`.
    /// The output is encoded using 2 hexadecimal digits per byte.
    function toHexStringNoPrefix(address value) internal pure returns (string memory str) {
        /// @solidity memory-safe-assembly
        assembly {
            str := mload(0x40)
            // Allocate the memory.
            // We need 0x20 bytes for the trailing zeros padding, 0x20 bytes for the length,
            // 0x02 bytes for the prefix, and 0x28 bytes for the digits.
            // The next multiple of 0x20 above (0x20 + 0x20 + 0x02 + 0x28) is 0x80.
            mstore(0x40, add(str, 0x80))
            mstore(0x0f, 0x30313233343536373839616263646566) // Store the "0123456789abcdef" lookup.

            str := add(str, 2)
            mstore(str, 40) // Store the length.
            let o := add(str, 0x20)
            mstore(add(o, 40), 0) // Zeroize the slot after the string.
            value := shl(96, value)
            // We write the string from rightmost digit to leftmost digit.
            // The following is essentially a do-while loop that also handles the zero case.
            for { let i := 0 } 1 {} {
                let p := add(o, add(i, i))
                let temp := byte(i, value)
                mstore8(add(p, 1), mload(and(temp, 15)))
                mstore8(p, mload(shr(4, temp)))
                i := add(i, 1)
                if eq(i, 20) { break }
            }
        }
    }

    /// @dev Returns the hex encoded string from the raw bytes.
    /// The output is encoded using 2 hexadecimal digits per byte.
    function toHexString(bytes memory raw) internal pure returns (string memory str) {
        str = toHexStringNoPrefix(raw);
        /// @solidity memory-safe-assembly
        assembly {
            let strLength := add(mload(str), 2) // Compute the length.
            mstore(str, 0x3078) // Store the "0x" prefix.
            str := sub(str, 2) // Move the pointer.
            mstore(str, strLength) // Store the length.
        }
    }

    /// @dev Returns the hex encoded string from the raw bytes.
    /// The output is encoded using 2 hexadecimal digits per byte.
    function toHexStringNoPrefix(bytes memory raw) internal pure returns (string memory str) {
        /// @solidity memory-safe-assembly
        assembly {
            let length := mload(raw)
            str := add(mload(0x40), 2) // Skip 2 bytes for the optional prefix.
            mstore(str, add(length, length)) // Store the length of the output.

            mstore(0x0f, 0x30313233343536373839616263646566) // Store the "0123456789abcdef" lookup.
            let o := add(str, 0x20)
            let end := add(raw, length)
            for {} iszero(eq(raw, end)) {} {
                raw := add(raw, 1)
                mstore8(add(o, 1), mload(and(mload(raw), 15)))
                mstore8(o, mload(and(shr(4, mload(raw)), 15)))
                o := add(o, 2)
            }
            mstore(o, 0) // Zeroize the slot after the string.
            mstore(0x40, add(o, 0x20)) // Allocate the memory.
        }
    }

    /*´:°•.°+.*•´.*:˚.°*.˚•´.°:°•.°•.*•´.*:˚.°*.˚•´.°:°•.°+.*•´.*:*/
    /*                   RUNE STRING OPERATIONS                   */
    /*.•°:°.´+˚.*°.˚:*.´•*.+°.•°:´*.´•*.•°.•°:°.´:•˚°.*°.˚:*.´+°.•*/

    /// @dev Returns the number of UTF characters in the string.
    function runeCount(string memory s) internal pure returns (uint256 result) {
        /// @solidity memory-safe-assembly
        assembly {
            if mload(s) {
                mstore(0x00, div(not(0), 255))
                mstore(0x20, 0x0202020202020202020202020202020202020202020202020303030304040506)
                let o := add(s, 0x20)
                let end := add(o, mload(s))
                for { result := 1 } 1 { result := add(result, 1) } {
                    o := add(o, byte(0, mload(shr(250, mload(o)))))
                    if iszero(lt(o, end)) { break }
                }
            }
        }
    }

    /// @dev Returns if this string is a 7-bit ASCII string.
    /// (i.e. all characters codes are in [0..127])
    function is7BitASCII(string memory s) internal pure returns (bool result) {
        /// @solidity memory-safe-assembly
        assembly {
            let mask := shl(7, div(not(0), 255))
            result := 1
            let n := mload(s)
            if n {
                let o := add(s, 0x20)
                let end := add(o, n)
                let last := mload(end)
                mstore(end, 0)
                for {} 1 {} {
                    if and(mask, mload(o)) {
                        result := 0
                        break
                    }
                    o := add(o, 0x20)
                    if iszero(lt(o, end)) { break }
                }
                mstore(end, last)
            }
        }
    }

    /// @dev Returns if this string is a 7-bit ASCII string,
    /// AND all characters are in the `allowed` lookup.
    /// Note: If `s` is empty, returns true regardless of `allowed`.
    function is7BitASCII(string memory s, uint128 allowed) internal pure returns (bool result) {
        /// @solidity memory-safe-assembly
        assembly {
            result := 1
            if mload(s) {
                let allowed_ := shr(128, shl(128, allowed))
                let o := add(s, 0x20)
                let end := add(o, mload(s))
                for {} 1 {} {
                    result := and(result, shr(byte(0, mload(o)), allowed_))
                    o := add(o, 1)
                    if iszero(and(result, lt(o, end))) { break }
                }
            }
        }
    }

    /// @dev Converts the bytes in the 7-bit ASCII string `s` to
    /// an allowed lookup for use in `is7BitASCII(s, allowed)`.
    /// To save runtime gas, you can cache the result in an immutable variable.
    function to7BitASCIIAllowedLookup(string memory s) internal pure returns (uint128 result) {
        /// @solidity memory-safe-assembly
        assembly {
            if mload(s) {
                let o := add(s, 0x20)
                let end := add(o, mload(s))
                for {} 1 {} {
                    result := or(result, shl(byte(0, mload(o)), 1))
                    o := add(o, 1)
                    if iszero(lt(o, end)) { break }
                }
                if shr(128, result) {
                    mstore(0x00, 0xc9807e0d) // `StringNot7BitASCII()`.
                    revert(0x1c, 0x04)
                }
            }
        }
    }

    /*´:°•.°+.*•´.*:˚.°*.˚•´.°:°•.°•.*•´.*:˚.°*.˚•´.°:°•.°+.*•´.*:*/
    /*                   BYTE STRING OPERATIONS                   */
    /*.•°:°.´+˚.*°.˚:*.´•*.+°.•°:´*.´•*.•°.•°:°.´:•˚°.*°.˚:*.´+°.•*/

    // For performance and bytecode compactness, byte string operations are restricted
    // to 7-bit ASCII strings. All offsets are byte offsets, not UTF character offsets.
    // Usage of byte string operations on charsets with runes spanning two or more bytes
    // can lead to undefined behavior.

    /// @dev Returns `subject` all occurrences of `search` replaced with `replacement`.
    function replace(string memory subject, string memory search, string memory replacement)
        internal
        pure
        returns (string memory result)
    {
        /// @solidity memory-safe-assembly
        assembly {
            let subjectLength := mload(subject)
            let searchLength := mload(search)
            let replacementLength := mload(replacement)

            subject := add(subject, 0x20)
            search := add(search, 0x20)
            replacement := add(replacement, 0x20)
            result := add(mload(0x40), 0x20)

            let subjectEnd := add(subject, subjectLength)
            if iszero(gt(searchLength, subjectLength)) {
                let subjectSearchEnd := add(sub(subjectEnd, searchLength), 1)
                let h := 0
                if iszero(lt(searchLength, 0x20)) { h := keccak256(search, searchLength) }
                let m := shl(3, sub(0x20, and(searchLength, 0x1f)))
                let s := mload(search)
                for {} 1 {} {
                    let t := mload(subject)
                    // Whether the first `searchLength % 32` bytes of
                    // `subject` and `search` matches.
                    if iszero(shr(m, xor(t, s))) {
                        if h {
                            if iszero(eq(keccak256(subject, searchLength), h)) {
                                mstore(result, t)
                                result := add(result, 1)
                                subject := add(subject, 1)
                                if iszero(lt(subject, subjectSearchEnd)) { break }
                                continue
                            }
                        }
                        // Copy the `replacement` one word at a time.
                        for { let o := 0 } 1 {} {
                            mstore(add(result, o), mload(add(replacement, o)))
                            o := add(o, 0x20)
                            if iszero(lt(o, replacementLength)) { break }
                        }
                        result := add(result, replacementLength)
                        subject := add(subject, searchLength)
                        if searchLength {
                            if iszero(lt(subject, subjectSearchEnd)) { break }
                            continue
                        }
                    }
                    mstore(result, t)
                    result := add(result, 1)
                    subject := add(subject, 1)
                    if iszero(lt(subject, subjectSearchEnd)) { break }
                }
            }

            let resultRemainder := result
            result := add(mload(0x40), 0x20)
            let k := add(sub(resultRemainder, result), sub(subjectEnd, subject))
            // Copy the rest of the string one word at a time.
            for {} lt(subject, subjectEnd) {} {
                mstore(resultRemainder, mload(subject))
                resultRemainder := add(resultRemainder, 0x20)
                subject := add(subject, 0x20)
            }
            result := sub(result, 0x20)
            let last := add(add(result, 0x20), k) // Zeroize the slot after the string.
            mstore(last, 0)
            mstore(0x40, add(last, 0x20)) // Allocate the memory.
            mstore(result, k) // Store the length.
        }
    }

    /// @dev Returns the byte index of the first location of `search` in `subject`,
    /// searching from left to right, starting from `from`.
    /// Returns `NOT_FOUND` (i.e. `type(uint256).max`) if the `search` is not found.
    function indexOf(string memory subject, string memory search, uint256 from)
        internal
        pure
        returns (uint256 result)
    {
        /// @solidity memory-safe-assembly
        assembly {
            for { let subjectLength := mload(subject) } 1 {} {
                if iszero(mload(search)) {
                    if iszero(gt(from, subjectLength)) {
                        result := from
                        break
                    }
                    result := subjectLength
                    break
                }
                let searchLength := mload(search)
                let subjectStart := add(subject, 0x20)

                result := not(0) // Initialize to `NOT_FOUND`.
                subject := add(subjectStart, from)
                let end := add(sub(add(subjectStart, subjectLength), searchLength), 1)

                let m := shl(3, sub(0x20, and(searchLength, 0x1f)))
                let s := mload(add(search, 0x20))

                if iszero(and(lt(subject, end), lt(from, subjectLength))) { break }

                if iszero(lt(searchLength, 0x20)) {
                    for { let h := keccak256(add(search, 0x20), searchLength) } 1 {} {
                        if iszero(shr(m, xor(mload(subject), s))) {
                            if eq(keccak256(subject, searchLength), h) {
                                result := sub(subject, subjectStart)
                                break
                            }
                        }
                        subject := add(subject, 1)
                        if iszero(lt(subject, end)) { break }
                    }
                    break
                }
                for {} 1 {} {
                    if iszero(shr(m, xor(mload(subject), s))) {
                        result := sub(subject, subjectStart)
                        break
                    }
                    subject := add(subject, 1)
                    if iszero(lt(subject, end)) { break }
                }
                break
            }
        }
    }

    /// @dev Returns the byte index of the first location of `search` in `subject`,
    /// searching from left to right.
    /// Returns `NOT_FOUND` (i.e. `type(uint256).max`) if the `search` is not found.
    function indexOf(string memory subject, string memory search)
        internal
        pure
        returns (uint256 result)
    {
        result = indexOf(subject, search, 0);
    }

    /// @dev Returns the byte index of the first location of `search` in `subject`,
    /// searching from right to left, starting from `from`.
    /// Returns `NOT_FOUND` (i.e. `type(uint256).max`) if the `search` is not found.
    function lastIndexOf(string memory subject, string memory search, uint256 from)
        internal
        pure
        returns (uint256 result)
    {
        /// @solidity memory-safe-assembly
        assembly {
            for {} 1 {} {
                result := not(0) // Initialize to `NOT_FOUND`.
                let searchLength := mload(search)
                if gt(searchLength, mload(subject)) { break }
                let w := result

                let fromMax := sub(mload(subject), searchLength)
                if iszero(gt(fromMax, from)) { from := fromMax }

                let end := add(add(subject, 0x20), w)
                subject := add(add(subject, 0x20), from)
                if iszero(gt(subject, end)) { break }
                // As this function is not too often used,
                // we shall simply use keccak256 for smaller bytecode size.
                for { let h := keccak256(add(search, 0x20), searchLength) } 1 {} {
                    if eq(keccak256(subject, searchLength), h) {
                        result := sub(subject, add(end, 1))
                        break
                    }
                    subject := add(subject, w) // `sub(subject, 1)`.
                    if iszero(gt(subject, end)) { break }
                }
                break
            }
        }
    }

    /// @dev Returns the byte index of the first location of `search` in `subject`,
    /// searching from right to left.
    /// Returns `NOT_FOUND` (i.e. `type(uint256).max`) if the `search` is not found.
    function lastIndexOf(string memory subject, string memory search)
        internal
        pure
        returns (uint256 result)
    {
        result = lastIndexOf(subject, search, uint256(int256(-1)));
    }

    /// @dev Returns true if `search` is found in `subject`, false otherwise.
    function contains(string memory subject, string memory search) internal pure returns (bool) {
        return indexOf(subject, search) != NOT_FOUND;
    }

    /// @dev Returns whether `subject` starts with `search`.
    function startsWith(string memory subject, string memory search)
        internal
        pure
        returns (bool result)
    {
        /// @solidity memory-safe-assembly
        assembly {
            let searchLength := mload(search)
            // Just using keccak256 directly is actually cheaper.
            // forgefmt: disable-next-item
            result := and(
                iszero(gt(searchLength, mload(subject))),
                eq(
                    keccak256(add(subject, 0x20), searchLength),
                    keccak256(add(search, 0x20), searchLength)
                )
            )
        }
    }

    /// @dev Returns whether `subject` ends with `search`.
    function endsWith(string memory subject, string memory search)
        internal
        pure
        returns (bool result)
    {
        /// @solidity memory-safe-assembly
        assembly {
            let searchLength := mload(search)
            let subjectLength := mload(subject)
            // Whether `search` is not longer than `subject`.
            let withinRange := iszero(gt(searchLength, subjectLength))
            // Just using keccak256 directly is actually cheaper.
            // forgefmt: disable-next-item
            result := and(
                withinRange,
                eq(
                    keccak256(
                        // `subject + 0x20 + max(subjectLength - searchLength, 0)`.
                        add(add(subject, 0x20), mul(withinRange, sub(subjectLength, searchLength))),
                        searchLength
                    ),
                    keccak256(add(search, 0x20), searchLength)
                )
            )
        }
    }

    /// @dev Returns `subject` repeated `times`.
    function repeat(string memory subject, uint256 times)
        internal
        pure
        returns (string memory result)
    {
        /// @solidity memory-safe-assembly
        assembly {
            let subjectLength := mload(subject)
            if iszero(or(iszero(times), iszero(subjectLength))) {
                subject := add(subject, 0x20)
                result := mload(0x40)
                let output := add(result, 0x20)
                for {} 1 {} {
                    // Copy the `subject` one word at a time.
                    for { let o := 0 } 1 {} {
                        mstore(add(output, o), mload(add(subject, o)))
                        o := add(o, 0x20)
                        if iszero(lt(o, subjectLength)) { break }
                    }
                    output := add(output, subjectLength)
                    times := sub(times, 1)
                    if iszero(times) { break }
                }
                mstore(output, 0) // Zeroize the slot after the string.
                let resultLength := sub(output, add(result, 0x20))
                mstore(result, resultLength) // Store the length.
                mstore(0x40, add(result, add(resultLength, 0x40))) // Allocate the memory.
            }
        }
    }

    /// @dev Returns a copy of `subject` sliced from `start` to `end` (exclusive).
    /// `start` and `end` are byte offsets.
    function slice(string memory subject, uint256 start, uint256 end)
        internal
        pure
        returns (string memory result)
    {
        /// @solidity memory-safe-assembly
        assembly {
            let subjectLength := mload(subject)
            if iszero(gt(subjectLength, end)) { end := subjectLength }
            if iszero(gt(subjectLength, start)) { start := subjectLength }
            if lt(start, end) {
                result := mload(0x40)
                let resultLength := sub(end, start)
                mstore(result, resultLength)
                subject := add(subject, start)
                let w := not(0x1f)
                // Copy the `subject` one word at a time, backwards.
                for { let o := and(add(resultLength, 0x1f), w) } 1 {} {
                    mstore(add(result, o), mload(add(subject, o)))
                    o := add(o, w) // `sub(o, 0x20)`.
                    if iszero(o) { break }
                }
                // Zeroize the slot after the string.
                mstore(add(add(result, 0x20), resultLength), 0)
                mstore(0x40, add(result, add(resultLength, 0x40))) // Allocate the memory.
            }
        }
    }

    /// @dev Returns a copy of `subject` sliced from `start` to the end of the string.
    /// `start` is a byte offset.
    function slice(string memory subject, uint256 start)
        internal
        pure
        returns (string memory result)
    {
        result = slice(subject, start, uint256(int256(-1)));
    }

    /// @dev Returns all the indices of `search` in `subject`.
    /// The indices are byte offsets.
    function indicesOf(string memory subject, string memory search)
        internal
        pure
        returns (uint256[] memory result)
    {
        /// @solidity memory-safe-assembly
        assembly {
            let subjectLength := mload(subject)
            let searchLength := mload(search)

            if iszero(gt(searchLength, subjectLength)) {
                subject := add(subject, 0x20)
                search := add(search, 0x20)
                result := add(mload(0x40), 0x20)

                let subjectStart := subject
                let subjectSearchEnd := add(sub(add(subject, subjectLength), searchLength), 1)
                let h := 0
                if iszero(lt(searchLength, 0x20)) { h := keccak256(search, searchLength) }
                let m := shl(3, sub(0x20, and(searchLength, 0x1f)))
                let s := mload(search)
                for {} 1 {} {
                    let t := mload(subject)
                    // Whether the first `searchLength % 32` bytes of
                    // `subject` and `search` matches.
                    if iszero(shr(m, xor(t, s))) {
                        if h {
                            if iszero(eq(keccak256(subject, searchLength), h)) {
                                subject := add(subject, 1)
                                if iszero(lt(subject, subjectSearchEnd)) { break }
                                continue
                            }
                        }
                        // Append to `result`.
                        mstore(result, sub(subject, subjectStart))
                        result := add(result, 0x20)
                        // Advance `subject` by `searchLength`.
                        subject := add(subject, searchLength)
                        if searchLength {
                            if iszero(lt(subject, subjectSearchEnd)) { break }
                            continue
                        }
                    }
                    subject := add(subject, 1)
                    if iszero(lt(subject, subjectSearchEnd)) { break }
                }
                let resultEnd := result
                // Assign `result` to the free memory pointer.
                result := mload(0x40)
                // Store the length of `result`.
                mstore(result, shr(5, sub(resultEnd, add(result, 0x20))))
                // Allocate memory for result.
                // We allocate one more word, so this array can be recycled for {split}.
                mstore(0x40, add(resultEnd, 0x20))
            }
        }
    }

    /// @dev Returns a arrays of strings based on the `delimiter` inside of the `subject` string.
    function split(string memory subject, string memory delimiter)
        internal
        pure
        returns (string[] memory result)
    {
        uint256[] memory indices = indicesOf(subject, delimiter);
        /// @solidity memory-safe-assembly
        assembly {
            let w := not(0x1f)
            let indexPtr := add(indices, 0x20)
            let indicesEnd := add(indexPtr, shl(5, add(mload(indices), 1)))
            mstore(add(indicesEnd, w), mload(subject))
            mstore(indices, add(mload(indices), 1))
            let prevIndex := 0
            for {} 1 {} {
                let index := mload(indexPtr)
                mstore(indexPtr, 0x60)
                if iszero(eq(index, prevIndex)) {
                    let element := mload(0x40)
                    let elementLength := sub(index, prevIndex)
                    mstore(element, elementLength)
                    // Copy the `subject` one word at a time, backwards.
                    for { let o := and(add(elementLength, 0x1f), w) } 1 {} {
                        mstore(add(element, o), mload(add(add(subject, prevIndex), o)))
                        o := add(o, w) // `sub(o, 0x20)`.
                        if iszero(o) { break }
                    }
                    // Zeroize the slot after the string.
                    mstore(add(add(element, 0x20), elementLength), 0)
                    // Allocate memory for the length and the bytes,
                    // rounded up to a multiple of 32.
                    mstore(0x40, add(element, and(add(elementLength, 0x3f), w)))
                    // Store the `element` into the array.
                    mstore(indexPtr, element)
                }
                prevIndex := add(index, mload(delimiter))
                indexPtr := add(indexPtr, 0x20)
                if iszero(lt(indexPtr, indicesEnd)) { break }
            }
            result := indices
            if iszero(mload(delimiter)) {
                result := add(indices, 0x20)
                mstore(result, sub(mload(indices), 2))
            }
        }
    }

    /// @dev Returns a concatenated string of `a` and `b`.
    /// Cheaper than `string.concat()` and does not de-align the free memory pointer.
    function concat(string memory a, string memory b)
        internal
        pure
        returns (string memory result)
    {
        /// @solidity memory-safe-assembly
        assembly {
            let w := not(0x1f)
            result := mload(0x40)
            let aLength := mload(a)
            // Copy `a` one word at a time, backwards.
            for { let o := and(add(aLength, 0x20), w) } 1 {} {
                mstore(add(result, o), mload(add(a, o)))
                o := add(o, w) // `sub(o, 0x20)`.
                if iszero(o) { break }
            }
            let bLength := mload(b)
            let output := add(result, aLength)
            // Copy `b` one word at a time, backwards.
            for { let o := and(add(bLength, 0x20), w) } 1 {} {
                mstore(add(output, o), mload(add(b, o)))
                o := add(o, w) // `sub(o, 0x20)`.
                if iszero(o) { break }
            }
            let totalLength := add(aLength, bLength)
            let last := add(add(result, 0x20), totalLength)
            mstore(last, 0) // Zeroize the slot after the string.
            mstore(result, totalLength) // Store the length.
            mstore(0x40, add(last, 0x20)) // Allocate the memory.
        }
    }

    /// @dev Returns a copy of the string in either lowercase or UPPERCASE.
    /// WARNING! This function is only compatible with 7-bit ASCII strings.
    function toCase(string memory subject, bool toUpper)
        internal
        pure
        returns (string memory result)
    {
        /// @solidity memory-safe-assembly
        assembly {
            let length := mload(subject)
            if length {
                result := add(mload(0x40), 0x20)
                subject := add(subject, 1)
                let flags := shl(add(70, shl(5, toUpper)), 0x3ffffff)
                let w := not(0)
                for { let o := length } 1 {} {
                    o := add(o, w)
                    let b := and(0xff, mload(add(subject, o)))
                    mstore8(add(result, o), xor(b, and(shr(b, flags), 0x20)))
                    if iszero(o) { break }
                }
                result := mload(0x40)
                mstore(result, length) // Store the length.
                let last := add(add(result, 0x20), length)
                mstore(last, 0) // Zeroize the slot after the string.
                mstore(0x40, add(last, 0x20)) // Allocate the memory.
            }
        }
    }

    /// @dev Returns a string from a small bytes32 string.
    /// `s` must be null-terminated, or behavior will be undefined.
    function fromSmallString(bytes32 s) internal pure returns (string memory result) {
        /// @solidity memory-safe-assembly
        assembly {
            result := mload(0x40)
            let n := 0
            for {} byte(n, s) { n := add(n, 1) } {} // Scan for '\0'.
            mstore(result, n) // Store the length.
            let o := add(result, 0x20)
            mstore(o, s) // Store the bytes of the string.
            mstore(add(o, n), 0) // Zeroize the slot after the string.
            mstore(0x40, add(result, 0x40)) // Allocate the memory.
        }
    }

    /// @dev Returns the small string, with all bytes after the first null byte zeroized.
    function normalizeSmallString(bytes32 s) internal pure returns (bytes32 result) {
        /// @solidity memory-safe-assembly
        assembly {
            for {} byte(result, s) { result := add(result, 1) } {} // Scan for '\0'.
            mstore(0x00, s)
            mstore(result, 0x00)
            result := mload(0x00)
        }
    }

    /// @dev Returns the string as a normalized null-terminated small string.
    function toSmallString(string memory s) internal pure returns (bytes32 result) {
        /// @solidity memory-safe-assembly
        assembly {
            result := mload(s)
            if iszero(lt(result, 33)) {
                mstore(0x00, 0xec92f9a3) // `TooBigForSmallString()`.
                revert(0x1c, 0x04)
            }
            result := shl(shl(3, sub(32, result)), mload(add(s, result)))
        }
    }

    /// @dev Returns a lowercased copy of the string.
    /// WARNING! This function is only compatible with 7-bit ASCII strings.
    function lower(string memory subject) internal pure returns (string memory result) {
        result = toCase(subject, false);
    }

    /// @dev Returns an UPPERCASED copy of the string.
    /// WARNING! This function is only compatible with 7-bit ASCII strings.
    function upper(string memory subject) internal pure returns (string memory result) {
        result = toCase(subject, true);
    }

    /// @dev Escapes the string to be used within HTML tags.
    function escapeHTML(string memory s) internal pure returns (string memory result) {
        /// @solidity memory-safe-assembly
        assembly {
            let end := add(s, mload(s))
            result := add(mload(0x40), 0x20)
            // Store the bytes of the packed offsets and strides into the scratch space.
            // `packed = (stride << 5) | offset`. Max offset is 20. Max stride is 6.
            mstore(0x1f, 0x900094)
            mstore(0x08, 0xc0000000a6ab)
            // Store "&quot;&amp;&#39;&lt;&gt;" into the scratch space.
            mstore(0x00, shl(64, 0x2671756f743b26616d703b262333393b266c743b2667743b))
            for {} iszero(eq(s, end)) {} {
                s := add(s, 1)
                let c := and(mload(s), 0xff)
                // Not in `["\"","'","&","<",">"]`.
                if iszero(and(shl(c, 1), 0x500000c400000000)) {
                    mstore8(result, c)
                    result := add(result, 1)
                    continue
                }
                let t := shr(248, mload(c))
                mstore(result, mload(and(t, 0x1f)))
                result := add(result, shr(5, t))
            }
            let last := result
            mstore(last, 0) // Zeroize the slot after the string.
            result := mload(0x40)
            mstore(result, sub(last, add(result, 0x20))) // Store the length.
            mstore(0x40, add(last, 0x20)) // Allocate the memory.
        }
    }

    /// @dev Escapes the string to be used within double-quotes in a JSON.
    /// If `addDoubleQuotes` is true, the result will be enclosed in double-quotes.
    function escapeJSON(string memory s, bool addDoubleQuotes)
        internal
        pure
        returns (string memory result)
    {
        /// @solidity memory-safe-assembly
        assembly {
            let end := add(s, mload(s))
            result := add(mload(0x40), 0x20)
            if addDoubleQuotes {
                mstore8(result, 34)
                result := add(1, result)
            }
            // Store "\\u0000" in scratch space.
            // Store "0123456789abcdef" in scratch space.
            // Also, store `{0x08:"b", 0x09:"t", 0x0a:"n", 0x0c:"f", 0x0d:"r"}`.
            // into the scratch space.
            mstore(0x15, 0x5c75303030303031323334353637383961626364656662746e006672)
            // Bitmask for detecting `["\"","\\"]`.
            let e := or(shl(0x22, 1), shl(0x5c, 1))
            for {} iszero(eq(s, end)) {} {
                s := add(s, 1)
                let c := and(mload(s), 0xff)
                if iszero(lt(c, 0x20)) {
                    if iszero(and(shl(c, 1), e)) {
                        // Not in `["\"","\\"]`.
                        mstore8(result, c)
                        result := add(result, 1)
                        continue
                    }
                    mstore8(result, 0x5c) // "\\".
                    mstore8(add(result, 1), c)
                    result := add(result, 2)
                    continue
                }
                if iszero(and(shl(c, 1), 0x3700)) {
                    // Not in `["\b","\t","\n","\f","\d"]`.
                    mstore8(0x1d, mload(shr(4, c))) // Hex value.
                    mstore8(0x1e, mload(and(c, 15))) // Hex value.
                    mstore(result, mload(0x19)) // "\\u00XX".
                    result := add(result, 6)
                    continue
                }
                mstore8(result, 0x5c) // "\\".
                mstore8(add(result, 1), mload(add(c, 8)))
                result := add(result, 2)
            }
            if addDoubleQuotes {
                mstore8(result, 34)
                result := add(1, result)
            }
            let last := result
            mstore(last, 0) // Zeroize the slot after the string.
            result := mload(0x40)
            mstore(result, sub(last, add(result, 0x20))) // Store the length.
            mstore(0x40, add(last, 0x20)) // Allocate the memory.
        }
    }

    /// @dev Escapes the string to be used within double-quotes in a JSON.
    function escapeJSON(string memory s) internal pure returns (string memory result) {
        result = escapeJSON(s, false);
    }

    /// @dev Returns whether `a` equals `b`.
    function eq(string memory a, string memory b) internal pure returns (bool result) {
        /// @solidity memory-safe-assembly
        assembly {
            result := eq(keccak256(add(a, 0x20), mload(a)), keccak256(add(b, 0x20), mload(b)))
        }
    }

    /// @dev Returns whether `a` equals `b`, where `b` is a null-terminated small string.
    function eqs(string memory a, bytes32 b) internal pure returns (bool result) {
        /// @solidity memory-safe-assembly
        assembly {
            // These should be evaluated on compile time, as far as possible.
            let m := not(shl(7, div(not(iszero(b)), 255))) // `0x7f7f ...`.
            let x := not(or(m, or(b, add(m, and(b, m)))))
            let r := shl(7, iszero(iszero(shr(128, x))))
            r := or(r, shl(6, iszero(iszero(shr(64, shr(r, x))))))
            r := or(r, shl(5, lt(0xffffffff, shr(r, x))))
            r := or(r, shl(4, lt(0xffff, shr(r, x))))
            r := or(r, shl(3, lt(0xff, shr(r, x))))
            // forgefmt: disable-next-item
            result := gt(eq(mload(a), add(iszero(x), xor(31, shr(3, r)))),
                xor(shr(add(8, r), b), shr(add(8, r), mload(add(a, 0x20)))))
        }
    }

    /// @dev Packs a single string with its length into a single word.
    /// Returns `bytes32(0)` if the length is zero or greater than 31.
    function packOne(string memory a) internal pure returns (bytes32 result) {
        /// @solidity memory-safe-assembly
        assembly {
            // We don't need to zero right pad the string,
            // since this is our own custom non-standard packing scheme.
            result :=
                mul(
                    // Load the length and the bytes.
                    mload(add(a, 0x1f)),
                    // `length != 0 && length < 32`. Abuses underflow.
                    // Assumes that the length is valid and within the block gas limit.
                    lt(sub(mload(a), 1), 0x1f)
                )
        }
    }

    /// @dev Unpacks a string packed using {packOne}.
    /// Returns the empty string if `packed` is `bytes32(0)`.
    /// If `packed` is not an output of {packOne}, the output behavior is undefined.
    function unpackOne(bytes32 packed) internal pure returns (string memory result) {
        /// @solidity memory-safe-assembly
        assembly {
            result := mload(0x40) // Grab the free memory pointer.
            mstore(0x40, add(result, 0x40)) // Allocate 2 words (1 for the length, 1 for the bytes).
            mstore(result, 0) // Zeroize the length slot.
            mstore(add(result, 0x1f), packed) // Store the length and bytes.
            mstore(add(add(result, 0x20), mload(result)), 0) // Right pad with zeroes.
        }
    }

    /// @dev Packs two strings with their lengths into a single word.
    /// Returns `bytes32(0)` if combined length is zero or greater than 30.
    function packTwo(string memory a, string memory b) internal pure returns (bytes32 result) {
        /// @solidity memory-safe-assembly
        assembly {
            let aLength := mload(a)
            // We don't need to zero right pad the strings,
            // since this is our own custom non-standard packing scheme.
            result :=
                mul(
                    or( // Load the length and the bytes of `a` and `b`.
                        shl(shl(3, sub(0x1f, aLength)), mload(add(a, aLength))),
                        mload(sub(add(b, 0x1e), aLength))
                    ),
                    // `totalLength != 0 && totalLength < 31`. Abuses underflow.
                    // Assumes that the lengths are valid and within the block gas limit.
                    lt(sub(add(aLength, mload(b)), 1), 0x1e)
                )
        }
    }

    /// @dev Unpacks strings packed using {packTwo}.
    /// Returns the empty strings if `packed` is `bytes32(0)`.
    /// If `packed` is not an output of {packTwo}, the output behavior is undefined.
    function unpackTwo(bytes32 packed)
        internal
        pure
        returns (string memory resultA, string memory resultB)
    {
        /// @solidity memory-safe-assembly
        assembly {
            resultA := mload(0x40) // Grab the free memory pointer.
            resultB := add(resultA, 0x40)
            // Allocate 2 words for each string (1 for the length, 1 for the byte). Total 4 words.
            mstore(0x40, add(resultB, 0x40))
            // Zeroize the length slots.
            mstore(resultA, 0)
            mstore(resultB, 0)
            // Store the lengths and bytes.
            mstore(add(resultA, 0x1f), packed)
            mstore(add(resultB, 0x1f), mload(add(add(resultA, 0x20), mload(resultA))))
            // Right pad with zeroes.
            mstore(add(add(resultA, 0x20), mload(resultA)), 0)
            mstore(add(add(resultB, 0x20), mload(resultB)), 0)
        }
    }

    /// @dev Directly returns `a` without copying.
    function directReturn(string memory a) internal pure {
        assembly {
            // Assumes that the string does not start from the scratch space.
            let retStart := sub(a, 0x20)
            let retUnpaddedSize := add(mload(a), 0x40)
            // Right pad with zeroes. Just in case the string is produced
            // by a method that doesn't zero right pad.
            mstore(add(retStart, retUnpaddedSize), 0)
            mstore(retStart, 0x20) // Store the return offset.
            // End the transaction, returning the string.
            return(retStart, and(not(0x1f), add(0x1f, retUnpaddedSize)))
        }
    }
}

File 5 of 6 : Context.sol
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v4.9.4) (utils/Context.sol)

pragma solidity ^0.8.0;

/**
 * @dev Provides information about the current execution context, including the
 * sender of the transaction and its data. While these are generally available
 * via msg.sender and msg.data, they should not be accessed in such a direct
 * manner, since when dealing with meta-transactions the account sending and
 * paying for execution may not be the actual sender (as far as an application
 * is concerned).
 *
 * This contract is only required for intermediate, library-like contracts.
 */
abstract contract Context {
    function _msgSender() internal view virtual returns (address) {
        return msg.sender;
    }

    function _msgData() internal view virtual returns (bytes calldata) {
        return msg.data;
    }

    function _contextSuffixLength() internal view virtual returns (uint256) {
        return 0;
    }
}

File 6 of 6 : IERC165.sol
// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts v4.4.1 (utils/introspection/IERC165.sol)

pragma solidity ^0.8.0;

/**
 * @dev Interface of the ERC165 standard, as defined in the
 * https://eips.ethereum.org/EIPS/eip-165[EIP].
 *
 * Implementers can declare support of contract interfaces, which can then be
 * queried by others ({ERC165Checker}).
 *
 * For an implementation, see {ERC165}.
 */
interface IERC165 {
    /**
     * @dev Returns true if this contract implements the interface defined by
     * `interfaceId`. See the corresponding
     * https://eips.ethereum.org/EIPS/eip-165#how-interfaces-are-identified[EIP section]
     * to learn more about how these ids are created.
     *
     * This function call must use less than 30 000 gas.
     */
    function supportsInterface(bytes4 interfaceId) external view returns (bool);
}

Settings
{
  "remappings": [
    "@openzeppelin/contracts/=node_modules/@openzeppelin/contracts/",
    "@openzeppelin/contracts-upgradeable/=node_modules/@openzeppelin/contracts-upgradeable/",
    "forge-std/=node_modules/forge-std/",
    "solady/=node_modules/solady/src/",
    "@manifoldxyz/=node_modules/@manifoldxyz/",
    "@ensdomains/=node_modules/@ensdomains/"
  ],
  "optimizer": {
    "enabled": true,
    "runs": 10000
  },
  "metadata": {
    "useLiteralContent": false,
    "bytecodeHash": "none",
    "appendCBOR": true
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "evmVersion": "shanghai",
  "viaIR": false,
  "libraries": {}
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_rothkoOnPennies","type":"address"},{"internalType":"address[]","name":"partialAddresses","type":"address[]"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"CannotDeleteInitialSnapshots","type":"error"},{"inputs":[],"name":"InvalidAddressArrayLength","type":"error"},{"inputs":[],"name":"InvalidInitialBalancesArrayLength","type":"error"},{"inputs":[],"name":"MismatchedArrayLengths","type":"error"},{"inputs":[],"name":"NotCollector","type":"error"},{"inputs":[],"name":"SnapshotIndexOutOfBounds","type":"error"},{"inputs":[],"name":"SnapshotNotTaken","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"liveSnapshotIndex","type":"uint256"}],"name":"LiveSnapshotIndexSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"showLiveData","type":"bool"}],"name":"ShowLiveDataSet","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"snapshotIndex","type":"uint256"}],"name":"SnapshotDeleted","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"snapshotIndex","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"SnapshotTaken","type":"event"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"addresses","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"timestamp","type":"uint256"},{"internalType":"uint256[]","name":"balanceChanges","type":"uint256[]"},{"internalType":"uint256[]","name":"balanceChangeIndexes","type":"uint256[]"}],"name":"createCustomSnapshot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"snapshotIndex_","type":"uint256"}],"name":"deleteSnapshot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getDeficitBalanceFromTheInitialSnapshot","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"snapshotIndex_","type":"uint256"}],"name":"getSnapshotBalances","outputs":[{"internalType":"uint256[]","name":"balances","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"initialBalances","outputs":[{"internalType":"uint40","name":"","type":"uint40"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint40[981]","name":"_initialBalances","type":"uint40[981]"}],"name":"initializeBalances","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"_addresses","type":"address[]"},{"internalType":"uint256","name":"startIndex","type":"uint256"}],"name":"initializeRemainingAddresses","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"addr","type":"address"}],"name":"isCollector","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isCollector","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"liveSnapshotIndex","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renderInitialMetadata","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renderLiveMetadata","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renderMetadata","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256[]","name":"balances","type":"uint256[]"}],"name":"renderMetadataFromBalances","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"uint256","name":"snapshotIndex_","type":"uint256"}],"name":"renderSnapshotMetadata","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"rothkoOnPennies","outputs":[{"internalType":"contract IERC1155","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[981]","name":"_addresses","type":"address[981]"}],"name":"setAddresses","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint40[981]","name":"_initialBalances","type":"uint40[981]"}],"name":"setInitialBalances","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_liveSnapshotIndex","type":"uint256"}],"name":"setLiveSnapshotIndex","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_showLiveData","type":"bool"}],"name":"setShowLiveData","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"showLiveData","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"snapshotIndex","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"snapshots","outputs":[{"internalType":"uint256","name":"snapshotTimestamp","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"takeSnapshot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60a060405261047d805460ff1916600117905534801561001d575f80fd5b50604051611b5d380380611b5d83398101604081905261003c9161013a565b610045336100bc565b6001600160a01b03821660805280515f5b818110156100b3578281815181106100705761007061020e565b602002602001015160a7826103d5811061008c5761008c61020e565b0180546001600160a01b0319166001600160a01b0392909216919091179055600101610056565b50505050610222565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b80516001600160a01b0381168114610121575f80fd5b919050565b634e487b7160e01b5f52604160045260245ffd5b5f806040838503121561014b575f80fd5b6101548361010b565b602084810151919350906001600160401b0380821115610172575f80fd5b818601915086601f830112610185575f80fd5b81518181111561019757610197610126565b8060051b604051601f19603f830116810181811085821117156101bc576101bc610126565b6040529182528482019250838101850191898311156101d9575f80fd5b938501935b828510156101fe576101ef8561010b565b845293850193928501926101de565b8096505050505050509250929050565b634e487b7160e01b5f52603260045260245ffd5b60805161191c6102415f395f81816102f20152610794015261191c5ff3fe608060405234801561000f575f80fd5b50600436106101bb575f3560e01c806396fe6bf3116100f3578063cd970edc11610093578063e124173f1161006e578063e124173f146103be578063edf26d9b146103c6578063f2fde38b146103d9578063fb289354146103ec575f80fd5b8063cd970edc14610380578063d55488ee14610388578063d6565a2d1461039b575f80fd5b8063a1c922ee116100ce578063a1c922ee14610355578063a63685571461035d578063a73125a514610370578063b3d3d37e14610378575f80fd5b806396fe6bf314610327578063996766f01461033a5780639aa1b67014610342575f80fd5b80633d7821e11161015e578063715018a611610139578063715018a6146102a75780638da5cb5b146102af578063959c5226146102ed57806396d0d37414610314575f80fd5b80633d7821e1146102615780633df32c6d146102745780636212980414610294575f80fd5b8063269703e511610199578063269703e51461021957806330d2a1981461022357806332f6f96c146102435780633687d90514610261575f80fd5b806306bc7db8146101bf5780630bcc0b9b146101d4578063234feaf214610202575b5f80fd5b6101d26101cd3660046113f2565b6103ff565b005b6101e76101e2366004611466565b6104a9565b60405164ffffffffff90911681526020015b60405180910390f35b61020b60025481565b6040519081526020016101f9565b61020b61047c5481565b610236610231366004611466565b6104da565b6040516101f9919061147d565b61047d546102519060ff1681565b60405190151581526020016101f9565b6101d261026f366004611517565b610689565b610287610282366004611466565b6106a3565b6040516101f991906115a8565b6102516102a2366004611620565b610745565b6101d2610803565b5f5473ffffffffffffffffffffffffffffffffffffffff165b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101f9565b6102c87f000000000000000000000000000000000000000000000000000000000000000081565b6101d2610322366004611639565b610816565b610287610335366004611711565b6108bb565b6102876109aa565b6101d261035036600461174b565b610a4c565b610287610a62565b6101d261036b366004611466565b610afe565b61020b610bbf565b6101d2610c6c565b610287610df0565b6101d2610396366004611466565b610e18565b61020b6103a9366004611466565b600160208190525f9182526040909120015481565b610251610f39565b6102c86103d4366004611466565b610f43565b6101d26103e7366004611620565b610f70565b6101d26103fa3660046117a5565b61102c565b61040761115b565b815f5b818110156104a2578484828181106104245761042461180d565b90506020020160208101906104399190611620565b60a76104458386611867565b6103d581106104565761045661180d565b0180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff9290921691909117905560010161040a565b5050505050565b6003816103d581106104b9575f80fd5b60069182820401919006600502915054906101000a900464ffffffffff1681565b60606002548210610517576040517fefe6357f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f828152600160208190526040822001549003610560576040517fcb85efac00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b604080516103d5808252617ac082019092528160208201617aa0803683370190505091505f5b81811015610682575f84815260016020908152604080832084845290915290205415610623575f8481526001602090815260408083208484529091529020546003826103d581106105d9576105d961180d565b600680820490920154610600939264ffffffffff600591909306026101000a900416611867565b8382815181106106125761061261180d565b60200260200101818152505061067a565b6003816103d581106106375761063761180d565b600691828204019190066005029054906101000a900464ffffffffff1664ffffffffff1683828151811061066d5761066d61180d565b6020026020010181815250505b600101610586565b5050919050565b61069161115b565b61069f6003826103d56112d2565b5050565b606060025482106106e0576040517fefe6357f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f828152600160208190526040822001549003610729576040517fcb85efac00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f610733836104da565b905061073e816108bb565b9392505050565b6040517efdd58e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8281166004830152600160248301525f9182917f0000000000000000000000000000000000000000000000000000000000000000169062fdd58e90604401602060405180830381865afa1580156107d8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107fc9190611880565b1192915050565b61080b61115b565b6108145f6111db565b565b61081e610f39565b610854576040517f7762060000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61047d80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168215159081179091556040519081527fc18e4e9c131e3d0104645210b9d15fe159a005ad6ee21c210ad23afaace182c5906020015b60405180910390a150565b60408051602081019091525f808252606091905b83518110156109a3575f8482815181106108eb576108eb61180d565b602002602001015190505f8190505f81604051602001610936919060d89190911b7fffffffffff00000000000000000000000000000000000000000000000000000016815260050190565b60405160208183030381529060405290505f819050600188516109599190611897565b850361096e5761096b815f600261124f565b90505b85816040516020016109819291906118aa565b60405160208183030381529060405295505050505080806001019150506108cf565b5092915050565b604080516103d5808252617ac082019092526060915f919060208201617aa0803683370190505090505f5b6103d5811015610a3c576003816103d581106109f3576109f361180d565b600691828204019190066005029054906101000a900464ffffffffff1664ffffffffff16828281518110610a2957610a2961180d565b60209081029190910101526001016109d5565b50610a46816108bb565b91505090565b610a5461115b565b61069f60a7826103d5611370565b604080516103d5808252617ac08201909252606091905f908260208201617aa0803683370190505090505f5b82811015610aed5760a7816103d58110610aaa57610aaa61180d565b0154825173ffffffffffffffffffffffffffffffffffffffff9091163190839083908110610ada57610ada61180d565b6020908102919091010152600101610a8e565b50610af7816108bb565b9250505090565b610b0661115b565b6002548110610b41576040517fefe6357f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6003811015610b7c576040517f8ee8b6d800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f81815260016020818152604080842090920192909255518281527fc375b476f60114a80a5115e566054666202bc89c0d65903e3d90cc0007149f9791016108b0565b5f806103d5815b81811015610c64575f60a7826103d58110610be357610be361180d565b015473ffffffffffffffffffffffffffffffffffffffff1690506003826103d58110610c1157610c1161180d565b600680820490920154610c4f9264ffffffffff600591909306026101000a90041673ffffffffffffffffffffffffffffffffffffffff831631611897565b610c599085611867565b935050600101610bc6565b509092915050565b610c74610f39565b158015610c9857505f5473ffffffffffffffffffffffffffffffffffffffff163314155b15610ccf576040517f7762060000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6002545f90815260016020819052604082204291810191909155906103d5905b81811015610d9c575f60a7826103d58110610d0c57610d0c61180d565b015473ffffffffffffffffffffffffffffffffffffffff1690505f6003836103d58110610d3b57610d3b61180d565b600680820490920154610d799264ffffffffff600591909306026101000a90041673ffffffffffffffffffffffffffffffffffffffff841631611897565b90508015610d92575f8381526020869052604090208190555b5050600101610cef565b50600254604080519182524260208301527f3b5ce8b2d475067181f949f668899c93f26f0b25c5f8712ebca6b4b93d92989d910160405180910390a160028054905f610de7836118d8565b91905055505050565b61047d5460609060ff1615610e0c57610e07610a62565b905090565b610e0761047c546106a3565b610e20610f39565b610e56576040517f7762060000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6002548110610e91576040517fefe6357f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f818152600160208190526040822001549003610eda576040517fcb85efac00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61047c81905561047d80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690556040518181527f3b0f37561752b99d939ff216fcadbc6fe72442faa8303a5e97be988759a1b011906020016108b0565b5f610e0733610745565b60a7816103d58110610f53575f80fd5b015473ffffffffffffffffffffffffffffffffffffffff16905081565b610f7861115b565b73ffffffffffffffffffffffffffffffffffffffff8116611020576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b611029816111db565b50565b61103461115b565b805182511461106f576040517f568efce200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6002545f9081526001602081905260408220908101859055905b8351811015611104578381815181106110a4576110a461180d565b60200260200101515f146110fc578381815181106110c4576110c461180d565b6020026020010151825f015f8584815181106110e2576110e261180d565b602002602001015181526020019081526020015f20819055505b600101611089565b5060025460408051918252602082018690527f3b5ce8b2d475067181f949f668899c93f26f0b25c5f8712ebca6b4b93d92989d910160405180910390a160028054905f611150836118d8565b919050555050505050565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610814576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401611017565b5f805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6060835182811161125e578092505b838111611269578093505b508183101561073e5750604051828203808252938301937fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f820181165b86810151848201528101806112a85750505f81602084010152604081018201604052509392505050565b60a483019183908215611360579160200282015f5b8382111561132d57835183826101000a81548164ffffffffff021916908364ffffffffff16021790555092602001926005016020816004010492830192600103026112e7565b801561135e5782816101000a81549064ffffffffff021916905560050160208160040104928301926001030261132d565b505b5061136c9291506113de565b5090565b826103d58101928215611360579160200282015b8281111561136057825182547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff909116178255602090920191600190910190611384565b5b8082111561136c575f81556001016113df565b5f805f60408486031215611404575f80fd5b833567ffffffffffffffff8082111561141b575f80fd5b818601915086601f83011261142e575f80fd5b81358181111561143c575f80fd5b8760208260051b8501011115611450575f80fd5b6020928301989097509590910135949350505050565b5f60208284031215611476575f80fd5b5035919050565b602080825282518282018190525f9190848201906040850190845b818110156114b457835183529284019291840191600101611498565b50909695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b604051617aa0810167ffffffffffffffff81118282101715611511576115116114c0565b60405290565b5f617aa0808385031215611529575f80fd5b83601f840112611537575f80fd5b61153f6114ed565b908301908085831115611550575f80fd5b845b8381101561157c57803564ffffffffff8116811461156e575f80fd5b835260209283019201611552565b5095945050505050565b5f5b838110156115a0578181015183820152602001611588565b50505f910152565b602081525f82518060208401526115c6816040850160208701611586565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169190910160400192915050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461161b575f80fd5b919050565b5f60208284031215611630575f80fd5b61073e826115f8565b5f60208284031215611649575f80fd5b8135801515811461073e575f80fd5b5f82601f830112611667575f80fd5b8135602067ffffffffffffffff80831115611684576116846114c0565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f830116810181811084821117156116c7576116c76114c0565b60405293845260208187018101949081019250878511156116e6575f80fd5b6020870191505b84821015611706578135835291830191908301906116ed565b979650505050505050565b5f60208284031215611721575f80fd5b813567ffffffffffffffff811115611737575f80fd5b61174384828501611658565b949350505050565b5f617aa080838503121561175d575f80fd5b83601f84011261176b575f80fd5b6117736114ed565b908301908085831115611784575f80fd5b845b8381101561157c57611797816115f8565b835260209283019201611786565b5f805f606084860312156117b7575f80fd5b83359250602084013567ffffffffffffffff808211156117d5575f80fd5b6117e187838801611658565b935060408601359150808211156117f6575f80fd5b5061180386828701611658565b9150509250925092565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b8082018082111561187a5761187a61183a565b92915050565b5f60208284031215611890575f80fd5b5051919050565b8181038181111561187a5761187a61183a565b5f83516118bb818460208801611586565b8351908301906118cf818360208801611586565b01949350505050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036119085761190861183a565b506001019056fea164736f6c6343000819000a000000000000000000000000cb337152b6181683010d07e3f00e7508cd348bc7000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000002ee000000000000000000000000ff64711628dbfbcd11b0b6252ec7146ee487a2c90000000000000000000000005a04b9ae934adb10dc90ae561aff19df977021750000000000000000000000000bfb75c571635fa2d4262217d5f8e5018aeefec9000000000000000000000000156d5f8a20d4f843a53b406fd9d3e1a453ec88b2000000000000000000000000126bb405c188da691e708bdab72516da922854a3000000000000000000000000f4d405a7a4b2585d6c969fc5aedae58a9a7761b5000000000000000000000000759670ab95d3a8d5fb1c1abff8cf0023fd7e107b000000000000000000000000bc7984599b94fc36d4490f4a41efd936c53a8c01000000000000000000000000c636d893757038a726eedef02374ed3c7091bdb6000000000000000000000000e06c62cf8c544f16e7119fac27a9b0c8929efdf90000000000000000000000002d90ff82ddcd4728652c384a95d5da0e2aa0e32c0000000000000000000000001766962bcbbbf97b739d96b0e7ed924632f15f4d00000000000000000000000045662c7d4f483a78b7271c4f579642d812f7986e0000000000000000000000001cfabf69b9b4473c76f60260863186854ffbc013000000000000000000000000846694b2d79854832168b1e84038b1492aad0177000000000000000000000000abf1daaf720e052289dbd906fb31ca9bfe7643560000000000000000000000003b58f2becc244566f214bce21ff08e6d7653949900000000000000000000000074a2fac446cfb90346a2329bbf6e875083e814ef0000000000000000000000001e0a2fbffc3e7ad2450b49503b77fca2976338e4000000000000000000000000eec47b9ac18be439d083901c5541be486ece75ab000000000000000000000000be20f60523f5e4940a0717874b1cf8c605191e7c000000000000000000000000b39f9555ae21679116e33ca9b7b484f154251d700000000000000000000000009777fd60902b0b842fb72ad975717b46a9d02387000000000000000000000000193d3c14796c068dbd239f76b7f68af9ce89e9f00000000000000000000000006eae0f716dc7316f3b95b7987c0af33192667be400000000000000000000000093f8a4081a29dc28139da9673a503922c5f2ee3d0000000000000000000000002f6860756bfb8e95eb7ef470c68ca213209fe1e7000000000000000000000000335df126edd17538ae04f47b8217ef64267b875f0000000000000000000000002719aa2df4f6b7a6834053130d3a174cde9e14f5000000000000000000000000dfaa80158aff56718dd4b07bc7cc61a77be1525b0000000000000000000000006ba56fc69f2a4b649e35cf0b7b8f4eef09bd630d00000000000000000000000040a965dbc477aec8673070e765328fb60ac64a7a000000000000000000000000590fdf16c47fa15dce9a857c157577b3e290a1ba000000000000000000000000c4534908f0acac882dd1f91cb4002738317078d3000000000000000000000000455f9682d03b333a0fd2c1be72e22fbf6ecf6261000000000000000000000000e6b295e9dedd3674d0903833a21435ac234d8319000000000000000000000000a9c0d05fee7aa68241546a4584946c4ad9acab6d0000000000000000000000008c476cda3693163a877da79f6c8ce9db7e3256cf000000000000000000000000dd0bbf3eae9b6b9215a3a081db7fbe54b9fda4a00000000000000000000000001c17d7ecbd2ff20d8880fbf3b7abadab9639beec000000000000000000000000e6e816639f7ac059353f510045bde88b092b82ae000000000000000000000000feadb4a4d27787afb95cfbd8dbfb95dcfc51bf11000000000000000000000000be951967b0fc960cf41636d267b15fcbb5c7fb630000000000000000000000000fe70bcca223618b67dc681d44539185a2b923ee00000000000000000000000034c0f60f44a7fa8d0539afed9473864b187cc24100000000000000000000000034a1af47d918a0e93a5b3c98f3c25d4ee887f85d000000000000000000000000c0057a2c1523d7f4aec9bc578e5b5f48070a974e000000000000000000000000fbfa558c278d25258349001e329c5b150a452b95000000000000000000000000e76b3ab1db2fb5b796b44cf5c8a0c1f51e99f3a00000000000000000000000000157a61200d120b6a06d998587f96f5eff2eef9a000000000000000000000000509a04ae924b52e7b5caca3c98fd08e2629db9a000000000000000000000000014ddf4a3c017a7beaec099bf1029f46422341038000000000000000000000000a2a0aa2851ac59b62f8f79d4a0d1be85a65c80790000000000000000000000002c0fd5b15ff3253377c32f730effb35e92307e82000000000000000000000000b8fdc52cf0376188637bff67a137b6735a8457f00000000000000000000000006e13afbf988f39fd7e9be0370e4c34e91270e1ba0000000000000000000000009a38ede54ad7ea8acf3bc7f9c8f7b08ab19abcfe000000000000000000000000efb5111e6fa2c8d392a1376ac1572076fbce24870000000000000000000000009c97bba95a67ab00a33cf3890df051f4b29e2bec0000000000000000000000007b3353cb47e45a44c59c5d4f63ce5595cfd2f5a30000000000000000000000004784351ec65d8f6bf6ba7698e4e79b8026f38f8f00000000000000000000000089dcf3e6166cd81a6e4e8b06e1185356f8cc089b0000000000000000000000000f4c072203451cf21342e844780ae0ed4d4adfa2000000000000000000000000bb0a6802e633f97980a8fc91386052ddff9892cc000000000000000000000000cce8cb7dc680d37ed56ec47c14ca171c5c58022f00000000000000000000000015e7b478de6db3cfa85cda3257d394d79e8baf8200000000000000000000000014d74333106e3210f289464d19d66cc0bcecdf430000000000000000000000007bdf2c5769cda7c12f48f9d0f1b07d8d0a57f128000000000000000000000000ef490377ee6f67c57d63dade3d8434b17e5959ce000000000000000000000000aea98eb953525e65f7520f27cdfed4dcbca6023f00000000000000000000000043ebba6b7a1ed74a7c5b7be4710157ce181be0ed0000000000000000000000001b98f45b29a5cf471ade3cd2922a9fadc6a693ff000000000000000000000000fbc31f8a580f00e317d9008ae10ae362afb2984100000000000000000000000051dca3cec3942cfbbc7cf6b89dd5d9755bc52438000000000000000000000000b69e265bb2b6c31b1a5bd8dde6fcab858a67a44b000000000000000000000000c46c6a6342497b7530634505c08860050c0246cc00000000000000000000000069ef6279b0b454577e685395410a95d873e9d82a000000000000000000000000c3ad5ece058b3dfeaca013d33f62ff5bdcf1ba610000000000000000000000009e7e18a1c92bbbe9f7790e6e1296e7716869d7fc000000000000000000000000f9e2f9d1437dbdd0bda361f7f91740233c7ad0330000000000000000000000002abbb9754bd3889d9bb5c9659c0d825290631dd40000000000000000000000006955faf89fd43387eb6df55f40dd69b57f484c59000000000000000000000000faab692accaa3466ce867f6597f816eb9342fe7e000000000000000000000000050d7c826c1f4554da2bd2868b8d3784730973c50000000000000000000000006bf3e88697474b718eb08bd18e684b655d331ee9000000000000000000000000e28d5f727080f8b5c0448218def4c1f111a87202000000000000000000000000d695ba03fd7b4f6da5e35f3e62dab57ae5363979000000000000000000000000407729f78710c2ec5d5efdced2045cb15bd6dab0000000000000000000000000b73043aa6a272cb7e02b96123ca8e25687f49d27000000000000000000000000b8554fb491c97c65201a5e736c7e917b9e37be890000000000000000000000007fd492dd7041e5a1500ff8e3e4f0564ed5185bf70000000000000000000000004238fcfdba55536e9db5f10abdb2084ca32e7e8d0000000000000000000000007af585b1e2aafe57fec14935e06562b1943881ef000000000000000000000000755d8a61eff9be5eb60b3da381f378d36aabbe73000000000000000000000000ef5883d6836b006f64a7cb2a9639e23d7d2825b40000000000000000000000000f122e32934bdff19e34d213329fcc2ffec9ef900000000000000000000000009a7a93df8da07ef4b08366eb2a4d2137b4821439000000000000000000000000e96853d9cff5ad698611709fa11e29f8dfcf89b80000000000000000000000000d1702572889cedb39ed459018bab9711ed5962b000000000000000000000000c2c287d082f3ef11dcd413643cbfd56c557f43bf000000000000000000000000a6d59e052e80ab7adea26858f4728f185a1b97e7000000000000000000000000cda159b2193bf694835c970a499eccd6de6e801a000000000000000000000000f2614d8239940785a44bea5b36808cbf8c486c550000000000000000000000008fed0fc57669808acb9edb487318ab2843a2199e0000000000000000000000005492592eecc026db44c6b80bfee17d32fa4c0072000000000000000000000000a43f87af2fa9d5b98781368300fce0e33c0533820000000000000000000000000e0b7570b97e3078d90284f9365d1f84ad9f213e00000000000000000000000038f36be3b0e098a3347502f025b958d9d89b3d4600000000000000000000000077e9cbf615ae524555ab1ea0195a91b1e1214bee000000000000000000000000ff990648740c1ca5895bee07b832a3af204faded000000000000000000000000b67f1f2ce9452ebea814b2f97801e050cd9c3eed0000000000000000000000000ded72d6bca9ca5ebee4c03a2490d99a7d0dc884000000000000000000000000e9859cc94d531625cf8b2b2cd737ca637a9271a8000000000000000000000000391c9f4537afd45e82e0510b67d0d460cbff725a0000000000000000000000008376ec7bf0e430cf902302605ffb31a86a21c5a7000000000000000000000000cecb55950b8c94bc472945cc3c5a31940e2d0c040000000000000000000000000c38c28d31c80496aa02019f322dd9fdfe8e3aa7000000000000000000000000bc30a9d8abeed4c7b2c2cee1855e198916c5d8c3000000000000000000000000553abf9546d73eb80e278d2c820b5ed0353142c80000000000000000000000008abe0004d749cf98c0fc1e09e797b76adbe8aa530000000000000000000000007964306610b3c0adc9f34a11bab89f3268d7154a0000000000000000000000003b5e17848a468315b7b6a0d087eda78c9b677e30000000000000000000000000d7a831448a9a9bb8cf294f11b12d4fc64ba97c810000000000000000000000008c7fb9526e8139a90ffc4058ae3268fb906b4d6e0000000000000000000000002b860d532e0be424b84468219e4783cdb75a29380000000000000000000000004e334cabd169302b05c52c8a8e61a0aa7ea7b0ab000000000000000000000000e0c0a33416f26712e4f59e8a2a345609b4b6dddc000000000000000000000000a7645abcde52cb2e8c8c5879f7e339a5f6e5c6f0000000000000000000000000c4c73518946aab4a73578e3cdd85ec959deaf9810000000000000000000000005958411fc670fe546f3c8c844c7b2f134cb43ce10000000000000000000000002d329ff45ccec77dc5470b4cbfba82dd8faefaa20000000000000000000000005b38a1056e77db49a838a26b1cdfa034e34541bf0000000000000000000000003d31e5c9f7cbd59050609a1a3c3686d4d08c3008000000000000000000000000f5aacaa00b7bd992b3a303de095bc5da7dd49916000000000000000000000000e4713b06aba976fc17b168595543056f1292252a000000000000000000000000d5c1a5036b29c386ab4f5dba273cf36c0fef73ac000000000000000000000000f72f0a858d7d13d095f7faa098fb624b1c109936000000000000000000000000cffea90e4376b96c53a99851ba8c86cb9df600f3000000000000000000000000ca446340b52433f9a25206ed4db4b333ace322990000000000000000000000008d3904785a581c58f19dc03415fed16536e0bcc600000000000000000000000073d544e64adc9781b83c4a8fe65d45ad53a9a1af000000000000000000000000e8533d989165aaf2fd618e1cc2b451d6d8263eac00000000000000000000000056e09255580deb918e90dc945e14bd7725017179000000000000000000000000edc8cd9de64eedb5f57b559a9825b856809496860000000000000000000000003754b101248a237ad3743def947dfbdd3e7454150000000000000000000000008ff9df4bafb72dce69e175e4d515b43c2bdf6286000000000000000000000000fa399385db7d133dc098d356a75254e0978cb78a00000000000000000000000056156009fa9d026e04fd76b312df76fbbbfbaeb1000000000000000000000000b00b7d03aaed54b7e5edab994a136713844e8957000000000000000000000000efb8ac07c92cef03c643cc5b540ad12da4803484000000000000000000000000ac9dc3ea39797ee5484f485b2980b535d5a3c1ed000000000000000000000000fac80ac986ca527078eccbc93efd93a1d3a6aead000000000000000000000000b35fa4a7708b746030267a1f55ccc27cca1139f70000000000000000000000003c84d2015378a7376010bafc5efc626e882335e800000000000000000000000023998a620f3605fd6c0bab43834ef896018b455400000000000000000000000074dbb176b72b7a82d771263460ef7c019acc99400000000000000000000000002e67c48a85d34e1645db8cf8b1c7e3d117b531b600000000000000000000000094e0b3ec075f33486d04271be6cdaa5a1c38652e000000000000000000000000c16603e0f85beed096fe229b74f94a43bc9c7c430000000000000000000000003f786e0bfd61ffa1c13e144b231dc43ea72189fa000000000000000000000000b09e35d7e811a17dca3e5a2ceea63054ee28a0740000000000000000000000006d57f3b7746e41158e85b272de45c7aeb0e827d60000000000000000000000007bbeccacfedffab879f6ea0e663e60f8c2074dc0000000000000000000000000cf04dd9b77a6785712eec5f3105e5b2cb94da97c000000000000000000000000f1711a20953f21ba699229bfc38735489da1a69200000000000000000000000037415fee9206978cf2377e32f40836ac1cccc62f00000000000000000000000088cc6756fb0057f294d5f9363f8403512ce6dc440000000000000000000000000b07725e54de7671b1a089f6122c928c49ce1f83000000000000000000000000992d903a8167f5a4a13ec70c65b05621f222eca6000000000000000000000000274d6ddbd2d43fcb58ecdf9aa7d798fcd49c1a400000000000000000000000002cd17e77cfa662a78c1764c18419181effd3e1910000000000000000000000006b79b82c5cfc8230bcb9347d093b81d97d31e562000000000000000000000000dadb0b3792f47b0e2db587696fcacf0457a3ff4c000000000000000000000000e22883b8dcd695843cb7875f2086da1112f0d9510000000000000000000000007d8fc49bee312670f68363eba2af045ee695a8590000000000000000000000006b2a50571b076da4b92f4308919fe5ab1cebf01f000000000000000000000000439c8b04f605752179a373ed5bbfbee2876fc6c20000000000000000000000008ea3a85ac520a3e26736d571d33676ae97e9b583000000000000000000000000d909123d846aa605cf7127ad178f7e4a9dba8b4f000000000000000000000000f32e51e28210229910c7cde4c9d42f18cdd5385f00000000000000000000000030bd068c5fc5ebb87ee395b043b3cdd1c1378d4b000000000000000000000000e1cc7f949c70b803b5eca226429936dad535a213000000000000000000000000d180834039e772feb34c6b42b206eaf1e582854b0000000000000000000000002b9ee87e5b597bf042b0dc588f45cd3e2b1473d60000000000000000000000004d1570b56cdf3048717e8c287c9ad9fa10a35f11000000000000000000000000480df72243d119d4826a733e00a7b98563cc449f000000000000000000000000211daa831dd902997152b7c14c23c09e4a503914000000000000000000000000990c214889334035879c4b0e70d17da9f77034830000000000000000000000000e11bdd390085a3cbe7be90b22c9f56f18e8ef110000000000000000000000009aca9398e804df364b72b36ebba8cf8433e0c999000000000000000000000000ac08efb3deefe763ba4e3b210c975ccdfda738a400000000000000000000000062f250495cdcbc332b656a8482c5a24b57171e440000000000000000000000006961349e255c81ec2e37c9ffee54bb169ccf86dd000000000000000000000000039e83cf3971434b6e256cc3e467379466ab93130000000000000000000000005c1486c77957d019525e08bdb37b6c5bb0d8f18800000000000000000000000074708aacf09583fd25d1c9afc18c8f69f4417acf000000000000000000000000389b7f17e1ea1a02495fc8e6a9ed63a60cedb243000000000000000000000000b7362cde6dc4ea6a44d46bf23544898721444c8c000000000000000000000000b0024fb5c16705edc5c3e8f66e5f79f864e952b90000000000000000000000007066014277dde23cd88718504b7dec8a398245ca0000000000000000000000003415301446cb482213caf61029ebc3774eaddbb70000000000000000000000009c09ddc82561e924bc541bde1976899f214df9cc000000000000000000000000031e10e474c1d7b8638f199d30b4502cfdf89abf0000000000000000000000005ee01329a60019535c9b95950ee415f15efab95800000000000000000000000000ee1dc7f82459534d508a702846f940001dff87000000000000000000000000a29c415a745aca4637886a4d598054c6454bf67700000000000000000000000024bc559b81d24c664591f9af19ee8c108a2015950000000000000000000000000b10afba8a46c8110a196f3f837e399637985921000000000000000000000000d5c1f4a13b09fa91b79c133236bdc3125784f7950000000000000000000000009949385848eb72bd3476c5c9f3ec1190b877c61800000000000000000000000019f2b4dea91888c72e0f4543fa6cc4c926fb401d000000000000000000000000c28786883b8a56804d2ca5d92a37a79c7cd7c65b000000000000000000000000ad226db5e142f2610aa005c482b78c02c79f3cb400000000000000000000000061fc0f87d419fdd94248059861bf9e19652dece10000000000000000000000006a57e50db5e2b89e19fc488f81bb0f5465e351620000000000000000000000004cf4427ad3484e1dd81cda2c41dab4ee2bc938230000000000000000000000009e9c1f45d1624b899c6c9577eaf4edc5e2a56abf00000000000000000000000060374a1b9e417fa4a60053dd95b881e216871376000000000000000000000000713001784115e71315ad8711575f971fbe09f9b70000000000000000000000000e451f953e4301a4ffd3fa9c2491f76b263cf1080000000000000000000000004eca3ee20ad41df5dfab27d2e9d62c6ee65360620000000000000000000000008b9fe4894f7b2a6145b5d4865e29abcf48012075000000000000000000000000d2343eaf48b0d5504ed71681f2360f10a8afef89000000000000000000000000d559b6f387ffab63610b060b8be1b8de6827600f0000000000000000000000006a5418b3c33c7153161c49dd535fdad4e4fca12d0000000000000000000000003ed2d7acf0b9ab3fc98603d7faa920e613d3e556000000000000000000000000d0fbbd9b4b2911eea59ad57ae7a1905f49ce09d4000000000000000000000000938f93b0e12fbe253ac1f7a39c1d6b2951d5e5870000000000000000000000007fbd7a7c0c7d7d0e33a487f6e0bf3f8b213709db000000000000000000000000ae2b079bf8f08883c404944f87f0f5303ede229200000000000000000000000078b1b5e843164d900e1c4c0df7c8926054435682000000000000000000000000e734f4d671fdbb7c58df337f9260d5e55c3fa7fa000000000000000000000000b625d4ef08d64dae4759e347e3984b8b7ffcd9d9000000000000000000000000f0db70fd5fa4dddc2e61779a1ea36908932e9f12000000000000000000000000e2e05ed14faface47b99137679c9d6d5432b2c22000000000000000000000000878404c02c8d4ec88afe827de2a08879752fa3da00000000000000000000000081131878727f4d4dadb1a21d659868594927e74d000000000000000000000000b40c1ec22093d1c5d9467152e073d7e384e6dd9c000000000000000000000000f53cd61e002af1a78a115b0c1936978e22b12768000000000000000000000000d9f01f0936100ff2656a3aa3626fe42d771d3c3e000000000000000000000000ed3c86b42ed24a0ce774a27069ac41afd5eeef8400000000000000000000000092e1b2c322911ee22242e9a6e4ccac2d5d6cf505000000000000000000000000732d9ee644bc1d5958e72124f79133a8cc49a1ab000000000000000000000000d99dace0f9c416dcd734c11427d8e9048e9d8fa600000000000000000000000026187af2e2d5a941ee2d1281c03fc0b1bd14d9400000000000000000000000002d1184f708f383b42cde6dd2bafa8ba4aa190374000000000000000000000000c1d56c90adab2c06078bf85632bdfeb0f9d4b22e0000000000000000000000006588e8dd6188e204dd468cb98357a87357d94175000000000000000000000000df078b446b4bf2cefaac96dd9f20458fe41465d200000000000000000000000072ed780c2d7b1fd41ab3f5c43a7c68dcc3dd54280000000000000000000000001a9949e0945d2cb7bebe54162a1ba9e6459b51d40000000000000000000000002cb32520621c2079010db985282ad42d05685d96000000000000000000000000472dcd4c1f594dac984d442131c4503c75461af9000000000000000000000000f278323e76f825c2c91e110a9cda8c6c717c2b9c00000000000000000000000017a76b4e13a0cb6f1d01ad769bb66cf41cd2c043000000000000000000000000ad2dfcc4d2cc41b2f9e19812237ea3d8d3f404010000000000000000000000003acbf5dfa243ea346ce741c9f3d1556d33dc33ba000000000000000000000000e8359cdec4bdd8b8a46ef00093eeeb01a9deba1600000000000000000000000092efdfe04aa5df1f1e824e5e3d3928ca979208c8000000000000000000000000acacb9430212f977abba9345f7d1aa631e3e0771000000000000000000000000ee41100c13dac5725eec4402b9b45c7aba4957ce000000000000000000000000639ddb339665ccce59c6e1728ed4e06a12e15e6a000000000000000000000000253168d6eabb56dbef02bbccb366936fa53002b5000000000000000000000000facb518d26dd126175f1808c92bac5ece92a11b6000000000000000000000000c6236ca9db4043c7756e5eff151aa953ff683ee00000000000000000000000002d19784334d6e08fa5b9d9da6509e77f7f671ce200000000000000000000000081ff54c6b56258c71946e9cae615067748802406000000000000000000000000e24ee348f353813728818cc6e79853e943f4ce8b00000000000000000000000063feb64d3dd1b0dc0de78839343accc8df82316e0000000000000000000000005499ba98bfd13839944ac4aa629df36d613b2a710000000000000000000000000993562a75eded9f23434c408731dacd9754c83a000000000000000000000000ea7f19ac27d0fd224e991e1bc6c6ef23f793bc0d0000000000000000000000004fa7e65636b87e01b06d5152c1def322cc85f44300000000000000000000000062414cf8b1b04c36fd788597c55ab3e3db24f4f0000000000000000000000000d76809b18a8c40328a00d9a162d4ea9254737238000000000000000000000000576519e51a978340394bffca55ae7834da4896d500000000000000000000000034f89ddfa83b105366bd60eff7eb1896c9aa296f000000000000000000000000bcf3ddd4781a156b68efddd71b0dcb40c25d7785000000000000000000000000295a1257e1c3213c621fdbff19679bd97dedef40000000000000000000000000e7bc4931e93cd97d58b7251a18bb493d23a2cd35000000000000000000000000f0e60898dac4e738aa48ac60c689318608cef7460000000000000000000000000bf5b434f4208308b3274e925fac89c297ba1f6f000000000000000000000000d85c02c684c04ea54c289cff29023a6b4f050bfb000000000000000000000000df37da805f0903f17e1d29474a077eebd926c29300000000000000000000000061fa0bb8bc7fc2990e3155cd119859d9f7c009a4000000000000000000000000e2665ce70df2e7c474f10d1e23d9eec5fc460f250000000000000000000000003279a9e40148835a6df92657b40c35d38ce5c32c000000000000000000000000413da3f152bade8152c0b7b2495321901f292c800000000000000000000000007f983eb1ddfbc869cbbb4ea573ccd6ef1161e513000000000000000000000000c2aa70e4008684393800680d98445cf50f35beab0000000000000000000000009c36232a8d9873ae79ed0ec4045c61422b4f1695000000000000000000000000e32b8dcfe8d62c636df175910a0714c3254225e3000000000000000000000000470cb04b3086812889bf3ba2180c584556a5e6890000000000000000000000006d37935418a4efa84f543f4ac4f3a5f4cb2d3d8e0000000000000000000000007ce5e82c722bc9f88530406b19bb78247bcb534b000000000000000000000000945157dde8d93c2c1b4481b92ae2b96bb6710d6b000000000000000000000000272ac27e2ffc6de6bb056f36567f3b1c78ca0bac00000000000000000000000065e92e029be941e3ea489f3632c282d6bb5b4397000000000000000000000000fb1ddb5efdeddcb9f599963a0aec8eb904de3161000000000000000000000000a6f07a32f78196552d1bc4dea8ed6f70d3dbe3080000000000000000000000000c26cde1b6d5377dab07146b2b408b9fe3bc1d2b0000000000000000000000005fdb6770c0e029a8283af98dc36fb9c1976aacb90000000000000000000000000996a8f51de95c3f74f509c4bd27c85bc271d2160000000000000000000000004ef99b32f216d715208290b8a2eec229fb09a942000000000000000000000000cb8f3974fa8a13e2456259b2fd1a75e0b17ffcbe000000000000000000000000b2382d04ec11cfc2f5ac5b4a1a8efe22073a236f0000000000000000000000009812797c12f13cfab63f35031bbd82f03a3840aa000000000000000000000000e0d54a43be21ab0b3da802a2a64f1e909aaf98a9000000000000000000000000795f5f5b6dcde3c31787d6a452b05798d40c6a6c000000000000000000000000f1684fbb2ec9ea929bd1efea4a06606918acee0b000000000000000000000000c22967e0e7fd239369f6240589be01ab4be0e16100000000000000000000000058d1a30c29e22ee57783e0e1ace9228cc9c3d7b300000000000000000000000023f2e4c3fe5c0c939b44c1d44373e4231bc0ecc90000000000000000000000006561b0e908f3fac17f9617b64e1c192f58367e8d0000000000000000000000008c2a0a1c0eac554414acd94be2df958c4dca0b3000000000000000000000000077dea6215b7b444fc0639b55bf1d86b1e315f0af00000000000000000000000020b7883b6e15163076300956830fa2eaee7f771b000000000000000000000000f2da31917b6d568fa376c6e50a8b7b144673a3ec00000000000000000000000026bd12da996362c9fb4edf2e2ce661be8ae770090000000000000000000000000de0c13eb1c29b56cbc9991328080712d736f691000000000000000000000000b1e58945526a21a24c3701f4146e8f840e9f543f0000000000000000000000003f53f058a1346d3d98ab2bbb1326976d3e8c110e000000000000000000000000c8d5870ca3078b451eb626648925048fea9233330000000000000000000000003c85eeece4bfe9f4e6823da5056fdd2164cacd60000000000000000000000000685b862cf06653119bbd334946b0a7373aa9a47b0000000000000000000000003d3cb065ddae9dab7d6b71fe1b1b22b66b0fa53a0000000000000000000000005cc0fd9dfd3fb55b4f488b67cb349bb75082c1da000000000000000000000000dd1924cf5a7b031d29154d5161f64927ef04fae50000000000000000000000007ff8634c643cc8b91f6fe7ac8a0ffbea19cfc83b0000000000000000000000006bbad7ece0edfdaac60b6f03f0cff1c531e8b2e3000000000000000000000000ea3a4786ada7bc64ea349f8b696dbc481fb8ce810000000000000000000000005ad3bf53a5c9fb184768aa29be494452d24dd01900000000000000000000000021e2affea42d113e5a4ae98acbada0eaa02d569500000000000000000000000032c3bdd638bb744a4e0e79c10ae233bda9ab27a3000000000000000000000000078468e49e0d844d3cc262d4a0193e2251a64e7b000000000000000000000000ddb0db81cca27b2c8d3d15544949b0bef742e5c200000000000000000000000053985c16321632be042623706e596dced20166be0000000000000000000000008f413e766a2ec3dd6b3855ab9f372cfb072d9937000000000000000000000000769b985ead1d02b2b7fa93fbb6eae4fe1b67376800000000000000000000000082f476cc3aaf427a6abde138c741875274f7f01d0000000000000000000000005756a75678bb6d6297b1e39dc798ac5d20840a74000000000000000000000000fc7adc2a1d4a11a7dbc2a8f6a054670c137b23e4000000000000000000000000c798034cae6c6854d00e23ebeaedf86e9a28af38000000000000000000000000ef9c8f1c8aaf17452c6fa706b02b2463fea0abb100000000000000000000000063aac0690e1996ffc8ffc295bf95d60b4bd28acc0000000000000000000000007a5a2965cc3ed9d2b2739b615fa3231ef102e3830000000000000000000000004052ee9cfb78f8eccd0a21fc5457b3d58c4d95e4000000000000000000000000dd8d9df5ff4210a6485401e61407c93cc24d7131000000000000000000000000a4fd55095d1144096769e61eddcdc404048d0952000000000000000000000000d9621d4c32cd005d93962a3bd0e25502998e9a5a00000000000000000000000009867e6b45c486513fba94dd924aab9a6acd396c000000000000000000000000d299292df0bb17a8627ca65ff951e6d4672c63d4000000000000000000000000d369756f3dac9d5db93883f7a8ce66d8a6c3e3bc000000000000000000000000fe93fb813128445ee052883a63cbb7c5735166d1000000000000000000000000d8b6090303a6cbe2b64cc4b2f12420f77069d75c00000000000000000000000057f0679eea804d485d9cd2cbd569454e7b14ae2d00000000000000000000000077583412ff92e4e05f1261e38f1979cdfa7e0f69000000000000000000000000ea09488f37844bc7ecd88a7cf78e7317d9abac98000000000000000000000000de24314066f14b37240b0aa7ff08bbbfcd8aebad000000000000000000000000b9b50f4e5a3f7fd63e0eaa6c77a08be9f5b4be000000000000000000000000009fb8cd55259cd20a6620a796e8455a74b62c2ce9000000000000000000000000e1ccde73fc5ce2cc69abe2afe105a7ee6fbe97f300000000000000000000000057adbb92c14ac24a16dc3319497f3cc7f05041940000000000000000000000009cecb6b879999e2f7a21ad01f65b962fb928779f000000000000000000000000cc84878ae314f08fc428f412f8b4350ceb4455610000000000000000000000004da8e56039d22cdf76253a6c1c1d1f35aa745a4c0000000000000000000000007f1e69752f2ae51be9e6592cd6b1600e84e60ef90000000000000000000000006ca6e144f40b412d839e19f929ab8617d7537a680000000000000000000000008d8e0dba39fcabc4c274277e9e14e30e865a0c1b000000000000000000000000a3c74c3aa815b1bad5a11511adcc7a6d2fa5de2600000000000000000000000042a8ff87c4dc252b6817f5a0eed826ee3267998700000000000000000000000081f058f551783ee1338caebfa915f34013b019ee0000000000000000000000004334acf7a82443d5c64eb863ca6a5e49d9500ad300000000000000000000000080c9501b3215fbc2ad942c7beedbb511306c90000000000000000000000000000006bef13b249090a3ad6238ce55178dfa8add1a00000000000000000000000075184b1f485c9b3fd6388191d75c012ac7d80e740000000000000000000000005f34afc51a6d2cc94748a21e525ea35f80f8c25500000000000000000000000035136841d869be0d9c232a40904ba343762ccca3000000000000000000000000223b691d7fca83f9f36fdc9e0abe0cda0245089b0000000000000000000000002ad69210323bbd10e7cf531ba024127d9391e60900000000000000000000000048a5aac55cf76d730bb5c47e5cf22eb2bb55473b00000000000000000000000047659ae6e6fe57b73edebab0d68bbf7354e12021000000000000000000000000729985c104b7ba12ab2beb34bf516dedcd4b32f100000000000000000000000027d438df85fabde466843e71c61eb84b5ffa5d18000000000000000000000000a28cfc98fe7c33f2e2c2ed6e2e4a04d2dd3d1ffb0000000000000000000000008afd1e7ae8f21b42f1dbddc07266f7ebd09a86e4000000000000000000000000027b7566fe4244df6fcf456d74f96c240dee4d7e000000000000000000000000cae4ac13fb3deae9650ab3c6356ced78c3378fa1000000000000000000000000eb3758f1c4f07f5c154d445049ecf57f1e4732880000000000000000000000009b24d8feddd6a49dbab2267ba84ac82210469448000000000000000000000000a6e03d98e5d23ce16482cc45641cc2360fb5820a000000000000000000000000f6ff3d4473a6a6217d3463efac5e78c312813ee900000000000000000000000063ac4df129d2acc240b090de5bb2ae514420a09f00000000000000000000000067f27ad756e509f5711527f1fc9fe9cabb3175b8000000000000000000000000fa56a31d249e97fcc30f02dc4bd6e6f70aae45680000000000000000000000001ab5f846e685c487fea3e167fd1761732f7909bc0000000000000000000000009eee1a5d44c136ff4e78b86934229242f828f2e9000000000000000000000000b126326a6b05c19c3fd169b153dede6bce00bc08000000000000000000000000f08f079fba8646adb999aefcaf9e23b8cb5d2ac2000000000000000000000000b1f7162e31056383e0bf5fff38ec08cf29f773a3000000000000000000000000bf90ee453b3ab6d29a8ba6630d92ae57f81d05e60000000000000000000000004a480a3c76996484ab7c2c570cd460008e1d26d7000000000000000000000000286e51e129fb1a2f6b5b4d7341ada3bc3ba7f386000000000000000000000000d8152e207fd1f54daeb021193398d95a8ef85679000000000000000000000000da787cf75c976c896111ca09570a944f85af2ccf000000000000000000000000bb79c618612fc7de51e0b85d35f9b926c08ed5d30000000000000000000000008f5c956fafd5f72c6be9f8bb6ffe395bfbd08e59000000000000000000000000d8f3bca6cd6b380539c760a53887280e3a46b62900000000000000000000000047e62c5b67619032f1cc1aa066f03bed81e46010000000000000000000000000cda74e76dc971bf636d0d29eb352c2dbb1beaf0d000000000000000000000000aeae567fc74bd51b7abcf75057f327a2dbe88ad500000000000000000000000007599456237777486d933c7e72e2b8bbabd0b005000000000000000000000000889ade53d54af7504646b7cf3538a1af0e554924000000000000000000000000137ffce9ca35b67c7ebf9bab03ca212ad5e0fce80000000000000000000000009b2d8abfed85d3436368981d7cfdac4bd32e996400000000000000000000000015cd04f71df0a7553fbaaf4f4fa30801fc242e3f0000000000000000000000001a382d13c201234c2e3fd0a7e767a1d985c0c725000000000000000000000000830e9e07d8614ad59291ed4d7a11398ad09c2c63000000000000000000000000927c469dba30095a7661cc5dd92e5059b030050b000000000000000000000000d9b2b0578b414afa31bf159d230683752ed517740000000000000000000000004ce133b7ee8a61a4ac13bd525d8cfa36aef2b93a0000000000000000000000005cb642349b35ea6aaca13049663c144da81d890c0000000000000000000000005ac2e7f1ef14618ede402cbc98569ddc4956bf9d000000000000000000000000a1a1b6275ba2050238f2a1b396f88fc65b63bd61000000000000000000000000334d47e58d549529ddd5ac94f35a1d8f7c657c7600000000000000000000000052b0c3d58ad771fe192530986e283e1037c985a7000000000000000000000000c5e7c9d5b8a3fe582a7bcb374533865840ae1bc5000000000000000000000000631c06bae101c7168c35031a63cc9fc0ea0892c300000000000000000000000079e90dfabb202996d272ceec169f0743e89c9ada00000000000000000000000027b89e9bec5173814a2fae87c61c0cfa812832090000000000000000000000006d9c4935876cbecaf3244bc9d6ecf40c41a832f0000000000000000000000000fb98d2ddef4c850a3dd8541508f1fed916f8c91b000000000000000000000000c3ac86e1ac775c7ba8118a09becf784e4c3d88740000000000000000000000003298a6789ee0e6bc2b4511568d6f1b2c6e306b60000000000000000000000000f5cbe47dc8115aec8f6d59c3392d260c3e470097000000000000000000000000b3e524c6ff7835d65caa01c1a8c55dcf8a6806980000000000000000000000007f480927b43fd4094c178dfc23d1ff8f2ed5cdeb000000000000000000000000eaa93a3140b0654e86f853f3fec420b63bc02e3900000000000000000000000084b2cafa915f891ebeb45612903e7b7559d0833600000000000000000000000011e8f0fd8a5ca2a1bb8ff2378f6110acd7782cb4000000000000000000000000982e59499706156b29a754429cce4c73da39b40f000000000000000000000000802330844c47b1059451d9932e650437a689759b000000000000000000000000ae03bbf3b0f54c34643dd374243317ce76a55b9e0000000000000000000000008869b96df18e42c99c3ca2ee3ccbc80cea06236c000000000000000000000000cdbb31299a8073bedc0174329e3203030891cd3a000000000000000000000000555b85e1aaa12e38f2c3849f9b77187b8b30431600000000000000000000000065d678c2b7ab4054360dd0179aea58b5eb144c46000000000000000000000000bf33b9c005d9807db5bfaf63b1c2fade53654efa0000000000000000000000004057f07f8e0189f365dc2fbf5829d139ed6ce1a8000000000000000000000000475112aaafb778b40ab78879c11debd04c4f5194000000000000000000000000637deda8965d4a8f12303c67ad59905974d7844d0000000000000000000000001387a40a44766b9a3c86486ecb08084dc3f6c431000000000000000000000000b6eed3e6789d95483ad4c781957c32149e69b6f5000000000000000000000000f582f6ce1a59ab628693497eec12b47ddc6bdbaf0000000000000000000000009946ac406afabcf22484974bdbdeba593741962e0000000000000000000000008763445693012f77eca20bd766f4f6674e9778d600000000000000000000000066490f961f0709f710685d5a726a90484e4269a10000000000000000000000001eef0bd83d04e179f6e4edc52c8b9a6ce6011bd5000000000000000000000000edbe38588aff90d4550efdc91801f2b5d4bdfd7f000000000000000000000000139295ef4d5f175d856c8b3395711ef495a5311c000000000000000000000000d588584a05ab935a3427c2566f771721f555f0e2000000000000000000000000b00720d346f9734f7371d00fe5cb2aa4570a91a2000000000000000000000000b90a455832da2e1d45549ad1425662fdcd4a88230000000000000000000000004a246a6d7acf998206c18829c12e52a7b5efb08700000000000000000000000066563bdabb11febb6d62ee780c5556539abe39d70000000000000000000000002e2846829915f43d3e3444f3f75c09294ef2a78b000000000000000000000000ac2e7bb8bb02e7a0f4b3447226557ac2943843eb0000000000000000000000007f21f5fffb8cdd6f7772d9f56b53eae2b956033a000000000000000000000000c2bb22d150a05d612d519d1a60f7963569c9981f000000000000000000000000a02124eebe07e31cb5462d76195d3f58965aef0400000000000000000000000095b0a5f0a1d68aae10c254f1a69e5208b3d79c6f0000000000000000000000008d582e731eb7a34b59711b1ea4f34eb41b308547000000000000000000000000fe8bd56700ec0794edf800c654170ca3c40998b80000000000000000000000004a44a49b8620bf528289c4776bc5fa2b4262d0d80000000000000000000000005fa981c3debea67812a5af794dd05d6de2c92210000000000000000000000000d0b99dbafee2bae837482c5b1a828cbdcef5cbed00000000000000000000000087828fb64e9626f4aa88918bfff9e51c7cf256c5000000000000000000000000c87f0c0882cbcb7cf62d42fe8435ba9ff55de7b4000000000000000000000000ddc435c8d9b23015e4b665e36aeef95477db649a0000000000000000000000001deb9f0f3caaaa28bbaf39de9ccf1a18d68dbfb7000000000000000000000000cfc4f0e7d354aad7839e173305ac04bc464930bd0000000000000000000000009154d73edefe38766526fa3718782a5c1c470eda000000000000000000000000e9f3a10846627fbacf5807082d4d348ca13244a0000000000000000000000000ffd2d6e5a138df9e4b1ce56c4783d59c2763d2eb000000000000000000000000d02c16bd10559655341650c4fca77a5739991138000000000000000000000000d057b3206b698d13adb802283bd84e780cdba75a0000000000000000000000008620da37062e7b4809d6b933d24af61516920032000000000000000000000000aa973dfc84ae293500601780292f3ce8e3cbc14b000000000000000000000000d015faf19e5da1c4461fccd455f276e336745311000000000000000000000000385df1576b906bedba46f4728874c3bcfa1b324a0000000000000000000000005123f8f8ccd88373b8a79ebfdc65ee55e6dec3350000000000000000000000001f59609c1a6f3af0a6c711c271984fdd3305983d00000000000000000000000010a8f983d91386eb25c37abc1ba71fe8df9b3c2d0000000000000000000000008917bb21e0878dbed15a57910d6641554a4c086e0000000000000000000000000035a907cea37498dab08838beec8a3b863b56b10000000000000000000000006101e6e89edea0fade9e07066a1d09a42065ec6600000000000000000000000035afea9908d82c5e40cf468793bb0123099d84de00000000000000000000000074289be838cb416b3fc524d9f77f7c95bb77a407000000000000000000000000a76a6814ac0b64b5d941f65be8c8f3709629c6bc0000000000000000000000005f42acbc0d43db24a8c1b80d3214e6c9dd08c184000000000000000000000000e885fbeb7f1288864e91dfb06cf9ed91baf1d687000000000000000000000000f97d4ed9e1b56a9ab9b9ef04e82d880cab621f1f0000000000000000000000000944fc2d0ca9befcf2c465c29985c4c89da5b0cd0000000000000000000000005d9e877395750bdd8c4a5223c7607425c7d479a5000000000000000000000000f955736fe4a87465b830a6c90833419a8e8bbb250000000000000000000000008ac6cc7819aca399d19aab140e69407e6e01e7b8000000000000000000000000db2a1b45f71f1f15b0fdbfbab2b4c26407568e15000000000000000000000000aa4d1f4e5d12f2289196d5304908d3e30d26c9fa000000000000000000000000851f66fc36e6aa15b3af6d037fbd2b09cab565bc000000000000000000000000789024c47b15ae4b08c96999951846dae8f7fe9b00000000000000000000000087654df496f41e9b279cf95b64dea6be1266ec8a000000000000000000000000200e7cd348d957903d451e50695cb416b9d3957c000000000000000000000000aa09bcb1047372f4eb0de555fd16d251f9887d94000000000000000000000000197d93a92208180d73ee7c8ee8d0cd9053c1d6b60000000000000000000000006c5b6128de537fe0d5ea4683d3b1aa9703ebf3bd0000000000000000000000008e327165b6add2e28646e176182d6327e8d2f323000000000000000000000000c7547705f900f49095066d89a74684685c2562ff000000000000000000000000fb10ed5e0a16324313616a2d45972a9a84ce4e650000000000000000000000000f9fcc1066b4753b795ca6f549465776b998899b000000000000000000000000e36a397abf2e594e0f42b9b836c59601e6fc0267000000000000000000000000e5647293b332ccdec31f5d1ae3ddafef9ad3882a000000000000000000000000beedf956eae5c8705d558bacddb8c7f3a3f6e8ad00000000000000000000000062d5eb07b812efedf6f70daa9741c3104df10392000000000000000000000000a80349a9464cb3186147c48d7212cd60aaec494c000000000000000000000000743733b1b0783d9ffc46ff614d6151e0233b9f08000000000000000000000000d673483a4974865c9855d48706e0f1118e3fd3de0000000000000000000000000582d8194fb42f6dbefe2a85abf6c74d5bc3e18700000000000000000000000073e269783b752a3e14c2ffc6c31441e59067b029000000000000000000000000cf71344c00cd87ce02139ece305f5856ff51875a000000000000000000000000de137751ec0586afca1c42ed62f49b0419c9e0a8000000000000000000000000247c2428191836fab634599832085673d6bb5ebc000000000000000000000000ac4f6c9da26a0c0580856a77e394c6c8f2878de200000000000000000000000018807df4e7aa60141a21839f3a7f0f3361984b230000000000000000000000006a1db66bd9a3799c479d50951751cf6c253182f90000000000000000000000004afb2be813f25b64a4299e4d80cb0104eb263f110000000000000000000000008d6a5340892ff437fbae32e877b77ad8fc9372ed0000000000000000000000008e7d5194e22e6e8d657791e61e76b426773d62ac000000000000000000000000df805eb64093620e0d0b7725812d908d3a957ed1000000000000000000000000293f2c1301bf7cbc86f24f21387b0347900dc976000000000000000000000000d73d75682472a715a66eaaf251137cb1cfb2932b000000000000000000000000c41e44750a1dfa01b417a81bdfd917db65ecb9c70000000000000000000000001ca972dbf0fe8a3678eb4cd6b6216c302b67145b000000000000000000000000164273444cd43b8a10383ec55b05d568069f8e78000000000000000000000000e556f3bf56222963ed7bd49aeec8df9f8a03c3c2000000000000000000000000b8b720f5006beeba0926ef417fa075df45017fad000000000000000000000000178bbf1b6fc1a2888bd140776c53f1cb0fa1b4200000000000000000000000004a54a19065fe43858c8848f89a608957f571129e000000000000000000000000a79f55e8fcd7ed2d5e3f3719bdab0bec4a8f3efa000000000000000000000000f1115989dae75ad6f6931c712e55f4d94e36db7e00000000000000000000000002198da26cd4531706e1be1a0404d70ed42cb82f00000000000000000000000078668e3ba2567f5c89cb55878080595ed1ee1532000000000000000000000000f0c3cb91387e3e37be5528586396c8d5ec2d07b2000000000000000000000000fc96c9de38447434259c43d4f2241bd52d71386e00000000000000000000000034e7916d5d8681370ed0a6774cfa8347c1d2c9b4000000000000000000000000233f61cbb69e1034d5d0ddb1a6fcacf80c5c38ef000000000000000000000000996af69659bedb7cf3af7d2135f8127ed30eb47d00000000000000000000000079eb4a5005922da62664b36e269353ff2605614500000000000000000000000016edc91aa1bbeea459e28b01acb1ca8fee79d11200000000000000000000000014d2dd56baecab1b6fc29ec137a0860c0d514c760000000000000000000000005f7ddc4c4586d4b56634a6a976545c843f338a60000000000000000000000000c459dbc87e27dff52f2b21fa2657b9a5bc92b8c80000000000000000000000008480b89ac6ee776f8842a17f66544aea3726c1770000000000000000000000003ae95ad952a26630f43e4498a7a82db20635ac25000000000000000000000000add6a24b7b1e858b8c6769b82f17611b4a638175000000000000000000000000ec125ad722f1f6b2cd6d7aaff88c3c227495b5e000000000000000000000000013b24fa5f19ae0e9f9fa5547c2b5af942afa4261000000000000000000000000e8fcdc329c9bd25eb6d844ec4b4e1b5925ad131a00000000000000000000000003ed7c9768e331fef1c3d6d89cd6454c32273a83000000000000000000000000b423e06fc7b9be29e8cdc616dac87d48e25a7bb7000000000000000000000000bdd31160772498a5915551be812847daa6f388fa0000000000000000000000007b5fea2d7ca3016f0f46e92e9ca40c46974d2ce400000000000000000000000065e309bae5ef3bc484be0313204f4f3101aff102000000000000000000000000836266d230fc857b1e3a1a824c12c59c5925cd47000000000000000000000000b57fccdf3dc709c3c4d0497efbb9a073f6fde5da0000000000000000000000001e63ede600b62f2ff43b3867dc86c8db19f8f2e1000000000000000000000000ffa9f7994d20ba7de035d6fa41e6871687f132900000000000000000000000000224215a3344e3ebf3fb0e3a5104452489f5184300000000000000000000000080827527114cf5e466f52dec6c51f37862f295660000000000000000000000008530f639d68294a354522d1c8453da2e561c001e000000000000000000000000df35a04b5cb35938d2f3c57f49a3ff6a889670ce00000000000000000000000049d6ebdf80d2084252f5aab888f1fcce997ddc290000000000000000000000009322109123b0540d8a4f5a2928ed893631fff64200000000000000000000000039bca683a410753ae85da9eeabd4cb5b5b4d5d2b000000000000000000000000280d0e4920da5808dca7fb76be6d491c0f53331900000000000000000000000083edcd53c07f8751d9ff6f9f0f25dcd9dd371059000000000000000000000000ed2c8fdee39a6841c49b1f78929c1533f5986cdb000000000000000000000000b445f034b4a211624c883c7dc3945a3f6c8f2530000000000000000000000000e9b3fbec34e4c4c96ffbf3975b8ea7eb562504c6000000000000000000000000c30013baa11654cc37377845c58cb2f9a5aca46b000000000000000000000000654588270ff471a15e7fe09e5cc4f4b5cd18b62f0000000000000000000000007a41c650c95360d7ae3281eb4e56dd5d91e3853b0000000000000000000000000fd34a6c0c484f0da7fb00d8d028032406c57182000000000000000000000000dea35742bf7c670e86a11e2306160d92608aba1f0000000000000000000000002aa623258a13585992e2f5d7d50486fb2892d89a00000000000000000000000093e0a367d0d4eee72b7212aa360748ad1e443adf000000000000000000000000bd03308a3b0f1fec0ff6f4ba6d100c3041d3ff3e000000000000000000000000262d2f90f05517739008246a827d58f979424d50000000000000000000000000d1a9570647939e84e1196972d2356a87e1d3ad8e0000000000000000000000004b4184b191e1fcbe428765b4fce813721549247c0000000000000000000000006bada952a80c5e83febebcae62f524b361d1cefd000000000000000000000000a513c2d5d01697feac6e5b3b602489d8c8f84a71000000000000000000000000eb510ed57658e27a60053ca9b64949a550be2792000000000000000000000000494c36b6eb1171229f9ae48df9c28a5e576507e2000000000000000000000000b016b6b24de1598662b22df26ffe27a15bd286430000000000000000000000008faa9997b3f3e5c1054f74cc4a01c312cff68007000000000000000000000000d1325a2f91d2aa8c1b1d10a6f04f2afa8609bf42000000000000000000000000e73104bafe72f40b12869a8479a628513e9aa014000000000000000000000000599deee04a19e3988f5927781c8e93feaa5b3cbc000000000000000000000000138776e605a008ad7985450ded654cf9e6b6929f00000000000000000000000037e8837d0f331c8e0a2ed79245830f6cb5f032ce000000000000000000000000f901cc2811bbc25c697502d8e69c2ae8be74eecf000000000000000000000000aec3079b2a388837667120915864959f64d44b38000000000000000000000000235370c641e9f5b5d5f6b38d7d9a526a7431094800000000000000000000000017146187d85b0d993b068172ff512353b95a64fa00000000000000000000000059f0db6a672d7704ab8c50b088689cec3b69e51d0000000000000000000000006e959f7c452647bbbfaa933f7da967a3d219c1ba0000000000000000000000008c0487bf345d0ae8933f56e4f3e928ece9be88490000000000000000000000000ad8baeee28ce6e9c943393531bb6998ce575be80000000000000000000000003cc7aa3e9b09b337ea45d4618e6818bd005083800000000000000000000000009b5faf112141311e7c5a3e5e20cfbde67a794f590000000000000000000000006d299b48d9adc5c7ed195000123c240906ae343800000000000000000000000042e0060017f153e920005588853f9567fa66695000000000000000000000000077ad6189b5bdfadffb3e30885c06d5237f463e72000000000000000000000000aada7a57ff9a21114e1770ae1a514e53c3de702600000000000000000000000015fc9b02da0970f8edf6e4bc6f799eab79eefb3f000000000000000000000000a0665ccb5b21b3b4671403a26990fd058b7ac1cf000000000000000000000000ce6eb0f503ceef7b4af79f5d5a97451883b5e1e50000000000000000000000004d188ecd8f036c83c244287c31bdc870535483c0000000000000000000000000cbb8dd6ab53c0bf758e74673271db045ae70369e000000000000000000000000df4417ba80b9608b719276c917ecc5b9e5d28900000000000000000000000000c8ad2e37f5ec15a2dc3a729204f42b6f0d6288530000000000000000000000000a474378e948ddaa23b081d366b66686848122d2000000000000000000000000323dc376282e0865f2e1fe112058462254d232340000000000000000000000004a86d53fca883ce12e293500454ea2908b990132000000000000000000000000736ec392eb92af50589384849f3a8f621f025544000000000000000000000000a81291a386e72b17720f323dad85fc4cbdbcd16e00000000000000000000000067cc5ae0040a911f1bdd663e38e30a8044c9257100000000000000000000000030e7e6801d9762c365194de429cde853349556f90000000000000000000000000393cd8d20c2f102f7c342bcfa647d0f5149093200000000000000000000000094a3778d6ca52ce6b9637f267cb805e6d2e7ccb2000000000000000000000000386e91e3a79fe2045a060fa7e5402315e4ce8a08000000000000000000000000c3705a64373352a881cc8f72479ebf3a91db18fc0000000000000000000000004dca8d2752945d0553e3e34d0be3f9fe76729c5800000000000000000000000072c5169dba0a9ee86aef8a5233e91a88cc800ecc000000000000000000000000e37dc84a55a334e1eadc3ffbbca629ba9b823abc0000000000000000000000005f9c4d6436c8b9c4def47e0e26bf31fc8473f1c800000000000000000000000024b59fb9f305a5700c3befb3a8c32ba23d234739000000000000000000000000fbe867c0bfd74fa7c1c39b194fedc11a002248e5000000000000000000000000c825cb06154f4004ffdbfad1f97e1dfe29251faf000000000000000000000000521d7158a6b4d33c6bd89bda56b8cb5b2a06631900000000000000000000000009cfdabcb4e1ec731aaa3ea6190184f11859abd100000000000000000000000088a6b5d70ffdff6b82d251795b50428b3bb481170000000000000000000000007b98a7f57bbfb618c16c195475426180f611607700000000000000000000000094324971d9f0f1c27322d0ed7607a1177d87b26700000000000000000000000038a04bb3ce0b2b7e8da4bf56b6a56290d83f4ed30000000000000000000000009025102b2acd3b962da4e47978d0eb16458bd9db000000000000000000000000d97988491e71dd03d5415e62a7a8b0c49e7147b2000000000000000000000000ba2b7d6d40d56d60cfcb3e7ac2b4d68365c308350000000000000000000000008c06d0aa13504437094e29a75bb4bc9265f45b4d000000000000000000000000fe3cb3c474aa83668e828ddfcb8459522ae40bbc000000000000000000000000dca7bfa8b6bff2d337194d3d2c1cc0cc20d22c10000000000000000000000000ae0bf36d9ca8bcff08b0212a659228cc16a4e8ae000000000000000000000000e08b35e5c5aab97cbfc6266883832dacd3a5a05000000000000000000000000023b3777036ae4ae9bd15faaaaa0a96dc27cd274d0000000000000000000000001e5361146582a9c2a32cade53a3a89813ae57168000000000000000000000000d50cf90663f456da5aa3672690d03bc97ba24d3a000000000000000000000000a0782e75f9ebb2fdcc2478d520aa92950a6cf7500000000000000000000000008087e4d6d4291778c9ce4143a11bef2b20f3140e000000000000000000000000285be5201ff4e9a55ab0265ad9de084c23064136000000000000000000000000cb3ea946316c7bc2f58135431731fefb12ab6382000000000000000000000000178cc437eff1d71bea766b20e7b78d83372f2128000000000000000000000000b2327e2bd254afdc0a609e4da4fba555ee00d286000000000000000000000000ab6d6565cfead6b973ba1e5a959e4033dca5e3ad0000000000000000000000004549a16b23c177837970762ab3750486a5d49f0800000000000000000000000003c6864fc2cfc9ebc47ba83863ac9151098dd41600000000000000000000000097c6bee26821db970a4c8d2e5568ffbe7269b41d0000000000000000000000006d3c8f761a29f62cb5829ce6dcfd7e73641f247f000000000000000000000000530e6ecd167226f3048d13a8f6eba3c1ddddbf9c0000000000000000000000007c0078e427363fa2015de03b4168369413fbf6890000000000000000000000004ee02e4e26054b830b20739f7dec3528b1f19320000000000000000000000000d432236156c0df043347c7c6a092b6781fae48ce00000000000000000000000011e4257c8282f26b5d720e7565e125d557eb0a2c000000000000000000000000d092e9ff6913f6473beaad95909821dad6b499dc000000000000000000000000fa8f8c14beab1e73eda17f3df74532eee7d66b0000000000000000000000000000432fbd1017c3c90af4835f71ef277fc28f4361000000000000000000000000ddda7b0e7776b6a008b3e67baa0b24980480b9bf0000000000000000000000005bcacfcb6fb2a750ef490ba3e723ad7ca574d5700000000000000000000000006a02f288b80d96675e9770a88e99618fdb8a5ad700000000000000000000000064965fb65fb2da8e67534618f36df2d2f78970cf000000000000000000000000580e42791e1904bcf6f1f36212f652979f6d03cd00000000000000000000000053d153e46655937fe1a3f0a48c716f5db3b66a210000000000000000000000002377c6d05d8b8af3c35318099df67defbc29a249000000000000000000000000886fa99a190f58f51540bf316852207e4a8e816e0000000000000000000000005b9dfff627356b40c19d7253d657418483e4e997000000000000000000000000fdc4d55f97a8105031df2c3cbd04f154549b67a5000000000000000000000000e70299b2b9b029c5bc8184d6fe1a57e4b62e532e000000000000000000000000ed78abfd1d85cfa6bf8bd6c116e90c46dee9ff1b000000000000000000000000dd0809970cd98ae7aaa42d6b4e8776eae61a06fd0000000000000000000000001832c65105da10caad98b20e3a079d1b29cd0bdb000000000000000000000000b5d12a3c979c36da416ee3997fdbb4aff1e9dea9000000000000000000000000a2b76678d05a6132aef90bdb3e1419e22852046f000000000000000000000000ae21b65c913701d5580a9457bc8bf38f4637a03800000000000000000000000067fa2c157c917a7db2525f79cac54de2c5161dfb0000000000000000000000000dd79037f50917efde3d8c440f874360c5a8b9aa000000000000000000000000f115c81c9c7d1317416f83d42579f6038485e071000000000000000000000000a41135722858d2e5a5c35a8c8326eeee2a53c10b000000000000000000000000f9bc3e0e7c594558eadffaf64970f2c0f3cd19450000000000000000000000002d32067dd357dfec3fc667fc7e1c093269cbc41d000000000000000000000000059f9609ccf838a1b488faf2073510d0b3edcc4c000000000000000000000000871ea3cfb0ed8606cf56f9f15d9dad12206428e900000000000000000000000029243b13c0ef1f45a7b6e17f9ca7ee6aacdb64a000000000000000000000000070fd628d255e9a2636d80d61bd33cee5989ff793000000000000000000000000124c840b229b8c20473d9910ba9f1bdd641a5124000000000000000000000000d55c19cc9104f9d4d1b4c841fd71db982c26a6b8000000000000000000000000da8400463684a3374874d45fc99be39a02f21af6000000000000000000000000668e746d9241b768ac67f9281b304d1f710a0f9b0000000000000000000000007da616285fccf0d4385a759a4aedd0cac34c28360000000000000000000000009b20998a946b2a5ae8dea92920d833178305686f0000000000000000000000007bacb1d74ca802219d3af1e5d57e16344cd255c6000000000000000000000000bab00cbb478c6833b3602cac64017d11262434f900000000000000000000000026f81f9ac37ca043cef328e274fa5b0828c61f5b000000000000000000000000e4499ce683014ed98d8750fb28c472ad834f05a6000000000000000000000000182daa17237048a8a5745d53aba692f91f1888ab000000000000000000000000f102822a6ba3179e9655000d4d25879d6c959773000000000000000000000000be48311ed5301de98543190b5bb09eefd56a1af900000000000000000000000022c49e09609e01571dcfed2f397f689c1cae77f30000000000000000000000007ffebb6a20be80364d42cdb8b5a2767f4ee6c4bb0000000000000000000000007192507bab00a0f4a0d594c3058b8b2933f1aff2000000000000000000000000b04ab601bac0c1c4a86e51eb89f0f825a78a622e0000000000000000000000002b61f81d468b14d4fc9a4deb1b608266619e48d9000000000000000000000000f7b9995d750892c07010d7d8552f4fa072049a2900000000000000000000000007ae44dead8f9d8d35d94f177a26050594b0d79c000000000000000000000000df147afbbf70b900524921eadec587bef68379d7000000000000000000000000256e1a42ac82dcfff8669318ca47b361837df3d1000000000000000000000000eb453d4d1e133f66931207601fb26b7ef07a6cc90000000000000000000000008927bd13f41c43a66f7d3c07ee6126c7f9c4ff210000000000000000000000000e8a528163d269a91437c57d3a4e2dc2ec6b02090000000000000000000000000130364637853a4a337eb2f8ca6ee2f29f4b87dc000000000000000000000000a4246c31207746887f7c09c58d4fd75dc59b81bd0000000000000000000000001c02d382f69325aa257ab845957086be347d8a310000000000000000000000004df3bfd987dc47058f50c7e5a57f25672102a9050000000000000000000000000b5e5081b62ad1cfc478aaee2c2b4d4b60ef2e970000000000000000000000009479c57b70ed4d0052cc9408697a997429207d7800000000000000000000000045a1589f134910c2a4954cf4650b5583a3eaac0c0000000000000000000000003b24038a08bdf9b9617f2c910379cf0b56a5c36600000000000000000000000096e17f57b1baa2371d7ac307f4ef25da45b0760c00000000000000000000000043d01e03af604490eed8e8f9b7858f930ed46f3100000000000000000000000006eed855c0e1bcfb95d46f1a464dafa594c2228d000000000000000000000000f75140c3172c318b24fd3f64e850a4979762bcfb000000000000000000000000193cfdba605ee2e73939ad90454bc59365357b13

Deployed Bytecode

0x608060405234801561000f575f80fd5b50600436106101bb575f3560e01c806396fe6bf3116100f3578063cd970edc11610093578063e124173f1161006e578063e124173f146103be578063edf26d9b146103c6578063f2fde38b146103d9578063fb289354146103ec575f80fd5b8063cd970edc14610380578063d55488ee14610388578063d6565a2d1461039b575f80fd5b8063a1c922ee116100ce578063a1c922ee14610355578063a63685571461035d578063a73125a514610370578063b3d3d37e14610378575f80fd5b806396fe6bf314610327578063996766f01461033a5780639aa1b67014610342575f80fd5b80633d7821e11161015e578063715018a611610139578063715018a6146102a75780638da5cb5b146102af578063959c5226146102ed57806396d0d37414610314575f80fd5b80633d7821e1146102615780633df32c6d146102745780636212980414610294575f80fd5b8063269703e511610199578063269703e51461021957806330d2a1981461022357806332f6f96c146102435780633687d90514610261575f80fd5b806306bc7db8146101bf5780630bcc0b9b146101d4578063234feaf214610202575b5f80fd5b6101d26101cd3660046113f2565b6103ff565b005b6101e76101e2366004611466565b6104a9565b60405164ffffffffff90911681526020015b60405180910390f35b61020b60025481565b6040519081526020016101f9565b61020b61047c5481565b610236610231366004611466565b6104da565b6040516101f9919061147d565b61047d546102519060ff1681565b60405190151581526020016101f9565b6101d261026f366004611517565b610689565b610287610282366004611466565b6106a3565b6040516101f991906115a8565b6102516102a2366004611620565b610745565b6101d2610803565b5f5473ffffffffffffffffffffffffffffffffffffffff165b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020016101f9565b6102c87f000000000000000000000000cb337152b6181683010d07e3f00e7508cd348bc781565b6101d2610322366004611639565b610816565b610287610335366004611711565b6108bb565b6102876109aa565b6101d261035036600461174b565b610a4c565b610287610a62565b6101d261036b366004611466565b610afe565b61020b610bbf565b6101d2610c6c565b610287610df0565b6101d2610396366004611466565b610e18565b61020b6103a9366004611466565b600160208190525f9182526040909120015481565b610251610f39565b6102c86103d4366004611466565b610f43565b6101d26103e7366004611620565b610f70565b6101d26103fa3660046117a5565b61102c565b61040761115b565b815f5b818110156104a2578484828181106104245761042461180d565b90506020020160208101906104399190611620565b60a76104458386611867565b6103d581106104565761045661180d565b0180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff9290921691909117905560010161040a565b5050505050565b6003816103d581106104b9575f80fd5b60069182820401919006600502915054906101000a900464ffffffffff1681565b60606002548210610517576040517fefe6357f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f828152600160208190526040822001549003610560576040517fcb85efac00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b604080516103d5808252617ac082019092528160208201617aa0803683370190505091505f5b81811015610682575f84815260016020908152604080832084845290915290205415610623575f8481526001602090815260408083208484529091529020546003826103d581106105d9576105d961180d565b600680820490920154610600939264ffffffffff600591909306026101000a900416611867565b8382815181106106125761061261180d565b60200260200101818152505061067a565b6003816103d581106106375761063761180d565b600691828204019190066005029054906101000a900464ffffffffff1664ffffffffff1683828151811061066d5761066d61180d565b6020026020010181815250505b600101610586565b5050919050565b61069161115b565b61069f6003826103d56112d2565b5050565b606060025482106106e0576040517fefe6357f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f828152600160208190526040822001549003610729576040517fcb85efac00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f610733836104da565b905061073e816108bb565b9392505050565b6040517efdd58e00000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8281166004830152600160248301525f9182917f000000000000000000000000cb337152b6181683010d07e3f00e7508cd348bc7169062fdd58e90604401602060405180830381865afa1580156107d8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107fc9190611880565b1192915050565b61080b61115b565b6108145f6111db565b565b61081e610f39565b610854576040517f7762060000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61047d80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168215159081179091556040519081527fc18e4e9c131e3d0104645210b9d15fe159a005ad6ee21c210ad23afaace182c5906020015b60405180910390a150565b60408051602081019091525f808252606091905b83518110156109a3575f8482815181106108eb576108eb61180d565b602002602001015190505f8190505f81604051602001610936919060d89190911b7fffffffffff00000000000000000000000000000000000000000000000000000016815260050190565b60405160208183030381529060405290505f819050600188516109599190611897565b850361096e5761096b815f600261124f565b90505b85816040516020016109819291906118aa565b60405160208183030381529060405295505050505080806001019150506108cf565b5092915050565b604080516103d5808252617ac082019092526060915f919060208201617aa0803683370190505090505f5b6103d5811015610a3c576003816103d581106109f3576109f361180d565b600691828204019190066005029054906101000a900464ffffffffff1664ffffffffff16828281518110610a2957610a2961180d565b60209081029190910101526001016109d5565b50610a46816108bb565b91505090565b610a5461115b565b61069f60a7826103d5611370565b604080516103d5808252617ac08201909252606091905f908260208201617aa0803683370190505090505f5b82811015610aed5760a7816103d58110610aaa57610aaa61180d565b0154825173ffffffffffffffffffffffffffffffffffffffff9091163190839083908110610ada57610ada61180d565b6020908102919091010152600101610a8e565b50610af7816108bb565b9250505090565b610b0661115b565b6002548110610b41576040517fefe6357f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6003811015610b7c576040517f8ee8b6d800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f81815260016020818152604080842090920192909255518281527fc375b476f60114a80a5115e566054666202bc89c0d65903e3d90cc0007149f9791016108b0565b5f806103d5815b81811015610c64575f60a7826103d58110610be357610be361180d565b015473ffffffffffffffffffffffffffffffffffffffff1690506003826103d58110610c1157610c1161180d565b600680820490920154610c4f9264ffffffffff600591909306026101000a90041673ffffffffffffffffffffffffffffffffffffffff831631611897565b610c599085611867565b935050600101610bc6565b509092915050565b610c74610f39565b158015610c9857505f5473ffffffffffffffffffffffffffffffffffffffff163314155b15610ccf576040517f7762060000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6002545f90815260016020819052604082204291810191909155906103d5905b81811015610d9c575f60a7826103d58110610d0c57610d0c61180d565b015473ffffffffffffffffffffffffffffffffffffffff1690505f6003836103d58110610d3b57610d3b61180d565b600680820490920154610d799264ffffffffff600591909306026101000a90041673ffffffffffffffffffffffffffffffffffffffff841631611897565b90508015610d92575f8381526020869052604090208190555b5050600101610cef565b50600254604080519182524260208301527f3b5ce8b2d475067181f949f668899c93f26f0b25c5f8712ebca6b4b93d92989d910160405180910390a160028054905f610de7836118d8565b91905055505050565b61047d5460609060ff1615610e0c57610e07610a62565b905090565b610e0761047c546106a3565b610e20610f39565b610e56576040517f7762060000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6002548110610e91576040517fefe6357f00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f818152600160208190526040822001549003610eda576040517fcb85efac00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61047c81905561047d80547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690556040518181527f3b0f37561752b99d939ff216fcadbc6fe72442faa8303a5e97be988759a1b011906020016108b0565b5f610e0733610745565b60a7816103d58110610f53575f80fd5b015473ffffffffffffffffffffffffffffffffffffffff16905081565b610f7861115b565b73ffffffffffffffffffffffffffffffffffffffff8116611020576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f646472657373000000000000000000000000000000000000000000000000000060648201526084015b60405180910390fd5b611029816111db565b50565b61103461115b565b805182511461106f576040517f568efce200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6002545f9081526001602081905260408220908101859055905b8351811015611104578381815181106110a4576110a461180d565b60200260200101515f146110fc578381815181106110c4576110c461180d565b6020026020010151825f015f8584815181106110e2576110e261180d565b602002602001015181526020019081526020015f20819055505b600101611089565b5060025460408051918252602082018690527f3b5ce8b2d475067181f949f668899c93f26f0b25c5f8712ebca6b4b93d92989d910160405180910390a160028054905f611150836118d8565b919050555050505050565b5f5473ffffffffffffffffffffffffffffffffffffffff163314610814576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401611017565b5f805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6060835182811161125e578092505b838111611269578093505b508183101561073e5750604051828203808252938301937fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f820181165b86810151848201528101806112a85750505f81602084010152604081018201604052509392505050565b60a483019183908215611360579160200282015f5b8382111561132d57835183826101000a81548164ffffffffff021916908364ffffffffff16021790555092602001926005016020816004010492830192600103026112e7565b801561135e5782816101000a81549064ffffffffff021916905560050160208160040104928301926001030261132d565b505b5061136c9291506113de565b5090565b826103d58101928215611360579160200282015b8281111561136057825182547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff909116178255602090920191600190910190611384565b5b8082111561136c575f81556001016113df565b5f805f60408486031215611404575f80fd5b833567ffffffffffffffff8082111561141b575f80fd5b818601915086601f83011261142e575f80fd5b81358181111561143c575f80fd5b8760208260051b8501011115611450575f80fd5b6020928301989097509590910135949350505050565b5f60208284031215611476575f80fd5b5035919050565b602080825282518282018190525f9190848201906040850190845b818110156114b457835183529284019291840191600101611498565b50909695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b604051617aa0810167ffffffffffffffff81118282101715611511576115116114c0565b60405290565b5f617aa0808385031215611529575f80fd5b83601f840112611537575f80fd5b61153f6114ed565b908301908085831115611550575f80fd5b845b8381101561157c57803564ffffffffff8116811461156e575f80fd5b835260209283019201611552565b5095945050505050565b5f5b838110156115a0578181015183820152602001611588565b50505f910152565b602081525f82518060208401526115c6816040850160208701611586565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169190910160400192915050565b803573ffffffffffffffffffffffffffffffffffffffff8116811461161b575f80fd5b919050565b5f60208284031215611630575f80fd5b61073e826115f8565b5f60208284031215611649575f80fd5b8135801515811461073e575f80fd5b5f82601f830112611667575f80fd5b8135602067ffffffffffffffff80831115611684576116846114c0565b8260051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f830116810181811084821117156116c7576116c76114c0565b60405293845260208187018101949081019250878511156116e6575f80fd5b6020870191505b84821015611706578135835291830191908301906116ed565b979650505050505050565b5f60208284031215611721575f80fd5b813567ffffffffffffffff811115611737575f80fd5b61174384828501611658565b949350505050565b5f617aa080838503121561175d575f80fd5b83601f84011261176b575f80fd5b6117736114ed565b908301908085831115611784575f80fd5b845b8381101561157c57611797816115f8565b835260209283019201611786565b5f805f606084860312156117b7575f80fd5b83359250602084013567ffffffffffffffff808211156117d5575f80fd5b6117e187838801611658565b935060408601359150808211156117f6575f80fd5b5061180386828701611658565b9150509250925092565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b8082018082111561187a5761187a61183a565b92915050565b5f60208284031215611890575f80fd5b5051919050565b8181038181111561187a5761187a61183a565b5f83516118bb818460208801611586565b8351908301906118cf818360208801611586565b01949350505050565b5f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82036119085761190861183a565b506001019056fea164736f6c6343000819000a

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

000000000000000000000000cb337152b6181683010d07e3f00e7508cd348bc7000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000002ee000000000000000000000000ff64711628dbfbcd11b0b6252ec7146ee487a2c90000000000000000000000005a04b9ae934adb10dc90ae561aff19df977021750000000000000000000000000bfb75c571635fa2d4262217d5f8e5018aeefec9000000000000000000000000156d5f8a20d4f843a53b406fd9d3e1a453ec88b2000000000000000000000000126bb405c188da691e708bdab72516da922854a3000000000000000000000000f4d405a7a4b2585d6c969fc5aedae58a9a7761b5000000000000000000000000759670ab95d3a8d5fb1c1abff8cf0023fd7e107b000000000000000000000000bc7984599b94fc36d4490f4a41efd936c53a8c01000000000000000000000000c636d893757038a726eedef02374ed3c7091bdb6000000000000000000000000e06c62cf8c544f16e7119fac27a9b0c8929efdf90000000000000000000000002d90ff82ddcd4728652c384a95d5da0e2aa0e32c0000000000000000000000001766962bcbbbf97b739d96b0e7ed924632f15f4d00000000000000000000000045662c7d4f483a78b7271c4f579642d812f7986e0000000000000000000000001cfabf69b9b4473c76f60260863186854ffbc013000000000000000000000000846694b2d79854832168b1e84038b1492aad0177000000000000000000000000abf1daaf720e052289dbd906fb31ca9bfe7643560000000000000000000000003b58f2becc244566f214bce21ff08e6d7653949900000000000000000000000074a2fac446cfb90346a2329bbf6e875083e814ef0000000000000000000000001e0a2fbffc3e7ad2450b49503b77fca2976338e4000000000000000000000000eec47b9ac18be439d083901c5541be486ece75ab000000000000000000000000be20f60523f5e4940a0717874b1cf8c605191e7c000000000000000000000000b39f9555ae21679116e33ca9b7b484f154251d700000000000000000000000009777fd60902b0b842fb72ad975717b46a9d02387000000000000000000000000193d3c14796c068dbd239f76b7f68af9ce89e9f00000000000000000000000006eae0f716dc7316f3b95b7987c0af33192667be400000000000000000000000093f8a4081a29dc28139da9673a503922c5f2ee3d0000000000000000000000002f6860756bfb8e95eb7ef470c68ca213209fe1e7000000000000000000000000335df126edd17538ae04f47b8217ef64267b875f0000000000000000000000002719aa2df4f6b7a6834053130d3a174cde9e14f5000000000000000000000000dfaa80158aff56718dd4b07bc7cc61a77be1525b0000000000000000000000006ba56fc69f2a4b649e35cf0b7b8f4eef09bd630d00000000000000000000000040a965dbc477aec8673070e765328fb60ac64a7a000000000000000000000000590fdf16c47fa15dce9a857c157577b3e290a1ba000000000000000000000000c4534908f0acac882dd1f91cb4002738317078d3000000000000000000000000455f9682d03b333a0fd2c1be72e22fbf6ecf6261000000000000000000000000e6b295e9dedd3674d0903833a21435ac234d8319000000000000000000000000a9c0d05fee7aa68241546a4584946c4ad9acab6d0000000000000000000000008c476cda3693163a877da79f6c8ce9db7e3256cf000000000000000000000000dd0bbf3eae9b6b9215a3a081db7fbe54b9fda4a00000000000000000000000001c17d7ecbd2ff20d8880fbf3b7abadab9639beec000000000000000000000000e6e816639f7ac059353f510045bde88b092b82ae000000000000000000000000feadb4a4d27787afb95cfbd8dbfb95dcfc51bf11000000000000000000000000be951967b0fc960cf41636d267b15fcbb5c7fb630000000000000000000000000fe70bcca223618b67dc681d44539185a2b923ee00000000000000000000000034c0f60f44a7fa8d0539afed9473864b187cc24100000000000000000000000034a1af47d918a0e93a5b3c98f3c25d4ee887f85d000000000000000000000000c0057a2c1523d7f4aec9bc578e5b5f48070a974e000000000000000000000000fbfa558c278d25258349001e329c5b150a452b95000000000000000000000000e76b3ab1db2fb5b796b44cf5c8a0c1f51e99f3a00000000000000000000000000157a61200d120b6a06d998587f96f5eff2eef9a000000000000000000000000509a04ae924b52e7b5caca3c98fd08e2629db9a000000000000000000000000014ddf4a3c017a7beaec099bf1029f46422341038000000000000000000000000a2a0aa2851ac59b62f8f79d4a0d1be85a65c80790000000000000000000000002c0fd5b15ff3253377c32f730effb35e92307e82000000000000000000000000b8fdc52cf0376188637bff67a137b6735a8457f00000000000000000000000006e13afbf988f39fd7e9be0370e4c34e91270e1ba0000000000000000000000009a38ede54ad7ea8acf3bc7f9c8f7b08ab19abcfe000000000000000000000000efb5111e6fa2c8d392a1376ac1572076fbce24870000000000000000000000009c97bba95a67ab00a33cf3890df051f4b29e2bec0000000000000000000000007b3353cb47e45a44c59c5d4f63ce5595cfd2f5a30000000000000000000000004784351ec65d8f6bf6ba7698e4e79b8026f38f8f00000000000000000000000089dcf3e6166cd81a6e4e8b06e1185356f8cc089b0000000000000000000000000f4c072203451cf21342e844780ae0ed4d4adfa2000000000000000000000000bb0a6802e633f97980a8fc91386052ddff9892cc000000000000000000000000cce8cb7dc680d37ed56ec47c14ca171c5c58022f00000000000000000000000015e7b478de6db3cfa85cda3257d394d79e8baf8200000000000000000000000014d74333106e3210f289464d19d66cc0bcecdf430000000000000000000000007bdf2c5769cda7c12f48f9d0f1b07d8d0a57f128000000000000000000000000ef490377ee6f67c57d63dade3d8434b17e5959ce000000000000000000000000aea98eb953525e65f7520f27cdfed4dcbca6023f00000000000000000000000043ebba6b7a1ed74a7c5b7be4710157ce181be0ed0000000000000000000000001b98f45b29a5cf471ade3cd2922a9fadc6a693ff000000000000000000000000fbc31f8a580f00e317d9008ae10ae362afb2984100000000000000000000000051dca3cec3942cfbbc7cf6b89dd5d9755bc52438000000000000000000000000b69e265bb2b6c31b1a5bd8dde6fcab858a67a44b000000000000000000000000c46c6a6342497b7530634505c08860050c0246cc00000000000000000000000069ef6279b0b454577e685395410a95d873e9d82a000000000000000000000000c3ad5ece058b3dfeaca013d33f62ff5bdcf1ba610000000000000000000000009e7e18a1c92bbbe9f7790e6e1296e7716869d7fc000000000000000000000000f9e2f9d1437dbdd0bda361f7f91740233c7ad0330000000000000000000000002abbb9754bd3889d9bb5c9659c0d825290631dd40000000000000000000000006955faf89fd43387eb6df55f40dd69b57f484c59000000000000000000000000faab692accaa3466ce867f6597f816eb9342fe7e000000000000000000000000050d7c826c1f4554da2bd2868b8d3784730973c50000000000000000000000006bf3e88697474b718eb08bd18e684b655d331ee9000000000000000000000000e28d5f727080f8b5c0448218def4c1f111a87202000000000000000000000000d695ba03fd7b4f6da5e35f3e62dab57ae5363979000000000000000000000000407729f78710c2ec5d5efdced2045cb15bd6dab0000000000000000000000000b73043aa6a272cb7e02b96123ca8e25687f49d27000000000000000000000000b8554fb491c97c65201a5e736c7e917b9e37be890000000000000000000000007fd492dd7041e5a1500ff8e3e4f0564ed5185bf70000000000000000000000004238fcfdba55536e9db5f10abdb2084ca32e7e8d0000000000000000000000007af585b1e2aafe57fec14935e06562b1943881ef000000000000000000000000755d8a61eff9be5eb60b3da381f378d36aabbe73000000000000000000000000ef5883d6836b006f64a7cb2a9639e23d7d2825b40000000000000000000000000f122e32934bdff19e34d213329fcc2ffec9ef900000000000000000000000009a7a93df8da07ef4b08366eb2a4d2137b4821439000000000000000000000000e96853d9cff5ad698611709fa11e29f8dfcf89b80000000000000000000000000d1702572889cedb39ed459018bab9711ed5962b000000000000000000000000c2c287d082f3ef11dcd413643cbfd56c557f43bf000000000000000000000000a6d59e052e80ab7adea26858f4728f185a1b97e7000000000000000000000000cda159b2193bf694835c970a499eccd6de6e801a000000000000000000000000f2614d8239940785a44bea5b36808cbf8c486c550000000000000000000000008fed0fc57669808acb9edb487318ab2843a2199e0000000000000000000000005492592eecc026db44c6b80bfee17d32fa4c0072000000000000000000000000a43f87af2fa9d5b98781368300fce0e33c0533820000000000000000000000000e0b7570b97e3078d90284f9365d1f84ad9f213e00000000000000000000000038f36be3b0e098a3347502f025b958d9d89b3d4600000000000000000000000077e9cbf615ae524555ab1ea0195a91b1e1214bee000000000000000000000000ff990648740c1ca5895bee07b832a3af204faded000000000000000000000000b67f1f2ce9452ebea814b2f97801e050cd9c3eed0000000000000000000000000ded72d6bca9ca5ebee4c03a2490d99a7d0dc884000000000000000000000000e9859cc94d531625cf8b2b2cd737ca637a9271a8000000000000000000000000391c9f4537afd45e82e0510b67d0d460cbff725a0000000000000000000000008376ec7bf0e430cf902302605ffb31a86a21c5a7000000000000000000000000cecb55950b8c94bc472945cc3c5a31940e2d0c040000000000000000000000000c38c28d31c80496aa02019f322dd9fdfe8e3aa7000000000000000000000000bc30a9d8abeed4c7b2c2cee1855e198916c5d8c3000000000000000000000000553abf9546d73eb80e278d2c820b5ed0353142c80000000000000000000000008abe0004d749cf98c0fc1e09e797b76adbe8aa530000000000000000000000007964306610b3c0adc9f34a11bab89f3268d7154a0000000000000000000000003b5e17848a468315b7b6a0d087eda78c9b677e30000000000000000000000000d7a831448a9a9bb8cf294f11b12d4fc64ba97c810000000000000000000000008c7fb9526e8139a90ffc4058ae3268fb906b4d6e0000000000000000000000002b860d532e0be424b84468219e4783cdb75a29380000000000000000000000004e334cabd169302b05c52c8a8e61a0aa7ea7b0ab000000000000000000000000e0c0a33416f26712e4f59e8a2a345609b4b6dddc000000000000000000000000a7645abcde52cb2e8c8c5879f7e339a5f6e5c6f0000000000000000000000000c4c73518946aab4a73578e3cdd85ec959deaf9810000000000000000000000005958411fc670fe546f3c8c844c7b2f134cb43ce10000000000000000000000002d329ff45ccec77dc5470b4cbfba82dd8faefaa20000000000000000000000005b38a1056e77db49a838a26b1cdfa034e34541bf0000000000000000000000003d31e5c9f7cbd59050609a1a3c3686d4d08c3008000000000000000000000000f5aacaa00b7bd992b3a303de095bc5da7dd49916000000000000000000000000e4713b06aba976fc17b168595543056f1292252a000000000000000000000000d5c1a5036b29c386ab4f5dba273cf36c0fef73ac000000000000000000000000f72f0a858d7d13d095f7faa098fb624b1c109936000000000000000000000000cffea90e4376b96c53a99851ba8c86cb9df600f3000000000000000000000000ca446340b52433f9a25206ed4db4b333ace322990000000000000000000000008d3904785a581c58f19dc03415fed16536e0bcc600000000000000000000000073d544e64adc9781b83c4a8fe65d45ad53a9a1af000000000000000000000000e8533d989165aaf2fd618e1cc2b451d6d8263eac00000000000000000000000056e09255580deb918e90dc945e14bd7725017179000000000000000000000000edc8cd9de64eedb5f57b559a9825b856809496860000000000000000000000003754b101248a237ad3743def947dfbdd3e7454150000000000000000000000008ff9df4bafb72dce69e175e4d515b43c2bdf6286000000000000000000000000fa399385db7d133dc098d356a75254e0978cb78a00000000000000000000000056156009fa9d026e04fd76b312df76fbbbfbaeb1000000000000000000000000b00b7d03aaed54b7e5edab994a136713844e8957000000000000000000000000efb8ac07c92cef03c643cc5b540ad12da4803484000000000000000000000000ac9dc3ea39797ee5484f485b2980b535d5a3c1ed000000000000000000000000fac80ac986ca527078eccbc93efd93a1d3a6aead000000000000000000000000b35fa4a7708b746030267a1f55ccc27cca1139f70000000000000000000000003c84d2015378a7376010bafc5efc626e882335e800000000000000000000000023998a620f3605fd6c0bab43834ef896018b455400000000000000000000000074dbb176b72b7a82d771263460ef7c019acc99400000000000000000000000002e67c48a85d34e1645db8cf8b1c7e3d117b531b600000000000000000000000094e0b3ec075f33486d04271be6cdaa5a1c38652e000000000000000000000000c16603e0f85beed096fe229b74f94a43bc9c7c430000000000000000000000003f786e0bfd61ffa1c13e144b231dc43ea72189fa000000000000000000000000b09e35d7e811a17dca3e5a2ceea63054ee28a0740000000000000000000000006d57f3b7746e41158e85b272de45c7aeb0e827d60000000000000000000000007bbeccacfedffab879f6ea0e663e60f8c2074dc0000000000000000000000000cf04dd9b77a6785712eec5f3105e5b2cb94da97c000000000000000000000000f1711a20953f21ba699229bfc38735489da1a69200000000000000000000000037415fee9206978cf2377e32f40836ac1cccc62f00000000000000000000000088cc6756fb0057f294d5f9363f8403512ce6dc440000000000000000000000000b07725e54de7671b1a089f6122c928c49ce1f83000000000000000000000000992d903a8167f5a4a13ec70c65b05621f222eca6000000000000000000000000274d6ddbd2d43fcb58ecdf9aa7d798fcd49c1a400000000000000000000000002cd17e77cfa662a78c1764c18419181effd3e1910000000000000000000000006b79b82c5cfc8230bcb9347d093b81d97d31e562000000000000000000000000dadb0b3792f47b0e2db587696fcacf0457a3ff4c000000000000000000000000e22883b8dcd695843cb7875f2086da1112f0d9510000000000000000000000007d8fc49bee312670f68363eba2af045ee695a8590000000000000000000000006b2a50571b076da4b92f4308919fe5ab1cebf01f000000000000000000000000439c8b04f605752179a373ed5bbfbee2876fc6c20000000000000000000000008ea3a85ac520a3e26736d571d33676ae97e9b583000000000000000000000000d909123d846aa605cf7127ad178f7e4a9dba8b4f000000000000000000000000f32e51e28210229910c7cde4c9d42f18cdd5385f00000000000000000000000030bd068c5fc5ebb87ee395b043b3cdd1c1378d4b000000000000000000000000e1cc7f949c70b803b5eca226429936dad535a213000000000000000000000000d180834039e772feb34c6b42b206eaf1e582854b0000000000000000000000002b9ee87e5b597bf042b0dc588f45cd3e2b1473d60000000000000000000000004d1570b56cdf3048717e8c287c9ad9fa10a35f11000000000000000000000000480df72243d119d4826a733e00a7b98563cc449f000000000000000000000000211daa831dd902997152b7c14c23c09e4a503914000000000000000000000000990c214889334035879c4b0e70d17da9f77034830000000000000000000000000e11bdd390085a3cbe7be90b22c9f56f18e8ef110000000000000000000000009aca9398e804df364b72b36ebba8cf8433e0c999000000000000000000000000ac08efb3deefe763ba4e3b210c975ccdfda738a400000000000000000000000062f250495cdcbc332b656a8482c5a24b57171e440000000000000000000000006961349e255c81ec2e37c9ffee54bb169ccf86dd000000000000000000000000039e83cf3971434b6e256cc3e467379466ab93130000000000000000000000005c1486c77957d019525e08bdb37b6c5bb0d8f18800000000000000000000000074708aacf09583fd25d1c9afc18c8f69f4417acf000000000000000000000000389b7f17e1ea1a02495fc8e6a9ed63a60cedb243000000000000000000000000b7362cde6dc4ea6a44d46bf23544898721444c8c000000000000000000000000b0024fb5c16705edc5c3e8f66e5f79f864e952b90000000000000000000000007066014277dde23cd88718504b7dec8a398245ca0000000000000000000000003415301446cb482213caf61029ebc3774eaddbb70000000000000000000000009c09ddc82561e924bc541bde1976899f214df9cc000000000000000000000000031e10e474c1d7b8638f199d30b4502cfdf89abf0000000000000000000000005ee01329a60019535c9b95950ee415f15efab95800000000000000000000000000ee1dc7f82459534d508a702846f940001dff87000000000000000000000000a29c415a745aca4637886a4d598054c6454bf67700000000000000000000000024bc559b81d24c664591f9af19ee8c108a2015950000000000000000000000000b10afba8a46c8110a196f3f837e399637985921000000000000000000000000d5c1f4a13b09fa91b79c133236bdc3125784f7950000000000000000000000009949385848eb72bd3476c5c9f3ec1190b877c61800000000000000000000000019f2b4dea91888c72e0f4543fa6cc4c926fb401d000000000000000000000000c28786883b8a56804d2ca5d92a37a79c7cd7c65b000000000000000000000000ad226db5e142f2610aa005c482b78c02c79f3cb400000000000000000000000061fc0f87d419fdd94248059861bf9e19652dece10000000000000000000000006a57e50db5e2b89e19fc488f81bb0f5465e351620000000000000000000000004cf4427ad3484e1dd81cda2c41dab4ee2bc938230000000000000000000000009e9c1f45d1624b899c6c9577eaf4edc5e2a56abf00000000000000000000000060374a1b9e417fa4a60053dd95b881e216871376000000000000000000000000713001784115e71315ad8711575f971fbe09f9b70000000000000000000000000e451f953e4301a4ffd3fa9c2491f76b263cf1080000000000000000000000004eca3ee20ad41df5dfab27d2e9d62c6ee65360620000000000000000000000008b9fe4894f7b2a6145b5d4865e29abcf48012075000000000000000000000000d2343eaf48b0d5504ed71681f2360f10a8afef89000000000000000000000000d559b6f387ffab63610b060b8be1b8de6827600f0000000000000000000000006a5418b3c33c7153161c49dd535fdad4e4fca12d0000000000000000000000003ed2d7acf0b9ab3fc98603d7faa920e613d3e556000000000000000000000000d0fbbd9b4b2911eea59ad57ae7a1905f49ce09d4000000000000000000000000938f93b0e12fbe253ac1f7a39c1d6b2951d5e5870000000000000000000000007fbd7a7c0c7d7d0e33a487f6e0bf3f8b213709db000000000000000000000000ae2b079bf8f08883c404944f87f0f5303ede229200000000000000000000000078b1b5e843164d900e1c4c0df7c8926054435682000000000000000000000000e734f4d671fdbb7c58df337f9260d5e55c3fa7fa000000000000000000000000b625d4ef08d64dae4759e347e3984b8b7ffcd9d9000000000000000000000000f0db70fd5fa4dddc2e61779a1ea36908932e9f12000000000000000000000000e2e05ed14faface47b99137679c9d6d5432b2c22000000000000000000000000878404c02c8d4ec88afe827de2a08879752fa3da00000000000000000000000081131878727f4d4dadb1a21d659868594927e74d000000000000000000000000b40c1ec22093d1c5d9467152e073d7e384e6dd9c000000000000000000000000f53cd61e002af1a78a115b0c1936978e22b12768000000000000000000000000d9f01f0936100ff2656a3aa3626fe42d771d3c3e000000000000000000000000ed3c86b42ed24a0ce774a27069ac41afd5eeef8400000000000000000000000092e1b2c322911ee22242e9a6e4ccac2d5d6cf505000000000000000000000000732d9ee644bc1d5958e72124f79133a8cc49a1ab000000000000000000000000d99dace0f9c416dcd734c11427d8e9048e9d8fa600000000000000000000000026187af2e2d5a941ee2d1281c03fc0b1bd14d9400000000000000000000000002d1184f708f383b42cde6dd2bafa8ba4aa190374000000000000000000000000c1d56c90adab2c06078bf85632bdfeb0f9d4b22e0000000000000000000000006588e8dd6188e204dd468cb98357a87357d94175000000000000000000000000df078b446b4bf2cefaac96dd9f20458fe41465d200000000000000000000000072ed780c2d7b1fd41ab3f5c43a7c68dcc3dd54280000000000000000000000001a9949e0945d2cb7bebe54162a1ba9e6459b51d40000000000000000000000002cb32520621c2079010db985282ad42d05685d96000000000000000000000000472dcd4c1f594dac984d442131c4503c75461af9000000000000000000000000f278323e76f825c2c91e110a9cda8c6c717c2b9c00000000000000000000000017a76b4e13a0cb6f1d01ad769bb66cf41cd2c043000000000000000000000000ad2dfcc4d2cc41b2f9e19812237ea3d8d3f404010000000000000000000000003acbf5dfa243ea346ce741c9f3d1556d33dc33ba000000000000000000000000e8359cdec4bdd8b8a46ef00093eeeb01a9deba1600000000000000000000000092efdfe04aa5df1f1e824e5e3d3928ca979208c8000000000000000000000000acacb9430212f977abba9345f7d1aa631e3e0771000000000000000000000000ee41100c13dac5725eec4402b9b45c7aba4957ce000000000000000000000000639ddb339665ccce59c6e1728ed4e06a12e15e6a000000000000000000000000253168d6eabb56dbef02bbccb366936fa53002b5000000000000000000000000facb518d26dd126175f1808c92bac5ece92a11b6000000000000000000000000c6236ca9db4043c7756e5eff151aa953ff683ee00000000000000000000000002d19784334d6e08fa5b9d9da6509e77f7f671ce200000000000000000000000081ff54c6b56258c71946e9cae615067748802406000000000000000000000000e24ee348f353813728818cc6e79853e943f4ce8b00000000000000000000000063feb64d3dd1b0dc0de78839343accc8df82316e0000000000000000000000005499ba98bfd13839944ac4aa629df36d613b2a710000000000000000000000000993562a75eded9f23434c408731dacd9754c83a000000000000000000000000ea7f19ac27d0fd224e991e1bc6c6ef23f793bc0d0000000000000000000000004fa7e65636b87e01b06d5152c1def322cc85f44300000000000000000000000062414cf8b1b04c36fd788597c55ab3e3db24f4f0000000000000000000000000d76809b18a8c40328a00d9a162d4ea9254737238000000000000000000000000576519e51a978340394bffca55ae7834da4896d500000000000000000000000034f89ddfa83b105366bd60eff7eb1896c9aa296f000000000000000000000000bcf3ddd4781a156b68efddd71b0dcb40c25d7785000000000000000000000000295a1257e1c3213c621fdbff19679bd97dedef40000000000000000000000000e7bc4931e93cd97d58b7251a18bb493d23a2cd35000000000000000000000000f0e60898dac4e738aa48ac60c689318608cef7460000000000000000000000000bf5b434f4208308b3274e925fac89c297ba1f6f000000000000000000000000d85c02c684c04ea54c289cff29023a6b4f050bfb000000000000000000000000df37da805f0903f17e1d29474a077eebd926c29300000000000000000000000061fa0bb8bc7fc2990e3155cd119859d9f7c009a4000000000000000000000000e2665ce70df2e7c474f10d1e23d9eec5fc460f250000000000000000000000003279a9e40148835a6df92657b40c35d38ce5c32c000000000000000000000000413da3f152bade8152c0b7b2495321901f292c800000000000000000000000007f983eb1ddfbc869cbbb4ea573ccd6ef1161e513000000000000000000000000c2aa70e4008684393800680d98445cf50f35beab0000000000000000000000009c36232a8d9873ae79ed0ec4045c61422b4f1695000000000000000000000000e32b8dcfe8d62c636df175910a0714c3254225e3000000000000000000000000470cb04b3086812889bf3ba2180c584556a5e6890000000000000000000000006d37935418a4efa84f543f4ac4f3a5f4cb2d3d8e0000000000000000000000007ce5e82c722bc9f88530406b19bb78247bcb534b000000000000000000000000945157dde8d93c2c1b4481b92ae2b96bb6710d6b000000000000000000000000272ac27e2ffc6de6bb056f36567f3b1c78ca0bac00000000000000000000000065e92e029be941e3ea489f3632c282d6bb5b4397000000000000000000000000fb1ddb5efdeddcb9f599963a0aec8eb904de3161000000000000000000000000a6f07a32f78196552d1bc4dea8ed6f70d3dbe3080000000000000000000000000c26cde1b6d5377dab07146b2b408b9fe3bc1d2b0000000000000000000000005fdb6770c0e029a8283af98dc36fb9c1976aacb90000000000000000000000000996a8f51de95c3f74f509c4bd27c85bc271d2160000000000000000000000004ef99b32f216d715208290b8a2eec229fb09a942000000000000000000000000cb8f3974fa8a13e2456259b2fd1a75e0b17ffcbe000000000000000000000000b2382d04ec11cfc2f5ac5b4a1a8efe22073a236f0000000000000000000000009812797c12f13cfab63f35031bbd82f03a3840aa000000000000000000000000e0d54a43be21ab0b3da802a2a64f1e909aaf98a9000000000000000000000000795f5f5b6dcde3c31787d6a452b05798d40c6a6c000000000000000000000000f1684fbb2ec9ea929bd1efea4a06606918acee0b000000000000000000000000c22967e0e7fd239369f6240589be01ab4be0e16100000000000000000000000058d1a30c29e22ee57783e0e1ace9228cc9c3d7b300000000000000000000000023f2e4c3fe5c0c939b44c1d44373e4231bc0ecc90000000000000000000000006561b0e908f3fac17f9617b64e1c192f58367e8d0000000000000000000000008c2a0a1c0eac554414acd94be2df958c4dca0b3000000000000000000000000077dea6215b7b444fc0639b55bf1d86b1e315f0af00000000000000000000000020b7883b6e15163076300956830fa2eaee7f771b000000000000000000000000f2da31917b6d568fa376c6e50a8b7b144673a3ec00000000000000000000000026bd12da996362c9fb4edf2e2ce661be8ae770090000000000000000000000000de0c13eb1c29b56cbc9991328080712d736f691000000000000000000000000b1e58945526a21a24c3701f4146e8f840e9f543f0000000000000000000000003f53f058a1346d3d98ab2bbb1326976d3e8c110e000000000000000000000000c8d5870ca3078b451eb626648925048fea9233330000000000000000000000003c85eeece4bfe9f4e6823da5056fdd2164cacd60000000000000000000000000685b862cf06653119bbd334946b0a7373aa9a47b0000000000000000000000003d3cb065ddae9dab7d6b71fe1b1b22b66b0fa53a0000000000000000000000005cc0fd9dfd3fb55b4f488b67cb349bb75082c1da000000000000000000000000dd1924cf5a7b031d29154d5161f64927ef04fae50000000000000000000000007ff8634c643cc8b91f6fe7ac8a0ffbea19cfc83b0000000000000000000000006bbad7ece0edfdaac60b6f03f0cff1c531e8b2e3000000000000000000000000ea3a4786ada7bc64ea349f8b696dbc481fb8ce810000000000000000000000005ad3bf53a5c9fb184768aa29be494452d24dd01900000000000000000000000021e2affea42d113e5a4ae98acbada0eaa02d569500000000000000000000000032c3bdd638bb744a4e0e79c10ae233bda9ab27a3000000000000000000000000078468e49e0d844d3cc262d4a0193e2251a64e7b000000000000000000000000ddb0db81cca27b2c8d3d15544949b0bef742e5c200000000000000000000000053985c16321632be042623706e596dced20166be0000000000000000000000008f413e766a2ec3dd6b3855ab9f372cfb072d9937000000000000000000000000769b985ead1d02b2b7fa93fbb6eae4fe1b67376800000000000000000000000082f476cc3aaf427a6abde138c741875274f7f01d0000000000000000000000005756a75678bb6d6297b1e39dc798ac5d20840a74000000000000000000000000fc7adc2a1d4a11a7dbc2a8f6a054670c137b23e4000000000000000000000000c798034cae6c6854d00e23ebeaedf86e9a28af38000000000000000000000000ef9c8f1c8aaf17452c6fa706b02b2463fea0abb100000000000000000000000063aac0690e1996ffc8ffc295bf95d60b4bd28acc0000000000000000000000007a5a2965cc3ed9d2b2739b615fa3231ef102e3830000000000000000000000004052ee9cfb78f8eccd0a21fc5457b3d58c4d95e4000000000000000000000000dd8d9df5ff4210a6485401e61407c93cc24d7131000000000000000000000000a4fd55095d1144096769e61eddcdc404048d0952000000000000000000000000d9621d4c32cd005d93962a3bd0e25502998e9a5a00000000000000000000000009867e6b45c486513fba94dd924aab9a6acd396c000000000000000000000000d299292df0bb17a8627ca65ff951e6d4672c63d4000000000000000000000000d369756f3dac9d5db93883f7a8ce66d8a6c3e3bc000000000000000000000000fe93fb813128445ee052883a63cbb7c5735166d1000000000000000000000000d8b6090303a6cbe2b64cc4b2f12420f77069d75c00000000000000000000000057f0679eea804d485d9cd2cbd569454e7b14ae2d00000000000000000000000077583412ff92e4e05f1261e38f1979cdfa7e0f69000000000000000000000000ea09488f37844bc7ecd88a7cf78e7317d9abac98000000000000000000000000de24314066f14b37240b0aa7ff08bbbfcd8aebad000000000000000000000000b9b50f4e5a3f7fd63e0eaa6c77a08be9f5b4be000000000000000000000000009fb8cd55259cd20a6620a796e8455a74b62c2ce9000000000000000000000000e1ccde73fc5ce2cc69abe2afe105a7ee6fbe97f300000000000000000000000057adbb92c14ac24a16dc3319497f3cc7f05041940000000000000000000000009cecb6b879999e2f7a21ad01f65b962fb928779f000000000000000000000000cc84878ae314f08fc428f412f8b4350ceb4455610000000000000000000000004da8e56039d22cdf76253a6c1c1d1f35aa745a4c0000000000000000000000007f1e69752f2ae51be9e6592cd6b1600e84e60ef90000000000000000000000006ca6e144f40b412d839e19f929ab8617d7537a680000000000000000000000008d8e0dba39fcabc4c274277e9e14e30e865a0c1b000000000000000000000000a3c74c3aa815b1bad5a11511adcc7a6d2fa5de2600000000000000000000000042a8ff87c4dc252b6817f5a0eed826ee3267998700000000000000000000000081f058f551783ee1338caebfa915f34013b019ee0000000000000000000000004334acf7a82443d5c64eb863ca6a5e49d9500ad300000000000000000000000080c9501b3215fbc2ad942c7beedbb511306c90000000000000000000000000000006bef13b249090a3ad6238ce55178dfa8add1a00000000000000000000000075184b1f485c9b3fd6388191d75c012ac7d80e740000000000000000000000005f34afc51a6d2cc94748a21e525ea35f80f8c25500000000000000000000000035136841d869be0d9c232a40904ba343762ccca3000000000000000000000000223b691d7fca83f9f36fdc9e0abe0cda0245089b0000000000000000000000002ad69210323bbd10e7cf531ba024127d9391e60900000000000000000000000048a5aac55cf76d730bb5c47e5cf22eb2bb55473b00000000000000000000000047659ae6e6fe57b73edebab0d68bbf7354e12021000000000000000000000000729985c104b7ba12ab2beb34bf516dedcd4b32f100000000000000000000000027d438df85fabde466843e71c61eb84b5ffa5d18000000000000000000000000a28cfc98fe7c33f2e2c2ed6e2e4a04d2dd3d1ffb0000000000000000000000008afd1e7ae8f21b42f1dbddc07266f7ebd09a86e4000000000000000000000000027b7566fe4244df6fcf456d74f96c240dee4d7e000000000000000000000000cae4ac13fb3deae9650ab3c6356ced78c3378fa1000000000000000000000000eb3758f1c4f07f5c154d445049ecf57f1e4732880000000000000000000000009b24d8feddd6a49dbab2267ba84ac82210469448000000000000000000000000a6e03d98e5d23ce16482cc45641cc2360fb5820a000000000000000000000000f6ff3d4473a6a6217d3463efac5e78c312813ee900000000000000000000000063ac4df129d2acc240b090de5bb2ae514420a09f00000000000000000000000067f27ad756e509f5711527f1fc9fe9cabb3175b8000000000000000000000000fa56a31d249e97fcc30f02dc4bd6e6f70aae45680000000000000000000000001ab5f846e685c487fea3e167fd1761732f7909bc0000000000000000000000009eee1a5d44c136ff4e78b86934229242f828f2e9000000000000000000000000b126326a6b05c19c3fd169b153dede6bce00bc08000000000000000000000000f08f079fba8646adb999aefcaf9e23b8cb5d2ac2000000000000000000000000b1f7162e31056383e0bf5fff38ec08cf29f773a3000000000000000000000000bf90ee453b3ab6d29a8ba6630d92ae57f81d05e60000000000000000000000004a480a3c76996484ab7c2c570cd460008e1d26d7000000000000000000000000286e51e129fb1a2f6b5b4d7341ada3bc3ba7f386000000000000000000000000d8152e207fd1f54daeb021193398d95a8ef85679000000000000000000000000da787cf75c976c896111ca09570a944f85af2ccf000000000000000000000000bb79c618612fc7de51e0b85d35f9b926c08ed5d30000000000000000000000008f5c956fafd5f72c6be9f8bb6ffe395bfbd08e59000000000000000000000000d8f3bca6cd6b380539c760a53887280e3a46b62900000000000000000000000047e62c5b67619032f1cc1aa066f03bed81e46010000000000000000000000000cda74e76dc971bf636d0d29eb352c2dbb1beaf0d000000000000000000000000aeae567fc74bd51b7abcf75057f327a2dbe88ad500000000000000000000000007599456237777486d933c7e72e2b8bbabd0b005000000000000000000000000889ade53d54af7504646b7cf3538a1af0e554924000000000000000000000000137ffce9ca35b67c7ebf9bab03ca212ad5e0fce80000000000000000000000009b2d8abfed85d3436368981d7cfdac4bd32e996400000000000000000000000015cd04f71df0a7553fbaaf4f4fa30801fc242e3f0000000000000000000000001a382d13c201234c2e3fd0a7e767a1d985c0c725000000000000000000000000830e9e07d8614ad59291ed4d7a11398ad09c2c63000000000000000000000000927c469dba30095a7661cc5dd92e5059b030050b000000000000000000000000d9b2b0578b414afa31bf159d230683752ed517740000000000000000000000004ce133b7ee8a61a4ac13bd525d8cfa36aef2b93a0000000000000000000000005cb642349b35ea6aaca13049663c144da81d890c0000000000000000000000005ac2e7f1ef14618ede402cbc98569ddc4956bf9d000000000000000000000000a1a1b6275ba2050238f2a1b396f88fc65b63bd61000000000000000000000000334d47e58d549529ddd5ac94f35a1d8f7c657c7600000000000000000000000052b0c3d58ad771fe192530986e283e1037c985a7000000000000000000000000c5e7c9d5b8a3fe582a7bcb374533865840ae1bc5000000000000000000000000631c06bae101c7168c35031a63cc9fc0ea0892c300000000000000000000000079e90dfabb202996d272ceec169f0743e89c9ada00000000000000000000000027b89e9bec5173814a2fae87c61c0cfa812832090000000000000000000000006d9c4935876cbecaf3244bc9d6ecf40c41a832f0000000000000000000000000fb98d2ddef4c850a3dd8541508f1fed916f8c91b000000000000000000000000c3ac86e1ac775c7ba8118a09becf784e4c3d88740000000000000000000000003298a6789ee0e6bc2b4511568d6f1b2c6e306b60000000000000000000000000f5cbe47dc8115aec8f6d59c3392d260c3e470097000000000000000000000000b3e524c6ff7835d65caa01c1a8c55dcf8a6806980000000000000000000000007f480927b43fd4094c178dfc23d1ff8f2ed5cdeb000000000000000000000000eaa93a3140b0654e86f853f3fec420b63bc02e3900000000000000000000000084b2cafa915f891ebeb45612903e7b7559d0833600000000000000000000000011e8f0fd8a5ca2a1bb8ff2378f6110acd7782cb4000000000000000000000000982e59499706156b29a754429cce4c73da39b40f000000000000000000000000802330844c47b1059451d9932e650437a689759b000000000000000000000000ae03bbf3b0f54c34643dd374243317ce76a55b9e0000000000000000000000008869b96df18e42c99c3ca2ee3ccbc80cea06236c000000000000000000000000cdbb31299a8073bedc0174329e3203030891cd3a000000000000000000000000555b85e1aaa12e38f2c3849f9b77187b8b30431600000000000000000000000065d678c2b7ab4054360dd0179aea58b5eb144c46000000000000000000000000bf33b9c005d9807db5bfaf63b1c2fade53654efa0000000000000000000000004057f07f8e0189f365dc2fbf5829d139ed6ce1a8000000000000000000000000475112aaafb778b40ab78879c11debd04c4f5194000000000000000000000000637deda8965d4a8f12303c67ad59905974d7844d0000000000000000000000001387a40a44766b9a3c86486ecb08084dc3f6c431000000000000000000000000b6eed3e6789d95483ad4c781957c32149e69b6f5000000000000000000000000f582f6ce1a59ab628693497eec12b47ddc6bdbaf0000000000000000000000009946ac406afabcf22484974bdbdeba593741962e0000000000000000000000008763445693012f77eca20bd766f4f6674e9778d600000000000000000000000066490f961f0709f710685d5a726a90484e4269a10000000000000000000000001eef0bd83d04e179f6e4edc52c8b9a6ce6011bd5000000000000000000000000edbe38588aff90d4550efdc91801f2b5d4bdfd7f000000000000000000000000139295ef4d5f175d856c8b3395711ef495a5311c000000000000000000000000d588584a05ab935a3427c2566f771721f555f0e2000000000000000000000000b00720d346f9734f7371d00fe5cb2aa4570a91a2000000000000000000000000b90a455832da2e1d45549ad1425662fdcd4a88230000000000000000000000004a246a6d7acf998206c18829c12e52a7b5efb08700000000000000000000000066563bdabb11febb6d62ee780c5556539abe39d70000000000000000000000002e2846829915f43d3e3444f3f75c09294ef2a78b000000000000000000000000ac2e7bb8bb02e7a0f4b3447226557ac2943843eb0000000000000000000000007f21f5fffb8cdd6f7772d9f56b53eae2b956033a000000000000000000000000c2bb22d150a05d612d519d1a60f7963569c9981f000000000000000000000000a02124eebe07e31cb5462d76195d3f58965aef0400000000000000000000000095b0a5f0a1d68aae10c254f1a69e5208b3d79c6f0000000000000000000000008d582e731eb7a34b59711b1ea4f34eb41b308547000000000000000000000000fe8bd56700ec0794edf800c654170ca3c40998b80000000000000000000000004a44a49b8620bf528289c4776bc5fa2b4262d0d80000000000000000000000005fa981c3debea67812a5af794dd05d6de2c92210000000000000000000000000d0b99dbafee2bae837482c5b1a828cbdcef5cbed00000000000000000000000087828fb64e9626f4aa88918bfff9e51c7cf256c5000000000000000000000000c87f0c0882cbcb7cf62d42fe8435ba9ff55de7b4000000000000000000000000ddc435c8d9b23015e4b665e36aeef95477db649a0000000000000000000000001deb9f0f3caaaa28bbaf39de9ccf1a18d68dbfb7000000000000000000000000cfc4f0e7d354aad7839e173305ac04bc464930bd0000000000000000000000009154d73edefe38766526fa3718782a5c1c470eda000000000000000000000000e9f3a10846627fbacf5807082d4d348ca13244a0000000000000000000000000ffd2d6e5a138df9e4b1ce56c4783d59c2763d2eb000000000000000000000000d02c16bd10559655341650c4fca77a5739991138000000000000000000000000d057b3206b698d13adb802283bd84e780cdba75a0000000000000000000000008620da37062e7b4809d6b933d24af61516920032000000000000000000000000aa973dfc84ae293500601780292f3ce8e3cbc14b000000000000000000000000d015faf19e5da1c4461fccd455f276e336745311000000000000000000000000385df1576b906bedba46f4728874c3bcfa1b324a0000000000000000000000005123f8f8ccd88373b8a79ebfdc65ee55e6dec3350000000000000000000000001f59609c1a6f3af0a6c711c271984fdd3305983d00000000000000000000000010a8f983d91386eb25c37abc1ba71fe8df9b3c2d0000000000000000000000008917bb21e0878dbed15a57910d6641554a4c086e0000000000000000000000000035a907cea37498dab08838beec8a3b863b56b10000000000000000000000006101e6e89edea0fade9e07066a1d09a42065ec6600000000000000000000000035afea9908d82c5e40cf468793bb0123099d84de00000000000000000000000074289be838cb416b3fc524d9f77f7c95bb77a407000000000000000000000000a76a6814ac0b64b5d941f65be8c8f3709629c6bc0000000000000000000000005f42acbc0d43db24a8c1b80d3214e6c9dd08c184000000000000000000000000e885fbeb7f1288864e91dfb06cf9ed91baf1d687000000000000000000000000f97d4ed9e1b56a9ab9b9ef04e82d880cab621f1f0000000000000000000000000944fc2d0ca9befcf2c465c29985c4c89da5b0cd0000000000000000000000005d9e877395750bdd8c4a5223c7607425c7d479a5000000000000000000000000f955736fe4a87465b830a6c90833419a8e8bbb250000000000000000000000008ac6cc7819aca399d19aab140e69407e6e01e7b8000000000000000000000000db2a1b45f71f1f15b0fdbfbab2b4c26407568e15000000000000000000000000aa4d1f4e5d12f2289196d5304908d3e30d26c9fa000000000000000000000000851f66fc36e6aa15b3af6d037fbd2b09cab565bc000000000000000000000000789024c47b15ae4b08c96999951846dae8f7fe9b00000000000000000000000087654df496f41e9b279cf95b64dea6be1266ec8a000000000000000000000000200e7cd348d957903d451e50695cb416b9d3957c000000000000000000000000aa09bcb1047372f4eb0de555fd16d251f9887d94000000000000000000000000197d93a92208180d73ee7c8ee8d0cd9053c1d6b60000000000000000000000006c5b6128de537fe0d5ea4683d3b1aa9703ebf3bd0000000000000000000000008e327165b6add2e28646e176182d6327e8d2f323000000000000000000000000c7547705f900f49095066d89a74684685c2562ff000000000000000000000000fb10ed5e0a16324313616a2d45972a9a84ce4e650000000000000000000000000f9fcc1066b4753b795ca6f549465776b998899b000000000000000000000000e36a397abf2e594e0f42b9b836c59601e6fc0267000000000000000000000000e5647293b332ccdec31f5d1ae3ddafef9ad3882a000000000000000000000000beedf956eae5c8705d558bacddb8c7f3a3f6e8ad00000000000000000000000062d5eb07b812efedf6f70daa9741c3104df10392000000000000000000000000a80349a9464cb3186147c48d7212cd60aaec494c000000000000000000000000743733b1b0783d9ffc46ff614d6151e0233b9f08000000000000000000000000d673483a4974865c9855d48706e0f1118e3fd3de0000000000000000000000000582d8194fb42f6dbefe2a85abf6c74d5bc3e18700000000000000000000000073e269783b752a3e14c2ffc6c31441e59067b029000000000000000000000000cf71344c00cd87ce02139ece305f5856ff51875a000000000000000000000000de137751ec0586afca1c42ed62f49b0419c9e0a8000000000000000000000000247c2428191836fab634599832085673d6bb5ebc000000000000000000000000ac4f6c9da26a0c0580856a77e394c6c8f2878de200000000000000000000000018807df4e7aa60141a21839f3a7f0f3361984b230000000000000000000000006a1db66bd9a3799c479d50951751cf6c253182f90000000000000000000000004afb2be813f25b64a4299e4d80cb0104eb263f110000000000000000000000008d6a5340892ff437fbae32e877b77ad8fc9372ed0000000000000000000000008e7d5194e22e6e8d657791e61e76b426773d62ac000000000000000000000000df805eb64093620e0d0b7725812d908d3a957ed1000000000000000000000000293f2c1301bf7cbc86f24f21387b0347900dc976000000000000000000000000d73d75682472a715a66eaaf251137cb1cfb2932b000000000000000000000000c41e44750a1dfa01b417a81bdfd917db65ecb9c70000000000000000000000001ca972dbf0fe8a3678eb4cd6b6216c302b67145b000000000000000000000000164273444cd43b8a10383ec55b05d568069f8e78000000000000000000000000e556f3bf56222963ed7bd49aeec8df9f8a03c3c2000000000000000000000000b8b720f5006beeba0926ef417fa075df45017fad000000000000000000000000178bbf1b6fc1a2888bd140776c53f1cb0fa1b4200000000000000000000000004a54a19065fe43858c8848f89a608957f571129e000000000000000000000000a79f55e8fcd7ed2d5e3f3719bdab0bec4a8f3efa000000000000000000000000f1115989dae75ad6f6931c712e55f4d94e36db7e00000000000000000000000002198da26cd4531706e1be1a0404d70ed42cb82f00000000000000000000000078668e3ba2567f5c89cb55878080595ed1ee1532000000000000000000000000f0c3cb91387e3e37be5528586396c8d5ec2d07b2000000000000000000000000fc96c9de38447434259c43d4f2241bd52d71386e00000000000000000000000034e7916d5d8681370ed0a6774cfa8347c1d2c9b4000000000000000000000000233f61cbb69e1034d5d0ddb1a6fcacf80c5c38ef000000000000000000000000996af69659bedb7cf3af7d2135f8127ed30eb47d00000000000000000000000079eb4a5005922da62664b36e269353ff2605614500000000000000000000000016edc91aa1bbeea459e28b01acb1ca8fee79d11200000000000000000000000014d2dd56baecab1b6fc29ec137a0860c0d514c760000000000000000000000005f7ddc4c4586d4b56634a6a976545c843f338a60000000000000000000000000c459dbc87e27dff52f2b21fa2657b9a5bc92b8c80000000000000000000000008480b89ac6ee776f8842a17f66544aea3726c1770000000000000000000000003ae95ad952a26630f43e4498a7a82db20635ac25000000000000000000000000add6a24b7b1e858b8c6769b82f17611b4a638175000000000000000000000000ec125ad722f1f6b2cd6d7aaff88c3c227495b5e000000000000000000000000013b24fa5f19ae0e9f9fa5547c2b5af942afa4261000000000000000000000000e8fcdc329c9bd25eb6d844ec4b4e1b5925ad131a00000000000000000000000003ed7c9768e331fef1c3d6d89cd6454c32273a83000000000000000000000000b423e06fc7b9be29e8cdc616dac87d48e25a7bb7000000000000000000000000bdd31160772498a5915551be812847daa6f388fa0000000000000000000000007b5fea2d7ca3016f0f46e92e9ca40c46974d2ce400000000000000000000000065e309bae5ef3bc484be0313204f4f3101aff102000000000000000000000000836266d230fc857b1e3a1a824c12c59c5925cd47000000000000000000000000b57fccdf3dc709c3c4d0497efbb9a073f6fde5da0000000000000000000000001e63ede600b62f2ff43b3867dc86c8db19f8f2e1000000000000000000000000ffa9f7994d20ba7de035d6fa41e6871687f132900000000000000000000000000224215a3344e3ebf3fb0e3a5104452489f5184300000000000000000000000080827527114cf5e466f52dec6c51f37862f295660000000000000000000000008530f639d68294a354522d1c8453da2e561c001e000000000000000000000000df35a04b5cb35938d2f3c57f49a3ff6a889670ce00000000000000000000000049d6ebdf80d2084252f5aab888f1fcce997ddc290000000000000000000000009322109123b0540d8a4f5a2928ed893631fff64200000000000000000000000039bca683a410753ae85da9eeabd4cb5b5b4d5d2b000000000000000000000000280d0e4920da5808dca7fb76be6d491c0f53331900000000000000000000000083edcd53c07f8751d9ff6f9f0f25dcd9dd371059000000000000000000000000ed2c8fdee39a6841c49b1f78929c1533f5986cdb000000000000000000000000b445f034b4a211624c883c7dc3945a3f6c8f2530000000000000000000000000e9b3fbec34e4c4c96ffbf3975b8ea7eb562504c6000000000000000000000000c30013baa11654cc37377845c58cb2f9a5aca46b000000000000000000000000654588270ff471a15e7fe09e5cc4f4b5cd18b62f0000000000000000000000007a41c650c95360d7ae3281eb4e56dd5d91e3853b0000000000000000000000000fd34a6c0c484f0da7fb00d8d028032406c57182000000000000000000000000dea35742bf7c670e86a11e2306160d92608aba1f0000000000000000000000002aa623258a13585992e2f5d7d50486fb2892d89a00000000000000000000000093e0a367d0d4eee72b7212aa360748ad1e443adf000000000000000000000000bd03308a3b0f1fec0ff6f4ba6d100c3041d3ff3e000000000000000000000000262d2f90f05517739008246a827d58f979424d50000000000000000000000000d1a9570647939e84e1196972d2356a87e1d3ad8e0000000000000000000000004b4184b191e1fcbe428765b4fce813721549247c0000000000000000000000006bada952a80c5e83febebcae62f524b361d1cefd000000000000000000000000a513c2d5d01697feac6e5b3b602489d8c8f84a71000000000000000000000000eb510ed57658e27a60053ca9b64949a550be2792000000000000000000000000494c36b6eb1171229f9ae48df9c28a5e576507e2000000000000000000000000b016b6b24de1598662b22df26ffe27a15bd286430000000000000000000000008faa9997b3f3e5c1054f74cc4a01c312cff68007000000000000000000000000d1325a2f91d2aa8c1b1d10a6f04f2afa8609bf42000000000000000000000000e73104bafe72f40b12869a8479a628513e9aa014000000000000000000000000599deee04a19e3988f5927781c8e93feaa5b3cbc000000000000000000000000138776e605a008ad7985450ded654cf9e6b6929f00000000000000000000000037e8837d0f331c8e0a2ed79245830f6cb5f032ce000000000000000000000000f901cc2811bbc25c697502d8e69c2ae8be74eecf000000000000000000000000aec3079b2a388837667120915864959f64d44b38000000000000000000000000235370c641e9f5b5d5f6b38d7d9a526a7431094800000000000000000000000017146187d85b0d993b068172ff512353b95a64fa00000000000000000000000059f0db6a672d7704ab8c50b088689cec3b69e51d0000000000000000000000006e959f7c452647bbbfaa933f7da967a3d219c1ba0000000000000000000000008c0487bf345d0ae8933f56e4f3e928ece9be88490000000000000000000000000ad8baeee28ce6e9c943393531bb6998ce575be80000000000000000000000003cc7aa3e9b09b337ea45d4618e6818bd005083800000000000000000000000009b5faf112141311e7c5a3e5e20cfbde67a794f590000000000000000000000006d299b48d9adc5c7ed195000123c240906ae343800000000000000000000000042e0060017f153e920005588853f9567fa66695000000000000000000000000077ad6189b5bdfadffb3e30885c06d5237f463e72000000000000000000000000aada7a57ff9a21114e1770ae1a514e53c3de702600000000000000000000000015fc9b02da0970f8edf6e4bc6f799eab79eefb3f000000000000000000000000a0665ccb5b21b3b4671403a26990fd058b7ac1cf000000000000000000000000ce6eb0f503ceef7b4af79f5d5a97451883b5e1e50000000000000000000000004d188ecd8f036c83c244287c31bdc870535483c0000000000000000000000000cbb8dd6ab53c0bf758e74673271db045ae70369e000000000000000000000000df4417ba80b9608b719276c917ecc5b9e5d28900000000000000000000000000c8ad2e37f5ec15a2dc3a729204f42b6f0d6288530000000000000000000000000a474378e948ddaa23b081d366b66686848122d2000000000000000000000000323dc376282e0865f2e1fe112058462254d232340000000000000000000000004a86d53fca883ce12e293500454ea2908b990132000000000000000000000000736ec392eb92af50589384849f3a8f621f025544000000000000000000000000a81291a386e72b17720f323dad85fc4cbdbcd16e00000000000000000000000067cc5ae0040a911f1bdd663e38e30a8044c9257100000000000000000000000030e7e6801d9762c365194de429cde853349556f90000000000000000000000000393cd8d20c2f102f7c342bcfa647d0f5149093200000000000000000000000094a3778d6ca52ce6b9637f267cb805e6d2e7ccb2000000000000000000000000386e91e3a79fe2045a060fa7e5402315e4ce8a08000000000000000000000000c3705a64373352a881cc8f72479ebf3a91db18fc0000000000000000000000004dca8d2752945d0553e3e34d0be3f9fe76729c5800000000000000000000000072c5169dba0a9ee86aef8a5233e91a88cc800ecc000000000000000000000000e37dc84a55a334e1eadc3ffbbca629ba9b823abc0000000000000000000000005f9c4d6436c8b9c4def47e0e26bf31fc8473f1c800000000000000000000000024b59fb9f305a5700c3befb3a8c32ba23d234739000000000000000000000000fbe867c0bfd74fa7c1c39b194fedc11a002248e5000000000000000000000000c825cb06154f4004ffdbfad1f97e1dfe29251faf000000000000000000000000521d7158a6b4d33c6bd89bda56b8cb5b2a06631900000000000000000000000009cfdabcb4e1ec731aaa3ea6190184f11859abd100000000000000000000000088a6b5d70ffdff6b82d251795b50428b3bb481170000000000000000000000007b98a7f57bbfb618c16c195475426180f611607700000000000000000000000094324971d9f0f1c27322d0ed7607a1177d87b26700000000000000000000000038a04bb3ce0b2b7e8da4bf56b6a56290d83f4ed30000000000000000000000009025102b2acd3b962da4e47978d0eb16458bd9db000000000000000000000000d97988491e71dd03d5415e62a7a8b0c49e7147b2000000000000000000000000ba2b7d6d40d56d60cfcb3e7ac2b4d68365c308350000000000000000000000008c06d0aa13504437094e29a75bb4bc9265f45b4d000000000000000000000000fe3cb3c474aa83668e828ddfcb8459522ae40bbc000000000000000000000000dca7bfa8b6bff2d337194d3d2c1cc0cc20d22c10000000000000000000000000ae0bf36d9ca8bcff08b0212a659228cc16a4e8ae000000000000000000000000e08b35e5c5aab97cbfc6266883832dacd3a5a05000000000000000000000000023b3777036ae4ae9bd15faaaaa0a96dc27cd274d0000000000000000000000001e5361146582a9c2a32cade53a3a89813ae57168000000000000000000000000d50cf90663f456da5aa3672690d03bc97ba24d3a000000000000000000000000a0782e75f9ebb2fdcc2478d520aa92950a6cf7500000000000000000000000008087e4d6d4291778c9ce4143a11bef2b20f3140e000000000000000000000000285be5201ff4e9a55ab0265ad9de084c23064136000000000000000000000000cb3ea946316c7bc2f58135431731fefb12ab6382000000000000000000000000178cc437eff1d71bea766b20e7b78d83372f2128000000000000000000000000b2327e2bd254afdc0a609e4da4fba555ee00d286000000000000000000000000ab6d6565cfead6b973ba1e5a959e4033dca5e3ad0000000000000000000000004549a16b23c177837970762ab3750486a5d49f0800000000000000000000000003c6864fc2cfc9ebc47ba83863ac9151098dd41600000000000000000000000097c6bee26821db970a4c8d2e5568ffbe7269b41d0000000000000000000000006d3c8f761a29f62cb5829ce6dcfd7e73641f247f000000000000000000000000530e6ecd167226f3048d13a8f6eba3c1ddddbf9c0000000000000000000000007c0078e427363fa2015de03b4168369413fbf6890000000000000000000000004ee02e4e26054b830b20739f7dec3528b1f19320000000000000000000000000d432236156c0df043347c7c6a092b6781fae48ce00000000000000000000000011e4257c8282f26b5d720e7565e125d557eb0a2c000000000000000000000000d092e9ff6913f6473beaad95909821dad6b499dc000000000000000000000000fa8f8c14beab1e73eda17f3df74532eee7d66b0000000000000000000000000000432fbd1017c3c90af4835f71ef277fc28f4361000000000000000000000000ddda7b0e7776b6a008b3e67baa0b24980480b9bf0000000000000000000000005bcacfcb6fb2a750ef490ba3e723ad7ca574d5700000000000000000000000006a02f288b80d96675e9770a88e99618fdb8a5ad700000000000000000000000064965fb65fb2da8e67534618f36df2d2f78970cf000000000000000000000000580e42791e1904bcf6f1f36212f652979f6d03cd00000000000000000000000053d153e46655937fe1a3f0a48c716f5db3b66a210000000000000000000000002377c6d05d8b8af3c35318099df67defbc29a249000000000000000000000000886fa99a190f58f51540bf316852207e4a8e816e0000000000000000000000005b9dfff627356b40c19d7253d657418483e4e997000000000000000000000000fdc4d55f97a8105031df2c3cbd04f154549b67a5000000000000000000000000e70299b2b9b029c5bc8184d6fe1a57e4b62e532e000000000000000000000000ed78abfd1d85cfa6bf8bd6c116e90c46dee9ff1b000000000000000000000000dd0809970cd98ae7aaa42d6b4e8776eae61a06fd0000000000000000000000001832c65105da10caad98b20e3a079d1b29cd0bdb000000000000000000000000b5d12a3c979c36da416ee3997fdbb4aff1e9dea9000000000000000000000000a2b76678d05a6132aef90bdb3e1419e22852046f000000000000000000000000ae21b65c913701d5580a9457bc8bf38f4637a03800000000000000000000000067fa2c157c917a7db2525f79cac54de2c5161dfb0000000000000000000000000dd79037f50917efde3d8c440f874360c5a8b9aa000000000000000000000000f115c81c9c7d1317416f83d42579f6038485e071000000000000000000000000a41135722858d2e5a5c35a8c8326eeee2a53c10b000000000000000000000000f9bc3e0e7c594558eadffaf64970f2c0f3cd19450000000000000000000000002d32067dd357dfec3fc667fc7e1c093269cbc41d000000000000000000000000059f9609ccf838a1b488faf2073510d0b3edcc4c000000000000000000000000871ea3cfb0ed8606cf56f9f15d9dad12206428e900000000000000000000000029243b13c0ef1f45a7b6e17f9ca7ee6aacdb64a000000000000000000000000070fd628d255e9a2636d80d61bd33cee5989ff793000000000000000000000000124c840b229b8c20473d9910ba9f1bdd641a5124000000000000000000000000d55c19cc9104f9d4d1b4c841fd71db982c26a6b8000000000000000000000000da8400463684a3374874d45fc99be39a02f21af6000000000000000000000000668e746d9241b768ac67f9281b304d1f710a0f9b0000000000000000000000007da616285fccf0d4385a759a4aedd0cac34c28360000000000000000000000009b20998a946b2a5ae8dea92920d833178305686f0000000000000000000000007bacb1d74ca802219d3af1e5d57e16344cd255c6000000000000000000000000bab00cbb478c6833b3602cac64017d11262434f900000000000000000000000026f81f9ac37ca043cef328e274fa5b0828c61f5b000000000000000000000000e4499ce683014ed98d8750fb28c472ad834f05a6000000000000000000000000182daa17237048a8a5745d53aba692f91f1888ab000000000000000000000000f102822a6ba3179e9655000d4d25879d6c959773000000000000000000000000be48311ed5301de98543190b5bb09eefd56a1af900000000000000000000000022c49e09609e01571dcfed2f397f689c1cae77f30000000000000000000000007ffebb6a20be80364d42cdb8b5a2767f4ee6c4bb0000000000000000000000007192507bab00a0f4a0d594c3058b8b2933f1aff2000000000000000000000000b04ab601bac0c1c4a86e51eb89f0f825a78a622e0000000000000000000000002b61f81d468b14d4fc9a4deb1b608266619e48d9000000000000000000000000f7b9995d750892c07010d7d8552f4fa072049a2900000000000000000000000007ae44dead8f9d8d35d94f177a26050594b0d79c000000000000000000000000df147afbbf70b900524921eadec587bef68379d7000000000000000000000000256e1a42ac82dcfff8669318ca47b361837df3d1000000000000000000000000eb453d4d1e133f66931207601fb26b7ef07a6cc90000000000000000000000008927bd13f41c43a66f7d3c07ee6126c7f9c4ff210000000000000000000000000e8a528163d269a91437c57d3a4e2dc2ec6b02090000000000000000000000000130364637853a4a337eb2f8ca6ee2f29f4b87dc000000000000000000000000a4246c31207746887f7c09c58d4fd75dc59b81bd0000000000000000000000001c02d382f69325aa257ab845957086be347d8a310000000000000000000000004df3bfd987dc47058f50c7e5a57f25672102a9050000000000000000000000000b5e5081b62ad1cfc478aaee2c2b4d4b60ef2e970000000000000000000000009479c57b70ed4d0052cc9408697a997429207d7800000000000000000000000045a1589f134910c2a4954cf4650b5583a3eaac0c0000000000000000000000003b24038a08bdf9b9617f2c910379cf0b56a5c36600000000000000000000000096e17f57b1baa2371d7ac307f4ef25da45b0760c00000000000000000000000043d01e03af604490eed8e8f9b7858f930ed46f3100000000000000000000000006eed855c0e1bcfb95d46f1a464dafa594c2228d000000000000000000000000f75140c3172c318b24fd3f64e850a4979762bcfb000000000000000000000000193cfdba605ee2e73939ad90454bc59365357b13

-----Decoded View---------------
Arg [0] : _rothkoOnPennies (address): 0xCb337152b6181683010D07e3f00e7508cd348BC7
Arg [1] : partialAddresses (address[]): 0xFF64711628dBFBCd11B0B6252EC7146EE487A2c9,0x5A04b9AE934adb10dC90AE561aFf19df97702175,0x0Bfb75C571635fA2D4262217d5f8E5018AEEfec9,0x156d5F8a20d4F843A53b406FD9D3E1a453eC88B2,0x126BB405c188da691E708BdaB72516DA922854A3,0xf4D405A7A4B2585d6C969FC5aedaE58A9a7761B5,0x759670aB95D3A8d5FB1C1Abff8cF0023FD7E107b,0xbC7984599b94Fc36D4490f4a41efD936C53A8C01,0xC636d893757038a726eedeF02374eD3C7091bdB6,0xe06c62cF8c544F16e7119fAC27A9b0c8929EFdf9,0x2D90ff82dDcd4728652C384a95D5da0E2aA0e32C,0x1766962BCBbbF97B739d96b0e7eD924632F15F4d,0x45662C7D4f483a78B7271c4F579642D812f7986e,0x1Cfabf69B9b4473C76f60260863186854FFbC013,0x846694b2d79854832168B1E84038B1492aAd0177,0xAbf1daaf720e052289dBD906fb31Ca9BFE764356,0x3b58F2bEcC244566f214bcE21FF08e6d76539499,0x74A2fAc446CFB90346a2329bbF6E875083e814Ef,0x1e0a2FbFFC3E7aD2450B49503b77FcA2976338E4,0xeEc47B9AC18Be439D083901c5541BE486EcE75AB,0xbe20F60523F5E4940A0717874b1CF8C605191E7c,0xB39f9555Ae21679116E33cA9B7B484f154251d70,0x9777fd60902b0B842fB72AD975717b46A9d02387,0x193D3c14796C068Dbd239f76B7F68af9CE89E9F0,0x6EAe0F716DC7316f3b95B7987c0af33192667BE4,0x93f8A4081A29DC28139DA9673a503922c5f2ee3D,0x2F6860756bfB8e95eb7EF470C68ca213209fE1E7,0x335dF126EDD17538AE04F47b8217Ef64267B875F,0x2719aa2DF4F6b7a6834053130d3a174CDe9E14F5,0xDFaA80158aFf56718dD4b07bc7Cc61A77BE1525b,0x6BA56fC69F2a4B649E35CF0B7b8f4EEF09bd630d,0x40A965dBc477AEC8673070e765328fB60Ac64A7a,0x590fdF16C47fa15DCe9A857c157577b3e290a1bA,0xC4534908f0ACaC882dD1F91CB4002738317078D3,0x455f9682D03B333a0fd2c1bE72e22FbF6ecf6261,0xE6B295e9Dedd3674d0903833A21435aC234D8319,0xa9c0d05feE7Aa68241546a4584946c4ad9ACaB6D,0x8C476cdA3693163A877da79f6C8CE9db7e3256CF,0xdd0BBF3eaE9b6B9215A3A081DB7fbe54b9FDA4A0,0x1c17D7eCBD2Ff20d8880FbF3B7ABadaB9639bEec,0xe6E816639F7Ac059353F510045bdE88b092B82aE,0xFEadb4A4D27787AFB95Cfbd8Dbfb95DCfC51BF11,0xBE951967B0FC960Cf41636d267b15FcBB5c7Fb63,0x0fE70bcca223618b67DC681d44539185a2b923EE,0x34C0f60F44a7Fa8d0539AFED9473864B187cc241,0x34A1af47d918a0e93a5B3c98f3c25D4eE887f85D,0xc0057a2C1523d7f4AeC9bC578E5b5F48070A974e,0xFBFA558C278D25258349001e329c5B150A452B95,0xE76b3aB1dB2fb5B796b44CF5C8a0C1f51e99f3a0,0x0157A61200D120B6A06D998587f96F5EFF2EEF9a,0x509A04aE924b52E7b5cAcA3C98Fd08e2629dB9a0,0x14ddF4A3c017A7bEaeC099BF1029F46422341038,0xa2a0Aa2851aC59b62F8f79D4A0d1BE85a65c8079,0x2c0fD5b15Ff3253377c32F730efFB35e92307E82,0xb8FdC52Cf0376188637bff67a137B6735A8457F0,0x6E13AFBf988f39Fd7E9Be0370e4c34E91270e1Ba,0x9A38EdE54Ad7Ea8ACf3Bc7f9C8f7b08ab19aBcfe,0xefB5111E6FA2C8d392a1376aC1572076fbce2487,0x9c97Bba95A67AB00A33CF3890dF051f4b29E2Bec,0x7B3353cb47E45a44c59C5D4f63Ce5595cFd2F5a3,0x4784351EC65d8f6bF6Ba7698e4E79B8026f38f8f,0x89dcF3e6166CD81a6E4e8B06e1185356f8CC089b,0x0F4C072203451Cf21342E844780Ae0ED4d4AdFa2,0xBB0A6802E633f97980A8fC91386052dDFf9892cc,0xcCe8cB7DC680D37ED56ec47c14CA171C5c58022F,0x15e7b478DE6db3cfA85CDA3257d394D79e8Baf82,0x14d74333106E3210f289464D19D66cC0bCecDf43,0x7BDF2C5769CDa7C12F48f9d0f1B07D8D0A57f128,0xeF490377eE6f67c57d63DaDe3d8434B17e5959CE,0xaEA98eB953525e65f7520f27cdfeD4DcbCA6023F,0x43EbBA6b7A1eD74a7c5B7BE4710157CE181bE0Ed,0x1b98F45B29a5cf471ADe3cD2922a9Fadc6a693fF,0xFBC31f8A580f00E317D9008ae10aE362aFB29841,0x51Dca3ceC3942CFbBC7cF6b89dd5d9755bc52438,0xb69E265bB2b6c31B1a5BD8dDe6fcAb858a67A44b,0xc46c6a6342497b7530634505C08860050C0246CC,0x69ef6279B0b454577e685395410A95D873e9d82a,0xc3aD5ecE058B3dFeAca013d33f62FF5bdCF1BA61,0x9E7E18A1c92bBbE9f7790e6E1296E7716869D7fC,0xf9e2F9D1437dBdd0Bda361F7F91740233c7aD033,0x2ABBB9754Bd3889d9BB5C9659c0D825290631DD4,0x6955fAF89FD43387EB6df55F40DD69b57f484c59,0xFaAb692aCCAA3466CE867F6597F816Eb9342fe7E,0x050d7c826C1F4554Da2Bd2868B8D3784730973C5,0x6bF3E88697474b718Eb08bd18E684b655d331eE9,0xe28d5f727080f8B5C0448218dEf4C1f111A87202,0xd695Ba03fd7b4f6dA5e35F3E62dAb57AE5363979,0x407729F78710c2eC5d5efDced2045cB15bD6DaB0,0xb73043aA6a272cb7e02b96123ca8e25687f49d27,0xB8554FB491C97c65201A5E736c7E917B9e37be89,0x7FD492Dd7041e5a1500fF8e3e4F0564eD5185bF7,0x4238FcfDbA55536e9dB5F10abdb2084CA32e7E8d,0x7aF585b1e2aaFe57feC14935e06562b1943881eF,0x755D8a61EFF9be5eB60b3DA381f378D36aAbBe73,0xef5883d6836B006F64a7Cb2A9639E23D7d2825B4,0x0F122e32934bDfF19e34d213329FCC2FFeC9Ef90,0x9A7a93Df8Da07Ef4b08366Eb2A4d2137b4821439,0xe96853D9cff5Ad698611709fa11E29F8dfcf89B8,0x0D1702572889cEDb39Ed459018Bab9711ed5962b,0xC2C287D082f3EF11Dcd413643CbFd56C557F43BF,0xA6d59E052e80AB7adEa26858f4728F185a1b97E7,0xCdA159B2193BF694835c970A499ECcd6de6e801a,0xf2614d8239940785a44bEa5b36808cBf8c486c55,0x8FeD0Fc57669808AcB9Edb487318ab2843a2199E,0x5492592eecc026Db44C6B80BFEe17d32FA4C0072,0xA43f87af2FA9d5b98781368300FCE0e33C053382,0x0E0b7570B97E3078D90284F9365D1F84ad9F213E,0x38f36Be3b0E098A3347502f025B958d9D89b3D46,0x77E9CbF615Ae524555AB1EA0195A91B1E1214beE,0xFF990648740c1ca5895BeE07b832a3aF204FADED,0xb67F1f2cE9452eBea814b2f97801e050CD9C3eEd,0x0Ded72d6Bca9Ca5EBeE4c03a2490D99a7D0dC884,0xe9859Cc94d531625cF8b2B2Cd737CA637a9271a8,0x391C9F4537afd45e82e0510B67D0d460CBFf725a,0x8376Ec7bF0E430cf902302605ffb31a86a21c5A7,0xcecb55950b8C94Bc472945Cc3C5A31940E2d0C04,0x0c38c28D31C80496aa02019f322dD9FdFE8e3aA7,0xBC30A9d8AbEed4C7B2C2CEE1855E198916c5D8C3,0x553aBF9546D73eb80E278d2C820B5ED0353142C8,0x8ABe0004D749cf98C0fC1e09E797B76AdbE8AA53,0x7964306610B3c0aDc9F34A11BaB89F3268D7154a,0x3B5E17848a468315B7b6a0d087eda78c9B677e30,0xD7A831448A9A9bB8CF294f11B12D4fC64Ba97C81,0x8c7fB9526E8139A90ffc4058AE3268fB906b4D6e,0x2B860D532E0be424b84468219e4783Cdb75a2938,0x4e334CaBD169302b05C52c8a8E61a0aa7EA7b0Ab,0xE0C0A33416F26712e4f59e8A2a345609b4B6dDdC,0xa7645AbcDE52Cb2E8C8C5879f7e339a5f6E5c6f0,0xC4C73518946Aab4A73578e3CdD85Ec959DEaf981,0x5958411FC670fE546f3c8C844c7B2f134cb43CE1,0x2d329FF45cCEC77dc5470b4cBFBa82dd8fAeFAA2,0x5B38A1056e77Db49a838A26b1CdFA034E34541BF,0x3d31e5c9F7Cbd59050609a1A3C3686D4d08c3008,0xF5AacaA00b7BD992b3A303de095BC5da7DD49916,0xe4713B06abA976FC17b168595543056F1292252A,0xd5c1A5036B29c386Ab4f5DbA273cF36C0FEf73aC,0xF72f0a858d7D13d095f7FAA098fB624B1c109936,0xCFfEA90e4376B96c53a99851BA8c86Cb9DF600F3,0xCa446340b52433F9A25206ed4Db4b333AcE32299,0x8d3904785A581c58f19Dc03415fEd16536e0BCc6,0x73D544e64aDC9781B83C4A8fE65D45AD53A9a1aF,0xE8533D989165AAF2fd618e1Cc2B451D6D8263Eac,0x56E09255580dEb918E90Dc945e14Bd7725017179,0xEDc8cD9DE64eedB5F57b559a9825B85680949686,0x3754B101248a237aD3743DEf947dfbDd3E745415,0x8FF9Df4bAfb72dce69e175e4D515B43C2bDF6286,0xFA399385Db7d133dC098d356A75254E0978Cb78a,0x56156009fa9d026e04fD76b312df76fBBBFbAeB1,0xb00b7D03aAed54B7e5EDAB994A136713844e8957,0xeFB8Ac07C92cEF03c643Cc5B540ad12da4803484,0xaC9DC3Ea39797eE5484F485b2980b535d5a3C1Ed,0xfAC80ac986ca527078eCCBc93EFD93a1D3A6AeAD,0xB35FA4A7708B746030267A1f55cCC27cCA1139f7,0x3c84d2015378a7376010BAfc5efC626e882335E8,0x23998A620F3605fd6C0BaB43834EF896018b4554,0x74Dbb176B72b7a82d771263460Ef7c019acC9940,0x2E67c48a85D34e1645dB8Cf8B1c7e3D117b531B6,0x94e0B3EC075F33486D04271BE6cDaa5A1c38652e,0xC16603e0F85bEEd096fE229b74F94a43BC9c7C43,0x3F786e0bfD61FfA1c13e144B231dC43EA72189Fa,0xb09e35D7e811A17DCa3e5a2ceeA63054eE28a074,0x6D57f3B7746e41158e85b272dE45C7aeb0E827D6,0x7bbECCAcfEdFfaB879f6ea0E663e60F8c2074DC0,0xcF04dD9b77A6785712eEC5f3105E5b2CB94dA97C,0xf1711a20953F21Ba699229bFc38735489dA1a692,0x37415feE9206978cF2377e32F40836aC1ccCc62f,0x88cC6756fb0057F294d5f9363F8403512ce6Dc44,0x0b07725E54de7671B1a089f6122c928c49cE1F83,0x992d903A8167F5A4A13Ec70c65b05621f222EcA6,0x274D6ddBd2D43fcB58ecDF9Aa7D798FCD49C1a40,0x2CD17E77CFA662A78C1764C18419181efFd3e191,0x6b79b82c5CFc8230Bcb9347D093b81D97D31E562,0xdadb0b3792F47b0E2dB587696fCAcf0457A3ff4C,0xe22883b8DCD695843CB7875F2086dA1112F0d951,0x7D8FC49bee312670f68363eba2AF045Ee695a859,0x6B2a50571B076dA4b92F4308919Fe5ab1cEbF01F,0x439c8b04F605752179A373Ed5BbFbee2876Fc6c2,0x8ea3A85aC520a3e26736d571D33676ae97e9b583,0xd909123d846AA605CF7127ad178f7e4A9DbA8B4f,0xF32E51E28210229910C7Cde4C9d42f18cDD5385f,0x30Bd068c5Fc5EbB87EE395B043B3CDd1c1378D4b,0xe1Cc7f949C70b803B5Eca226429936Dad535A213,0xD180834039e772feB34C6b42b206eAF1E582854b,0x2b9EE87E5B597bF042B0Dc588F45cD3e2B1473D6,0x4D1570B56CdF3048717E8C287C9Ad9fa10A35F11,0x480DF72243D119d4826a733e00A7b98563cc449F,0x211Daa831dD902997152b7C14c23C09e4A503914,0x990C214889334035879c4b0E70d17DA9F7703483,0x0e11BDd390085a3cbe7be90B22C9F56F18E8eF11,0x9ACA9398e804df364B72b36EBbA8Cf8433E0C999,0xAC08eFb3DeeFE763Ba4e3B210c975cCdFda738A4,0x62F250495CdCbc332B656a8482c5a24B57171e44,0x6961349E255c81eC2e37C9FfeE54bB169CCF86dD,0x039E83CF3971434B6e256CC3e467379466ab9313,0x5c1486C77957d019525e08Bdb37b6C5Bb0d8F188,0x74708AACf09583fd25D1C9Afc18C8f69f4417ACF,0x389B7F17e1ea1A02495Fc8E6A9eD63A60cEDb243,0xB7362CdE6DC4eA6a44D46BF23544898721444c8c,0xb0024fB5C16705edC5C3E8f66e5F79f864E952b9,0x7066014277ddE23cD88718504B7DEc8a398245Ca,0x3415301446cB482213CaF61029eBc3774eadDBb7,0x9C09dDc82561e924bC541bdE1976899f214Df9Cc,0x031E10e474c1d7b8638F199d30b4502cFdF89AbF,0x5ee01329a60019535c9B95950EE415F15EFaB958,0x00eE1dC7F82459534d508A702846f940001DFf87,0xA29C415A745aCa4637886A4D598054c6454Bf677,0x24bC559b81D24C664591F9AF19EE8C108A201595,0x0b10AFBa8A46c8110A196f3f837E399637985921,0xd5C1F4A13b09fa91b79C133236BdC3125784f795,0x9949385848eb72bd3476C5c9F3EC1190b877c618,0x19f2B4Dea91888c72e0F4543Fa6CC4c926fB401d,0xC28786883b8a56804D2ca5d92a37A79c7cd7c65b,0xAd226dB5e142F2610aa005c482b78c02c79F3Cb4,0x61Fc0f87D419Fdd94248059861BF9E19652deCe1,0x6A57E50db5e2b89E19Fc488f81bB0F5465e35162,0x4cF4427AD3484e1DD81cDA2c41DaB4EE2BC93823,0x9E9c1F45D1624B899C6c9577eAF4edc5E2A56aBF,0x60374A1B9e417fA4a60053DD95B881e216871376,0x713001784115E71315Ad8711575f971FBe09F9B7,0x0e451f953e4301a4Ffd3Fa9c2491F76b263cf108,0x4ecA3Ee20AD41DF5dFAb27d2e9D62c6EE6536062,0x8B9fE4894f7B2a6145b5D4865e29abCf48012075,0xd2343Eaf48B0D5504ED71681F2360f10A8aFef89,0xd559b6f387ffAb63610B060b8be1B8DE6827600F,0x6A5418b3c33c7153161c49dd535fDAd4e4FcA12d,0x3ED2D7ACf0b9ab3fC98603D7FaA920e613d3e556,0xD0fBbD9b4b2911Eea59aD57aE7A1905f49CE09D4,0x938f93b0e12FBe253Ac1F7a39C1D6b2951d5e587,0x7fBd7a7c0c7D7d0e33a487F6E0BF3F8b213709Db,0xae2B079bf8F08883c404944f87F0F5303edE2292,0x78b1B5e843164D900e1c4c0DF7c8926054435682,0xE734f4D671Fdbb7c58Df337F9260D5e55C3fa7Fa,0xB625d4EF08d64dae4759E347e3984B8B7Ffcd9d9,0xF0DB70Fd5fA4DdDc2e61779a1eA36908932E9F12,0xE2e05ed14FAFaCe47B99137679C9d6D5432b2c22,0x878404C02c8d4ec88AFE827dE2a08879752FA3dA,0x81131878727f4d4dADB1A21d659868594927E74d,0xb40C1eC22093D1C5d9467152E073d7E384e6dD9C,0xf53CD61E002aF1A78a115B0c1936978e22B12768,0xd9F01f0936100fF2656a3Aa3626Fe42d771D3C3e,0xEd3C86b42eD24A0cE774A27069Ac41aFd5EEef84,0x92e1b2C322911EE22242E9a6E4Ccac2D5D6cF505,0x732d9Ee644Bc1d5958e72124F79133A8CC49a1AB,0xd99DACe0F9c416DCD734c11427D8E9048e9d8FA6,0x26187AF2E2D5A941eE2D1281C03fC0B1bD14d940,0x2d1184f708F383b42cdE6dD2baFa8bA4AA190374,0xC1d56c90adab2C06078Bf85632BDfeB0f9d4B22e,0x6588e8DD6188E204dD468cB98357A87357D94175,0xdf078B446b4Bf2CEFaaC96dd9f20458fE41465D2,0x72ED780c2d7b1FD41aB3F5c43A7c68dcC3dD5428,0x1A9949e0945d2cB7bebe54162a1bA9E6459b51D4,0x2CB32520621c2079010dB985282AD42D05685D96,0x472dCD4c1f594dAc984D442131C4503C75461af9,0xF278323e76F825C2C91e110a9cDA8c6C717C2b9c,0x17A76b4e13a0cb6f1D01aD769Bb66Cf41cD2c043,0xaD2dFCC4D2Cc41b2f9e19812237Ea3D8d3f40401,0x3AcBf5dFA243eA346CE741C9F3D1556d33DC33BA,0xe8359CdEC4bDd8B8A46EF00093EeEb01a9debA16,0x92EFDfe04AA5DF1f1e824e5E3D3928Ca979208c8,0xacaCB9430212f977ABbA9345F7D1Aa631E3e0771,0xee41100c13daC5725eeC4402B9b45c7ABA4957ce,0x639dDb339665cCCE59C6E1728ED4E06a12E15e6A,0x253168D6EabB56DbEF02bBCcB366936fa53002B5,0xfAcB518d26dD126175F1808C92Bac5EcE92A11B6,0xC6236cA9DB4043C7756e5eFf151aA953ff683eE0,0x2D19784334d6E08FA5b9d9da6509E77f7f671CE2,0x81Ff54C6B56258c71946e9Cae615067748802406,0xe24eE348f353813728818cc6e79853e943f4Ce8b,0x63fEb64d3dD1b0dC0DE78839343acCC8dF82316e,0x5499bA98BFD13839944ac4aA629df36d613b2a71,0x0993562A75eDed9f23434c408731daCD9754C83a,0xeA7F19ac27d0fd224E991E1bc6C6ef23F793BC0d,0x4Fa7e65636b87e01b06D5152c1Def322cC85F443,0x62414Cf8B1B04C36fd788597c55aB3E3Db24F4f0,0xD76809B18a8c40328A00D9A162d4eA9254737238,0x576519E51a978340394BFFcA55AE7834DA4896D5,0x34f89Ddfa83b105366Bd60Eff7EB1896C9aa296f,0xbcf3Ddd4781A156B68efDDD71b0dcB40C25d7785,0x295A1257e1c3213C621FdbfF19679bD97deDef40,0xe7Bc4931E93Cd97D58b7251a18BB493D23a2Cd35,0xf0E60898Dac4E738Aa48Ac60C689318608ceF746,0x0BF5b434F4208308b3274e925faC89C297ba1f6F,0xD85c02c684C04eA54C289CFf29023a6b4f050BFB,0xDF37Da805F0903F17E1D29474A077EeBD926c293,0x61FA0BB8BC7FC2990E3155cD119859d9F7c009a4,0xe2665ce70Df2E7C474F10D1E23d9eeC5Fc460F25,0x3279A9E40148835A6dF92657b40C35d38ce5c32c,0x413da3f152Bade8152c0b7B2495321901f292C80,0x7f983eb1DdfBC869CBBB4ea573cCd6eF1161E513,0xC2aa70E4008684393800680D98445cf50F35beAb,0x9c36232a8D9873ae79Ed0EC4045C61422B4f1695,0xE32B8DcfE8d62C636Df175910a0714C3254225E3,0x470cb04b3086812889bf3Ba2180c584556A5e689,0x6D37935418a4efA84F543F4ac4F3a5f4CB2d3d8e,0x7CE5e82c722bc9f88530406B19bB78247bcB534b,0x945157Dde8d93C2c1B4481b92AE2b96BB6710D6b,0x272Ac27e2ffc6dE6BB056F36567F3B1c78Ca0BaC,0x65e92E029bE941E3ea489F3632c282D6bb5b4397,0xfb1DdB5eFdeDdcb9F599963A0Aec8eb904De3161,0xA6f07A32f78196552d1bC4DEa8eD6f70D3dBE308,0x0C26CDe1B6d5377DAb07146b2b408b9fE3bC1D2b,0x5fdb6770c0E029a8283Af98Dc36fb9C1976AAcb9,0x0996A8F51dE95c3F74F509C4bd27C85BC271d216,0x4EF99b32f216D715208290b8A2Eec229fb09A942,0xcb8F3974Fa8A13e2456259B2Fd1A75E0B17FFcBe,0xB2382d04ec11cfC2F5AC5b4a1A8eFe22073A236F,0x9812797c12f13cfAB63f35031bbD82f03A3840AA,0xE0D54a43be21Ab0b3Da802A2a64F1e909Aaf98A9,0x795F5F5b6dcDe3c31787D6A452b05798d40c6A6C,0xf1684Fbb2ec9EA929Bd1EFeA4a06606918ACEe0b,0xc22967e0E7fD239369F6240589bE01aB4bE0E161,0x58D1a30c29E22EE57783e0E1acE9228cc9c3D7b3,0x23F2E4C3fe5C0c939B44c1d44373E4231Bc0EcC9,0x6561b0e908F3FAc17F9617B64E1c192f58367E8D,0x8C2a0A1c0eac554414aCd94Be2DF958C4DCA0B30,0x77DEA6215B7B444Fc0639b55BF1d86B1e315f0aF,0x20B7883B6E15163076300956830FA2EAee7f771b,0xf2Da31917b6d568FA376C6e50a8B7b144673a3ec,0x26BD12da996362C9Fb4edf2E2ce661be8AE77009,0x0de0c13eB1C29b56cbC9991328080712d736f691,0xb1e58945526A21a24c3701F4146e8f840E9f543F,0x3F53F058a1346D3D98ab2bbb1326976D3E8c110E,0xc8D5870CA3078B451eb626648925048Fea923333,0x3c85EEeCe4BFE9F4e6823Da5056Fdd2164CAcD60,0x685b862CF06653119Bbd334946b0a7373Aa9a47B,0x3D3cb065DdAe9daB7d6b71fE1b1B22B66b0fa53A,0x5cc0fD9dFD3fB55b4F488B67cb349BB75082c1DA,0xdD1924Cf5A7b031d29154d5161f64927Ef04faE5,0x7fF8634C643CC8b91F6FE7AC8a0FfbeA19CFC83B,0x6bbAd7eCe0EDfdAac60B6f03F0cFf1C531E8B2e3,0xEa3a4786Ada7bC64ea349F8b696dBC481Fb8cE81,0x5AD3BF53a5C9fB184768aA29be494452D24dD019,0x21E2AFfEA42D113E5A4Ae98aCbADa0EAa02d5695,0x32C3Bdd638bb744A4E0e79c10aE233bDA9AB27a3,0x078468E49E0D844d3Cc262d4A0193E2251a64e7b,0xdDb0DB81CcA27B2C8D3d15544949B0bEF742E5c2,0x53985c16321632bE042623706E596dCED20166Be,0x8F413e766a2EC3DD6B3855aB9f372CFB072d9937,0x769B985eAD1D02b2b7Fa93fBB6eAE4fe1B673768,0x82f476cc3aAF427A6ABdE138C741875274f7F01d,0x5756a75678bB6d6297B1e39DC798ac5D20840a74,0xfc7aDC2a1d4A11a7Dbc2a8f6A054670C137B23e4,0xc798034caE6C6854D00e23EBeAEDF86E9a28AF38,0xef9c8F1C8aaF17452c6Fa706b02B2463FeA0aBB1,0x63aAC0690E1996FFc8fFc295bf95d60b4bd28Acc,0x7a5A2965cC3ed9d2B2739B615fa3231eF102E383,0x4052eE9CFb78f8ECCd0a21fc5457B3D58C4D95e4,0xdd8D9Df5ff4210A6485401E61407C93Cc24D7131,0xa4fD55095D1144096769E61EdDcDc404048D0952,0xD9621D4c32CD005d93962A3Bd0E25502998E9a5a,0x09867e6b45C486513fBA94DD924AAB9A6acD396C,0xd299292dF0bb17a8627Ca65fF951E6d4672C63D4,0xD369756F3dac9D5DB93883F7A8cE66d8A6C3e3bc,0xfe93fb813128445ee052883A63cbB7c5735166D1,0xd8b6090303a6cBE2b64cC4b2f12420F77069d75c,0x57f0679EEa804d485D9Cd2CBd569454E7b14ae2d,0x77583412FF92e4E05F1261E38f1979CDFa7E0F69,0xEA09488f37844bC7ECd88a7cF78E7317D9aBaC98,0xDE24314066F14B37240b0aA7fF08bBBFcD8aEBad,0xb9b50F4e5a3f7Fd63e0Eaa6C77A08bE9F5B4BE00,0x9fB8Cd55259cD20A6620a796E8455a74B62c2CE9,0xE1ccDe73Fc5cE2Cc69ABE2AFe105A7EE6fbe97f3,0x57AdBb92c14Ac24a16Dc3319497F3cc7f0504194,0x9ceCb6b879999e2F7A21AD01F65B962FB928779F,0xcC84878AE314F08FC428f412F8B4350Ceb445561,0x4DA8E56039d22cdf76253a6C1c1d1f35aA745A4C,0x7f1e69752f2Ae51Be9E6592CD6b1600e84E60ef9,0x6ca6e144F40B412d839e19f929aB8617D7537A68,0x8D8e0DbA39FCAbc4c274277E9E14E30E865A0C1B,0xA3c74C3aa815b1BAd5A11511AdcC7a6D2FA5De26,0x42A8FF87C4dC252b6817f5A0EeD826eE32679987,0x81F058f551783eE1338cAEbFa915F34013B019eE,0x4334aCF7A82443d5C64eB863Ca6a5E49d9500AD3,0x80C9501b3215fBC2ad942c7BeeDbb511306C9000,0x0006Bef13b249090A3Ad6238CE55178DFa8AdD1A,0x75184B1F485c9b3FD6388191D75C012aC7d80E74,0x5F34AFC51a6d2CC94748a21e525EA35f80F8c255,0x35136841d869Be0D9c232A40904BA343762CcCa3,0x223b691D7fCa83f9F36fdc9E0ABE0CDa0245089b,0x2ad69210323bbD10E7cF531ba024127D9391e609,0x48a5aac55CF76d730BB5C47e5cF22eb2Bb55473B,0x47659aE6e6FE57B73EDEBaB0D68bBF7354e12021,0x729985c104b7ba12AB2BeB34bF516dedcd4b32F1,0x27D438Df85fABde466843e71c61eb84b5FFA5D18,0xa28cFc98FE7c33f2e2C2ED6e2E4a04d2dD3D1fFB,0x8aFd1e7Ae8F21B42f1dbDdc07266f7eBd09A86E4,0x027B7566Fe4244df6fCF456D74F96c240Dee4d7e,0xcae4Ac13fB3DeAE9650AB3c6356ceD78C3378fa1,0xeb3758f1c4f07f5C154d445049ECF57f1e473288,0x9b24D8fEDDd6a49DBAB2267bA84Ac82210469448,0xA6e03d98e5d23ce16482Cc45641cC2360fb5820a,0xF6Ff3D4473A6a6217d3463Efac5e78C312813Ee9,0x63AC4dF129D2acC240b090De5Bb2AE514420a09f,0x67f27ad756E509F5711527f1fC9fE9CABb3175b8,0xfA56A31D249E97fcC30F02dc4bd6e6f70AAe4568,0x1Ab5f846e685C487FeA3E167fD1761732F7909Bc,0x9EEE1A5D44c136Ff4e78b86934229242f828f2E9,0xb126326a6b05C19c3Fd169B153DeDe6Bce00bc08,0xf08f079FBA8646adb999AeFcAF9e23B8cB5d2aC2,0xB1F7162E31056383e0BF5fFF38EC08cf29f773a3,0xBF90Ee453b3AB6d29a8Ba6630D92Ae57f81D05e6,0x4A480a3c76996484Ab7C2C570cD460008e1d26d7,0x286E51e129fB1A2f6B5b4D7341aDa3BC3BA7f386,0xd8152E207fD1F54DAEb021193398d95A8Ef85679,0xda787cf75c976C896111ca09570A944f85AF2ccf,0xbB79c618612fc7de51E0b85d35F9B926C08ED5d3,0x8F5c956faFD5f72C6BE9f8Bb6fFe395BFBd08E59,0xD8f3bCa6Cd6B380539C760a53887280E3a46B629,0x47e62c5B67619032f1Cc1AA066f03BeD81E46010,0xcDa74E76Dc971BF636D0D29eb352c2Dbb1Beaf0D,0xaEAe567Fc74bD51b7ABcF75057f327a2DBE88aD5,0x07599456237777486d933c7E72e2B8bbABD0B005,0x889aDE53D54AF7504646B7CF3538A1AF0e554924,0x137fFce9ca35B67C7eBF9BAb03Ca212aD5e0fce8,0x9b2d8aBfeD85d3436368981d7cFDaC4Bd32E9964,0x15CD04F71dF0A7553FBaaf4F4Fa30801FC242e3f,0x1a382d13C201234c2E3fD0A7E767A1d985C0c725,0x830e9E07d8614aD59291ed4D7a11398Ad09c2C63,0x927c469DBa30095A7661cC5dD92E5059B030050B,0xD9b2b0578b414aFA31BF159D230683752eD51774,0x4cE133b7Ee8A61a4ac13Bd525D8cFa36AeF2B93A,0x5cb642349b35eA6AACA13049663C144dA81d890c,0x5aC2E7f1ef14618eDe402CbC98569Ddc4956bf9D,0xA1A1B6275ba2050238F2A1B396f88fc65B63BD61,0x334d47E58D549529ddd5AC94f35A1D8F7c657c76,0x52b0c3D58Ad771fE192530986E283e1037C985a7,0xc5e7c9D5B8a3fe582a7BCB374533865840AE1BC5,0x631c06BAe101c7168C35031A63cc9Fc0ea0892c3,0x79E90dfAbB202996D272CEeC169f0743E89c9ADa,0x27b89e9beC5173814a2fae87c61C0CFA81283209,0x6D9C4935876CbEcaf3244bC9d6Ecf40C41A832f0,0xfB98D2DDEf4C850A3Dd8541508f1fed916F8C91B,0xC3ac86E1ac775c7BA8118a09BecF784e4c3d8874,0x3298A6789eE0E6Bc2b4511568d6f1B2C6E306B60,0xF5cBe47dc8115AEc8F6D59c3392d260C3E470097,0xb3e524C6Ff7835D65caA01C1a8c55dCF8A680698,0x7f480927b43Fd4094C178DFC23D1ff8F2Ed5cDEB,0xeAA93A3140B0654e86f853f3FEC420b63Bc02e39,0x84b2cAFA915F891eBEb45612903e7b7559d08336,0x11e8F0Fd8A5CA2a1Bb8Ff2378f6110ACD7782CB4,0x982E59499706156b29A754429CCE4C73DA39b40F,0x802330844C47b1059451d9932e650437a689759B,0xae03Bbf3b0f54C34643dD374243317Ce76A55b9E,0x8869b96dF18e42c99c3Ca2eE3CCbc80ceA06236C,0xCdbB31299A8073BeDc0174329E3203030891Cd3a,0x555b85e1aAa12e38f2c3849f9B77187b8b304316,0x65d678C2b7aB4054360DD0179aEA58b5Eb144C46,0xBF33b9C005D9807dB5bfaF63B1c2FADe53654eFA,0x4057f07f8E0189F365Dc2Fbf5829d139ED6cE1a8,0x475112aAAfB778B40aB78879C11dEBd04C4f5194,0x637dEDa8965D4a8F12303c67Ad59905974D7844d,0x1387a40a44766B9a3C86486ecb08084DC3F6C431,0xb6eeD3E6789d95483AD4c781957C32149E69B6f5,0xf582f6CE1a59ab628693497eeC12b47dDc6bdbaf,0x9946ac406AfABCF22484974bDbdEBa593741962E,0x8763445693012F77eCA20Bd766f4F6674e9778d6,0x66490f961F0709f710685D5a726A90484E4269A1,0x1Eef0bd83d04E179F6E4edc52C8b9A6ce6011bD5,0xedBe38588afF90d4550efdc91801F2b5D4bdFd7F,0x139295eF4D5f175d856c8b3395711ef495A5311c,0xD588584a05AB935a3427c2566F771721f555f0E2,0xB00720D346f9734f7371D00fE5cB2AA4570a91A2,0xB90A455832dA2E1d45549ad1425662FDCD4a8823,0x4a246A6d7aCf998206C18829c12E52A7B5Efb087,0x66563BdaBB11FeBB6d62EE780c5556539abe39D7,0x2e2846829915F43d3e3444F3f75C09294ef2A78b,0xAc2e7bB8bB02e7A0F4b3447226557Ac2943843Eb,0x7f21F5fFFB8cDd6F7772D9F56b53eae2B956033a,0xC2BB22d150a05D612D519D1a60F7963569c9981f,0xa02124eebE07E31CB5462D76195d3F58965aEf04,0x95B0a5f0A1D68aaE10c254f1A69e5208B3d79C6f,0x8D582e731eb7a34B59711B1eA4F34eB41b308547,0xFe8Bd56700Ec0794edF800C654170cA3c40998b8,0x4A44A49B8620BF528289C4776BC5Fa2b4262D0D8,0x5FA981C3DebEa67812a5AF794Dd05d6de2c92210,0xd0B99DBafEE2bAe837482C5b1A828CBdcef5cbED,0x87828fB64e9626f4AA88918BFfF9e51c7CF256c5,0xc87F0c0882cbCb7CF62D42fE8435BA9FF55DE7B4,0xdDC435c8d9B23015E4B665e36aeEf95477db649A,0x1DeB9f0f3cAAAA28Bbaf39DE9cCf1A18D68DBfB7,0xcfC4F0E7d354aad7839e173305ac04bc464930BD,0x9154d73EdEFe38766526fA3718782a5c1C470edA,0xe9f3a10846627Fbacf5807082D4D348CA13244A0,0xFfD2D6E5A138df9e4b1CE56C4783d59c2763d2EB,0xd02c16BD10559655341650C4fcA77A5739991138,0xD057B3206b698D13Adb802283Bd84e780CDBA75A,0x8620da37062E7B4809d6B933D24Af61516920032,0xAa973DFc84ae293500601780292f3cE8e3CBC14B,0xD015FaF19E5Da1c4461fCCD455f276e336745311,0x385df1576b906beDBA46F4728874c3BCfA1B324a,0x5123F8F8CCd88373b8a79ebfDc65Ee55e6Dec335,0x1F59609C1A6F3aF0A6c711C271984FDd3305983D,0x10A8f983D91386Eb25C37aBc1Ba71Fe8Df9B3C2D,0x8917BB21e0878dbED15a57910D6641554a4c086E,0x0035A907ceA37498Dab08838BEEc8a3B863B56b1,0x6101E6E89edEa0FadE9E07066A1D09A42065EC66,0x35AfEA9908d82C5E40CF468793bB0123099D84dE,0x74289be838CB416b3FC524D9F77F7C95bB77A407,0xA76a6814ac0B64B5d941F65be8C8F3709629C6bC,0x5F42aCBC0d43db24A8c1b80d3214e6C9dd08c184,0xe885fbeb7f1288864E91DFB06cf9ed91BAF1D687,0xf97d4ED9E1B56A9Ab9B9eF04e82D880CaB621f1F,0x0944FC2d0CA9befCF2C465C29985C4C89DA5b0CD,0x5D9E877395750bDD8C4a5223c7607425c7d479a5,0xf955736Fe4a87465B830A6c90833419A8e8bBb25,0x8ac6Cc7819Aca399d19AAb140E69407e6E01E7B8,0xdb2A1b45F71f1f15b0FDbFbaB2B4C26407568e15,0xaA4d1f4e5D12F2289196d5304908d3E30d26c9fA,0x851F66fc36E6AA15B3aF6D037fbd2b09caB565bc,0x789024C47b15AE4B08C96999951846dAe8f7fE9B,0x87654Df496f41e9b279Cf95b64DEA6BE1266ec8A,0x200e7cD348d957903d451e50695cB416B9d3957c,0xAA09bCb1047372F4eB0DE555fD16d251F9887d94,0x197d93A92208180d73Ee7C8eE8D0cD9053c1d6B6,0x6C5b6128DE537fE0D5EA4683d3B1Aa9703eBF3bD,0x8E327165b6ADD2e28646E176182D6327E8d2F323,0xc7547705f900f49095066D89a74684685c2562ff,0xfB10eD5e0A16324313616A2d45972a9a84cE4e65,0x0F9FCc1066B4753B795Ca6f549465776B998899B,0xE36a397AbF2e594E0F42b9B836C59601E6fC0267,0xE5647293B332CCDEC31F5D1AE3ddAfeF9ad3882A,0xbEEDF956EaE5C8705d558BAcdDB8C7F3a3f6e8ad,0x62D5eB07B812eFedf6F70daa9741c3104dF10392,0xA80349A9464Cb3186147C48D7212CD60AAEc494c,0x743733B1b0783D9fFc46Ff614D6151E0233B9f08,0xd673483A4974865C9855D48706E0f1118E3FD3de,0x0582D8194FB42F6dbEFE2a85AbF6c74D5bc3E187,0x73e269783b752a3e14C2ffc6c31441e59067B029,0xCf71344c00CD87Ce02139ecE305F5856ff51875A,0xDe137751Ec0586AFCA1c42eD62F49B0419C9e0a8,0x247c2428191836fab634599832085673D6bB5ebc,0xAC4f6c9dA26a0c0580856A77e394C6C8F2878De2,0x18807Df4e7AA60141A21839f3A7f0F3361984B23,0x6a1DB66bd9a3799C479d50951751Cf6c253182f9,0x4Afb2BE813f25B64A4299e4D80Cb0104eb263F11,0x8D6a5340892ff437FBae32e877B77ad8fc9372ed,0x8E7d5194E22E6e8d657791E61e76B426773D62aC,0xDF805eB64093620E0d0b7725812d908d3a957Ed1,0x293F2c1301bF7cbc86F24F21387b0347900dC976,0xd73D75682472a715a66EAaf251137cB1CFb2932b,0xC41e44750a1dfA01b417a81BdFd917DB65eCB9c7,0x1ca972dBf0Fe8A3678eb4cD6B6216C302b67145b,0x164273444cd43b8a10383Ec55b05D568069F8e78,0xe556f3bf56222963Ed7bd49AeEC8DF9f8a03c3C2,0xb8b720f5006bEEBA0926eF417FA075dF45017FaD,0x178bbf1B6Fc1a2888Bd140776c53f1cb0fA1B420,0x4A54A19065Fe43858c8848f89a608957f571129e,0xA79F55e8fcD7Ed2D5E3f3719bDAb0bEC4A8f3EfA,0xF1115989DAE75Ad6f6931c712E55f4D94e36dB7E,0x02198Da26cd4531706E1Be1a0404d70Ed42cb82F,0x78668e3ba2567F5c89CB55878080595Ed1eE1532,0xf0C3Cb91387e3e37BE5528586396c8D5EC2d07b2,0xfc96c9De38447434259c43d4F2241bD52D71386e,0x34e7916D5d8681370ed0A6774CFA8347c1d2c9B4,0x233F61cBb69E1034d5d0dDb1a6FCacf80c5c38EF,0x996Af69659bEdB7cf3aF7D2135f8127ed30eb47d,0x79Eb4a5005922da62664b36e269353FF26056145,0x16edC91Aa1Bbeea459E28B01aCB1cA8FEe79D112,0x14d2dd56bAecAb1b6FC29eC137a0860C0D514c76,0x5f7DdC4c4586D4b56634A6A976545C843F338a60,0xc459Dbc87E27dFF52F2b21fA2657B9A5bc92b8C8,0x8480b89ac6ee776f8842A17f66544Aea3726C177,0x3Ae95AD952A26630f43E4498A7A82Db20635Ac25,0xAdD6a24B7b1E858b8c6769B82F17611b4A638175,0xec125AD722f1f6b2cD6D7AAff88C3c227495B5E0,0x13B24fA5F19aE0E9f9fa5547c2B5aF942Afa4261,0xE8fCDc329c9BD25Eb6d844EC4B4E1b5925ad131a,0x03Ed7c9768E331fEF1c3d6d89cD6454c32273a83,0xb423E06Fc7B9be29e8cdC616daC87d48e25a7bb7,0xbdD31160772498A5915551be812847dAa6F388fA,0x7b5Fea2D7ca3016f0f46E92E9cA40C46974d2Ce4,0x65E309bAE5ef3Bc484bE0313204f4f3101aff102,0x836266d230fC857b1e3a1A824C12c59C5925cd47,0xb57FccDF3dC709C3c4D0497eFBb9a073F6fde5Da,0x1e63eDe600b62f2Ff43b3867Dc86C8db19F8F2E1,0xFFA9F7994d20bA7DE035D6fa41e6871687F13290,0x0224215a3344e3ebf3Fb0e3A5104452489f51843,0x80827527114Cf5e466f52dec6c51F37862F29566,0x8530f639d68294A354522d1C8453DA2E561c001e,0xdf35a04B5CB35938D2F3C57f49A3Ff6a889670ce,0x49D6ebdf80d2084252f5aAB888f1FCcE997DDc29,0x9322109123B0540d8a4F5A2928ED893631fFf642,0x39bcA683A410753Ae85Da9EEABD4cB5b5b4D5D2B,0x280D0E4920Da5808DcA7Fb76be6d491c0F533319,0x83EdCd53C07f8751d9FF6f9F0f25DCd9DD371059,0xeD2C8FdEe39A6841c49b1f78929C1533f5986cdb,0xb445F034B4A211624C883c7dC3945A3f6C8F2530,0xE9b3fbec34e4C4c96FFbf3975B8Ea7eB562504C6,0xc30013BAa11654Cc37377845C58cB2F9A5AcA46B,0x654588270Ff471a15e7FE09e5cC4f4B5cD18b62f,0x7a41c650c95360d7aE3281eb4E56dd5d91E3853b,0x0fD34a6c0C484f0dA7fb00D8D028032406c57182,0xdeA35742bF7C670e86a11E2306160d92608Aba1F,0x2AA623258a13585992E2F5d7D50486fb2892d89a,0x93E0a367D0D4eeE72B7212AA360748AD1e443aDf,0xbd03308A3B0F1fec0fF6F4BA6d100C3041D3fF3e,0x262d2F90F05517739008246a827d58F979424d50,0xd1A9570647939e84e1196972D2356a87e1d3AD8e,0x4b4184b191e1FCBe428765b4fce813721549247c,0x6BAda952a80C5e83fEBeBcae62f524B361d1ceFd,0xA513c2d5D01697FeAC6e5B3B602489d8C8F84a71,0xeB510Ed57658E27A60053Ca9b64949A550BE2792,0x494C36b6eB1171229f9AE48Df9C28A5e576507e2,0xB016b6B24dE1598662B22dF26FfE27a15bd28643,0x8Faa9997b3f3E5C1054f74CC4A01c312cfF68007,0xD1325A2f91D2aA8C1B1d10A6F04F2aFa8609bf42,0xe73104bafe72F40B12869a8479A628513E9aA014,0x599dEEe04A19e3988f5927781C8e93fEAa5b3cbC,0x138776E605a008AD7985450deD654Cf9e6B6929f,0x37e8837d0f331C8e0A2Ed79245830f6Cb5f032CE,0xF901cC2811bBc25C697502d8e69C2ae8BE74eeCf,0xAEC3079B2A388837667120915864959f64d44B38,0x235370c641e9F5b5D5F6B38d7D9a526A74310948,0x17146187D85B0D993b068172ff512353B95a64FA,0x59f0DB6A672d7704AB8C50B088689cEC3B69e51D,0x6E959f7c452647bbBfaA933f7Da967a3d219C1BA,0x8c0487bf345D0Ae8933f56E4f3e928Ece9bE8849,0x0AD8BAeEe28cE6E9C943393531Bb6998cE575bE8,0x3cc7AA3E9B09B337EA45D4618e6818bD00508380,0x9b5faf112141311E7C5a3E5e20cFbde67a794f59,0x6d299b48D9adC5C7eD195000123c240906ae3438,0x42E0060017F153e920005588853f9567Fa666950,0x77Ad6189b5BdfaDfFB3E30885c06d5237f463E72,0xAADa7A57FF9a21114E1770ae1A514e53C3De7026,0x15fC9B02dA0970f8eDF6E4bc6F799EaB79EeFb3f,0xA0665CcB5b21B3b4671403A26990fd058b7AC1cF,0xcE6EB0f503ceEf7B4Af79f5d5a97451883B5e1e5,0x4d188ecD8f036c83c244287C31bdC870535483C0,0xCbB8dD6ab53C0bf758E74673271DB045AE70369e,0xdf4417BA80B9608B719276c917ECC5B9e5d28900,0xc8Ad2E37f5ec15a2dC3a729204F42B6f0D628853,0x0A474378E948DDAa23B081d366B66686848122D2,0x323Dc376282e0865f2E1FE112058462254d23234,0x4A86d53fcA883CE12E293500454ea2908b990132,0x736EC392eB92af50589384849f3A8f621f025544,0xa81291a386E72b17720F323DaD85Fc4cBDBCd16E,0x67cC5AE0040a911F1Bdd663E38e30A8044C92571,0x30e7E6801d9762c365194dE429cdE853349556f9,0x0393cd8D20c2f102f7c342BcFA647D0f51490932,0x94A3778D6cA52ce6b9637f267Cb805E6D2e7CCb2,0x386E91E3A79Fe2045a060fa7E5402315e4cE8A08,0xc3705a64373352A881cC8F72479EbF3A91db18fC,0x4dcA8D2752945D0553E3e34D0bE3F9Fe76729c58,0x72c5169DBA0a9ee86aef8a5233e91a88CC800ECc,0xE37dC84A55A334E1eADC3FfBBCa629BA9B823abc,0x5F9c4d6436C8b9C4deF47E0E26bf31fc8473f1C8,0x24b59fB9f305A5700c3bEfb3A8c32ba23d234739,0xFbe867c0bfD74fa7c1C39b194FeDc11A002248e5,0xc825cb06154f4004ffdbFAD1F97e1DFE29251FAf,0x521d7158A6b4D33c6bd89bdA56B8CB5b2A066319,0x09cFdABcB4e1Ec731AAa3eA6190184f11859aBD1,0x88a6B5D70fFDFF6B82d251795B50428b3Bb48117,0x7b98a7f57bbfb618C16c195475426180f6116077,0x94324971d9f0f1C27322D0Ed7607a1177D87b267,0x38A04Bb3CE0b2b7E8DA4bF56B6a56290d83F4ed3,0x9025102b2aCd3b962da4E47978d0eB16458bd9DB,0xD97988491e71DD03d5415e62a7A8B0C49E7147B2,0xBa2b7d6d40d56d60CFCb3E7Ac2B4d68365c30835,0x8C06d0aa13504437094E29a75bb4bc9265f45b4D,0xfe3cb3c474aa83668e828dDfCb8459522Ae40BBc,0xDCa7bfA8b6bfF2d337194d3d2C1Cc0cc20D22C10,0xaE0bf36d9ca8bcFF08b0212a659228cC16A4e8aE,0xe08b35E5c5aAb97cBfC6266883832dAcD3A5a050,0x23B3777036ae4ae9bD15fAAAaa0A96dC27Cd274D,0x1E5361146582A9C2a32CADE53A3A89813aE57168,0xD50CF90663F456Da5AA3672690d03Bc97bA24d3a,0xA0782E75F9ebB2FDCc2478d520aa92950A6Cf750,0x8087e4d6d4291778C9ce4143A11Bef2B20F3140e,0x285Be5201ff4E9a55aB0265Ad9DE084C23064136,0xcB3Ea946316C7bc2F58135431731FeFb12ab6382,0x178cc437EFF1d71bea766b20e7B78D83372F2128,0xB2327E2Bd254afdc0A609e4dA4FbA555EE00D286,0xab6d6565cFEAd6B973ba1e5A959e4033Dca5E3AD,0x4549a16B23C177837970762aB3750486A5D49F08,0x03C6864Fc2cfc9EBC47Ba83863AC9151098dD416,0x97c6bEe26821DB970a4C8D2e5568fFBE7269B41D,0x6D3c8f761A29F62cB5829cE6DCFd7E73641f247F,0x530E6ECd167226F3048D13a8F6eBa3c1dDDDbF9c,0x7c0078e427363Fa2015de03b4168369413fbf689,0x4Ee02e4E26054B830B20739f7deC3528B1f19320,0xd432236156c0Df043347c7c6A092b6781Fae48cE,0x11e4257C8282F26B5D720E7565E125d557Eb0a2c,0xD092e9fF6913F6473BeaAd95909821DaD6b499dC,0xFA8F8C14Beab1E73Eda17F3Df74532EEE7d66b00,0x00432FbD1017c3C90aF4835F71eF277Fc28F4361,0xdDdA7B0e7776B6a008B3e67baA0B24980480B9bF,0x5BcacFCB6FB2A750ef490Ba3E723ad7ca574D570,0x6A02F288B80D96675E9770a88e99618Fdb8a5aD7,0x64965FB65Fb2dA8e67534618F36Df2D2F78970cF,0x580E42791E1904BCF6f1F36212f652979f6d03cd,0x53D153e46655937fE1a3f0a48C716F5db3B66a21,0x2377c6d05D8B8af3c35318099dF67DEfbc29a249,0x886FA99A190f58F51540bF316852207E4A8E816e,0x5b9DFfF627356b40c19d7253D657418483E4E997,0xFDc4d55f97a8105031df2c3cBd04F154549B67A5,0xE70299b2b9b029C5bc8184d6fe1a57e4B62E532E,0xEd78abfD1d85cfa6BF8bd6C116e90c46DEE9ff1B,0xDd0809970CD98AE7Aaa42D6B4e8776EAe61a06Fd,0x1832C65105DA10CaaD98b20e3A079D1B29cd0bDb,0xb5d12a3c979C36DA416ee3997Fdbb4AFF1E9deA9,0xA2B76678D05A6132Aef90bDb3E1419E22852046F,0xAe21B65C913701d5580a9457BC8BF38f4637a038,0x67fa2C157C917a7Db2525f79caC54DE2c5161DFb,0x0dD79037f50917eFDe3D8c440F874360C5A8B9aa,0xF115c81C9c7D1317416f83d42579f6038485E071,0xa41135722858d2e5A5c35A8C8326EEEe2A53C10b,0xf9Bc3E0E7c594558eAdffAf64970F2c0f3cD1945,0x2d32067DD357DfEc3FC667FC7E1c093269cBc41d,0x059f9609CCF838a1B488faf2073510d0b3EdcC4c,0x871Ea3cfb0Ed8606Cf56F9F15D9dAD12206428e9,0x29243B13C0EF1F45a7b6e17f9Ca7ee6AacDB64a0,0x70FD628d255E9a2636d80d61Bd33cEe5989fF793,0x124C840b229B8C20473D9910bA9f1BDD641A5124,0xd55c19CC9104F9D4d1B4c841fd71DB982c26a6b8,0xDA8400463684a3374874D45FC99bE39a02F21af6,0x668E746D9241B768ac67f9281B304D1F710A0F9B,0x7da616285Fccf0D4385A759a4aEdD0cac34c2836,0x9b20998A946b2a5aE8dea92920D833178305686F,0x7BaCB1d74CA802219d3aF1E5D57E16344cd255c6,0xbaB00Cbb478c6833B3602cAC64017d11262434F9,0x26F81f9ac37ca043cEF328e274FA5b0828c61F5B,0xe4499Ce683014eD98d8750FB28C472AD834f05A6,0x182DAA17237048A8A5745D53ABa692f91F1888aB,0xF102822A6Ba3179E9655000d4D25879d6c959773,0xBe48311Ed5301de98543190B5bB09Eefd56A1AF9,0x22c49e09609E01571dcFeD2f397F689c1cAE77f3,0x7fFebb6A20be80364d42Cdb8B5a2767f4EE6C4bB,0x7192507bAB00a0F4A0d594c3058b8B2933f1Aff2,0xb04Ab601baC0c1C4a86e51eb89f0F825A78A622E,0x2B61F81D468b14D4fC9a4DeB1B608266619e48d9,0xf7B9995d750892C07010d7d8552F4fA072049a29,0x07AE44DeaD8f9d8D35d94F177a26050594b0D79C,0xDf147AfbBF70B900524921EADEC587bEF68379D7,0x256E1A42AC82Dcfff8669318ca47B361837Df3D1,0xEb453d4D1E133f66931207601Fb26b7Ef07a6cc9,0x8927bD13f41c43A66f7D3c07Ee6126c7f9C4Ff21,0x0e8a528163D269A91437C57d3a4E2Dc2Ec6B0209,0x0130364637853a4A337eb2F8ca6EE2f29f4b87dC,0xa4246C31207746887F7c09c58D4fD75dc59b81bd,0x1c02D382f69325aa257aB845957086bE347D8a31,0x4dF3bFD987DC47058F50C7E5A57F25672102A905,0x0B5E5081b62aD1cfc478aaeE2C2b4d4b60EF2e97,0x9479C57B70ED4D0052CC9408697A997429207D78,0x45a1589F134910c2A4954Cf4650b5583A3eAac0C,0x3B24038a08bDf9B9617f2C910379Cf0b56a5c366,0x96e17f57b1BaA2371D7ac307f4EF25da45b0760c,0x43d01E03aF604490EED8E8f9b7858F930Ed46f31,0x06eED855c0e1bcfb95d46F1A464DAFA594c2228D,0xf75140C3172c318B24FD3f64E850a4979762BcFB,0x193Cfdba605Ee2e73939AD90454BC59365357b13

-----Encoded View---------------
753 Constructor Arguments found :
Arg [0] : 000000000000000000000000cb337152b6181683010d07e3f00e7508cd348bc7
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000040
Arg [2] : 00000000000000000000000000000000000000000000000000000000000002ee
Arg [3] : 000000000000000000000000ff64711628dbfbcd11b0b6252ec7146ee487a2c9
Arg [4] : 0000000000000000000000005a04b9ae934adb10dc90ae561aff19df97702175
Arg [5] : 0000000000000000000000000bfb75c571635fa2d4262217d5f8e5018aeefec9
Arg [6] : 000000000000000000000000156d5f8a20d4f843a53b406fd9d3e1a453ec88b2
Arg [7] : 000000000000000000000000126bb405c188da691e708bdab72516da922854a3
Arg [8] : 000000000000000000000000f4d405a7a4b2585d6c969fc5aedae58a9a7761b5
Arg [9] : 000000000000000000000000759670ab95d3a8d5fb1c1abff8cf0023fd7e107b
Arg [10] : 000000000000000000000000bc7984599b94fc36d4490f4a41efd936c53a8c01
Arg [11] : 000000000000000000000000c636d893757038a726eedef02374ed3c7091bdb6
Arg [12] : 000000000000000000000000e06c62cf8c544f16e7119fac27a9b0c8929efdf9
Arg [13] : 0000000000000000000000002d90ff82ddcd4728652c384a95d5da0e2aa0e32c
Arg [14] : 0000000000000000000000001766962bcbbbf97b739d96b0e7ed924632f15f4d
Arg [15] : 00000000000000000000000045662c7d4f483a78b7271c4f579642d812f7986e
Arg [16] : 0000000000000000000000001cfabf69b9b4473c76f60260863186854ffbc013
Arg [17] : 000000000000000000000000846694b2d79854832168b1e84038b1492aad0177
Arg [18] : 000000000000000000000000abf1daaf720e052289dbd906fb31ca9bfe764356
Arg [19] : 0000000000000000000000003b58f2becc244566f214bce21ff08e6d76539499
Arg [20] : 00000000000000000000000074a2fac446cfb90346a2329bbf6e875083e814ef
Arg [21] : 0000000000000000000000001e0a2fbffc3e7ad2450b49503b77fca2976338e4
Arg [22] : 000000000000000000000000eec47b9ac18be439d083901c5541be486ece75ab
Arg [23] : 000000000000000000000000be20f60523f5e4940a0717874b1cf8c605191e7c
Arg [24] : 000000000000000000000000b39f9555ae21679116e33ca9b7b484f154251d70
Arg [25] : 0000000000000000000000009777fd60902b0b842fb72ad975717b46a9d02387
Arg [26] : 000000000000000000000000193d3c14796c068dbd239f76b7f68af9ce89e9f0
Arg [27] : 0000000000000000000000006eae0f716dc7316f3b95b7987c0af33192667be4
Arg [28] : 00000000000000000000000093f8a4081a29dc28139da9673a503922c5f2ee3d
Arg [29] : 0000000000000000000000002f6860756bfb8e95eb7ef470c68ca213209fe1e7
Arg [30] : 000000000000000000000000335df126edd17538ae04f47b8217ef64267b875f
Arg [31] : 0000000000000000000000002719aa2df4f6b7a6834053130d3a174cde9e14f5
Arg [32] : 000000000000000000000000dfaa80158aff56718dd4b07bc7cc61a77be1525b
Arg [33] : 0000000000000000000000006ba56fc69f2a4b649e35cf0b7b8f4eef09bd630d
Arg [34] : 00000000000000000000000040a965dbc477aec8673070e765328fb60ac64a7a
Arg [35] : 000000000000000000000000590fdf16c47fa15dce9a857c157577b3e290a1ba
Arg [36] : 000000000000000000000000c4534908f0acac882dd1f91cb4002738317078d3
Arg [37] : 000000000000000000000000455f9682d03b333a0fd2c1be72e22fbf6ecf6261
Arg [38] : 000000000000000000000000e6b295e9dedd3674d0903833a21435ac234d8319
Arg [39] : 000000000000000000000000a9c0d05fee7aa68241546a4584946c4ad9acab6d
Arg [40] : 0000000000000000000000008c476cda3693163a877da79f6c8ce9db7e3256cf
Arg [41] : 000000000000000000000000dd0bbf3eae9b6b9215a3a081db7fbe54b9fda4a0
Arg [42] : 0000000000000000000000001c17d7ecbd2ff20d8880fbf3b7abadab9639beec
Arg [43] : 000000000000000000000000e6e816639f7ac059353f510045bde88b092b82ae
Arg [44] : 000000000000000000000000feadb4a4d27787afb95cfbd8dbfb95dcfc51bf11
Arg [45] : 000000000000000000000000be951967b0fc960cf41636d267b15fcbb5c7fb63
Arg [46] : 0000000000000000000000000fe70bcca223618b67dc681d44539185a2b923ee
Arg [47] : 00000000000000000000000034c0f60f44a7fa8d0539afed9473864b187cc241
Arg [48] : 00000000000000000000000034a1af47d918a0e93a5b3c98f3c25d4ee887f85d
Arg [49] : 000000000000000000000000c0057a2c1523d7f4aec9bc578e5b5f48070a974e
Arg [50] : 000000000000000000000000fbfa558c278d25258349001e329c5b150a452b95
Arg [51] : 000000000000000000000000e76b3ab1db2fb5b796b44cf5c8a0c1f51e99f3a0
Arg [52] : 0000000000000000000000000157a61200d120b6a06d998587f96f5eff2eef9a
Arg [53] : 000000000000000000000000509a04ae924b52e7b5caca3c98fd08e2629db9a0
Arg [54] : 00000000000000000000000014ddf4a3c017a7beaec099bf1029f46422341038
Arg [55] : 000000000000000000000000a2a0aa2851ac59b62f8f79d4a0d1be85a65c8079
Arg [56] : 0000000000000000000000002c0fd5b15ff3253377c32f730effb35e92307e82
Arg [57] : 000000000000000000000000b8fdc52cf0376188637bff67a137b6735a8457f0
Arg [58] : 0000000000000000000000006e13afbf988f39fd7e9be0370e4c34e91270e1ba
Arg [59] : 0000000000000000000000009a38ede54ad7ea8acf3bc7f9c8f7b08ab19abcfe
Arg [60] : 000000000000000000000000efb5111e6fa2c8d392a1376ac1572076fbce2487
Arg [61] : 0000000000000000000000009c97bba95a67ab00a33cf3890df051f4b29e2bec
Arg [62] : 0000000000000000000000007b3353cb47e45a44c59c5d4f63ce5595cfd2f5a3
Arg [63] : 0000000000000000000000004784351ec65d8f6bf6ba7698e4e79b8026f38f8f
Arg [64] : 00000000000000000000000089dcf3e6166cd81a6e4e8b06e1185356f8cc089b
Arg [65] : 0000000000000000000000000f4c072203451cf21342e844780ae0ed4d4adfa2
Arg [66] : 000000000000000000000000bb0a6802e633f97980a8fc91386052ddff9892cc
Arg [67] : 000000000000000000000000cce8cb7dc680d37ed56ec47c14ca171c5c58022f
Arg [68] : 00000000000000000000000015e7b478de6db3cfa85cda3257d394d79e8baf82
Arg [69] : 00000000000000000000000014d74333106e3210f289464d19d66cc0bcecdf43
Arg [70] : 0000000000000000000000007bdf2c5769cda7c12f48f9d0f1b07d8d0a57f128
Arg [71] : 000000000000000000000000ef490377ee6f67c57d63dade3d8434b17e5959ce
Arg [72] : 000000000000000000000000aea98eb953525e65f7520f27cdfed4dcbca6023f
Arg [73] : 00000000000000000000000043ebba6b7a1ed74a7c5b7be4710157ce181be0ed
Arg [74] : 0000000000000000000000001b98f45b29a5cf471ade3cd2922a9fadc6a693ff
Arg [75] : 000000000000000000000000fbc31f8a580f00e317d9008ae10ae362afb29841
Arg [76] : 00000000000000000000000051dca3cec3942cfbbc7cf6b89dd5d9755bc52438
Arg [77] : 000000000000000000000000b69e265bb2b6c31b1a5bd8dde6fcab858a67a44b
Arg [78] : 000000000000000000000000c46c6a6342497b7530634505c08860050c0246cc
Arg [79] : 00000000000000000000000069ef6279b0b454577e685395410a95d873e9d82a
Arg [80] : 000000000000000000000000c3ad5ece058b3dfeaca013d33f62ff5bdcf1ba61
Arg [81] : 0000000000000000000000009e7e18a1c92bbbe9f7790e6e1296e7716869d7fc
Arg [82] : 000000000000000000000000f9e2f9d1437dbdd0bda361f7f91740233c7ad033
Arg [83] : 0000000000000000000000002abbb9754bd3889d9bb5c9659c0d825290631dd4
Arg [84] : 0000000000000000000000006955faf89fd43387eb6df55f40dd69b57f484c59
Arg [85] : 000000000000000000000000faab692accaa3466ce867f6597f816eb9342fe7e
Arg [86] : 000000000000000000000000050d7c826c1f4554da2bd2868b8d3784730973c5
Arg [87] : 0000000000000000000000006bf3e88697474b718eb08bd18e684b655d331ee9
Arg [88] : 000000000000000000000000e28d5f727080f8b5c0448218def4c1f111a87202
Arg [89] : 000000000000000000000000d695ba03fd7b4f6da5e35f3e62dab57ae5363979
Arg [90] : 000000000000000000000000407729f78710c2ec5d5efdced2045cb15bd6dab0
Arg [91] : 000000000000000000000000b73043aa6a272cb7e02b96123ca8e25687f49d27
Arg [92] : 000000000000000000000000b8554fb491c97c65201a5e736c7e917b9e37be89
Arg [93] : 0000000000000000000000007fd492dd7041e5a1500ff8e3e4f0564ed5185bf7
Arg [94] : 0000000000000000000000004238fcfdba55536e9db5f10abdb2084ca32e7e8d
Arg [95] : 0000000000000000000000007af585b1e2aafe57fec14935e06562b1943881ef
Arg [96] : 000000000000000000000000755d8a61eff9be5eb60b3da381f378d36aabbe73
Arg [97] : 000000000000000000000000ef5883d6836b006f64a7cb2a9639e23d7d2825b4
Arg [98] : 0000000000000000000000000f122e32934bdff19e34d213329fcc2ffec9ef90
Arg [99] : 0000000000000000000000009a7a93df8da07ef4b08366eb2a4d2137b4821439
Arg [100] : 000000000000000000000000e96853d9cff5ad698611709fa11e29f8dfcf89b8
Arg [101] : 0000000000000000000000000d1702572889cedb39ed459018bab9711ed5962b
Arg [102] : 000000000000000000000000c2c287d082f3ef11dcd413643cbfd56c557f43bf
Arg [103] : 000000000000000000000000a6d59e052e80ab7adea26858f4728f185a1b97e7
Arg [104] : 000000000000000000000000cda159b2193bf694835c970a499eccd6de6e801a
Arg [105] : 000000000000000000000000f2614d8239940785a44bea5b36808cbf8c486c55
Arg [106] : 0000000000000000000000008fed0fc57669808acb9edb487318ab2843a2199e
Arg [107] : 0000000000000000000000005492592eecc026db44c6b80bfee17d32fa4c0072
Arg [108] : 000000000000000000000000a43f87af2fa9d5b98781368300fce0e33c053382
Arg [109] : 0000000000000000000000000e0b7570b97e3078d90284f9365d1f84ad9f213e
Arg [110] : 00000000000000000000000038f36be3b0e098a3347502f025b958d9d89b3d46
Arg [111] : 00000000000000000000000077e9cbf615ae524555ab1ea0195a91b1e1214bee
Arg [112] : 000000000000000000000000ff990648740c1ca5895bee07b832a3af204faded
Arg [113] : 000000000000000000000000b67f1f2ce9452ebea814b2f97801e050cd9c3eed
Arg [114] : 0000000000000000000000000ded72d6bca9ca5ebee4c03a2490d99a7d0dc884
Arg [115] : 000000000000000000000000e9859cc94d531625cf8b2b2cd737ca637a9271a8
Arg [116] : 000000000000000000000000391c9f4537afd45e82e0510b67d0d460cbff725a
Arg [117] : 0000000000000000000000008376ec7bf0e430cf902302605ffb31a86a21c5a7
Arg [118] : 000000000000000000000000cecb55950b8c94bc472945cc3c5a31940e2d0c04
Arg [119] : 0000000000000000000000000c38c28d31c80496aa02019f322dd9fdfe8e3aa7
Arg [120] : 000000000000000000000000bc30a9d8abeed4c7b2c2cee1855e198916c5d8c3
Arg [121] : 000000000000000000000000553abf9546d73eb80e278d2c820b5ed0353142c8
Arg [122] : 0000000000000000000000008abe0004d749cf98c0fc1e09e797b76adbe8aa53
Arg [123] : 0000000000000000000000007964306610b3c0adc9f34a11bab89f3268d7154a
Arg [124] : 0000000000000000000000003b5e17848a468315b7b6a0d087eda78c9b677e30
Arg [125] : 000000000000000000000000d7a831448a9a9bb8cf294f11b12d4fc64ba97c81
Arg [126] : 0000000000000000000000008c7fb9526e8139a90ffc4058ae3268fb906b4d6e
Arg [127] : 0000000000000000000000002b860d532e0be424b84468219e4783cdb75a2938
Arg [128] : 0000000000000000000000004e334cabd169302b05c52c8a8e61a0aa7ea7b0ab
Arg [129] : 000000000000000000000000e0c0a33416f26712e4f59e8a2a345609b4b6dddc
Arg [130] : 000000000000000000000000a7645abcde52cb2e8c8c5879f7e339a5f6e5c6f0
Arg [131] : 000000000000000000000000c4c73518946aab4a73578e3cdd85ec959deaf981
Arg [132] : 0000000000000000000000005958411fc670fe546f3c8c844c7b2f134cb43ce1
Arg [133] : 0000000000000000000000002d329ff45ccec77dc5470b4cbfba82dd8faefaa2
Arg [134] : 0000000000000000000000005b38a1056e77db49a838a26b1cdfa034e34541bf
Arg [135] : 0000000000000000000000003d31e5c9f7cbd59050609a1a3c3686d4d08c3008
Arg [136] : 000000000000000000000000f5aacaa00b7bd992b3a303de095bc5da7dd49916
Arg [137] : 000000000000000000000000e4713b06aba976fc17b168595543056f1292252a
Arg [138] : 000000000000000000000000d5c1a5036b29c386ab4f5dba273cf36c0fef73ac
Arg [139] : 000000000000000000000000f72f0a858d7d13d095f7faa098fb624b1c109936
Arg [140] : 000000000000000000000000cffea90e4376b96c53a99851ba8c86cb9df600f3
Arg [141] : 000000000000000000000000ca446340b52433f9a25206ed4db4b333ace32299
Arg [142] : 0000000000000000000000008d3904785a581c58f19dc03415fed16536e0bcc6
Arg [143] : 00000000000000000000000073d544e64adc9781b83c4a8fe65d45ad53a9a1af
Arg [144] : 000000000000000000000000e8533d989165aaf2fd618e1cc2b451d6d8263eac
Arg [145] : 00000000000000000000000056e09255580deb918e90dc945e14bd7725017179
Arg [146] : 000000000000000000000000edc8cd9de64eedb5f57b559a9825b85680949686
Arg [147] : 0000000000000000000000003754b101248a237ad3743def947dfbdd3e745415
Arg [148] : 0000000000000000000000008ff9df4bafb72dce69e175e4d515b43c2bdf6286
Arg [149] : 000000000000000000000000fa399385db7d133dc098d356a75254e0978cb78a
Arg [150] : 00000000000000000000000056156009fa9d026e04fd76b312df76fbbbfbaeb1
Arg [151] : 000000000000000000000000b00b7d03aaed54b7e5edab994a136713844e8957
Arg [152] : 000000000000000000000000efb8ac07c92cef03c643cc5b540ad12da4803484
Arg [153] : 000000000000000000000000ac9dc3ea39797ee5484f485b2980b535d5a3c1ed
Arg [154] : 000000000000000000000000fac80ac986ca527078eccbc93efd93a1d3a6aead
Arg [155] : 000000000000000000000000b35fa4a7708b746030267a1f55ccc27cca1139f7
Arg [156] : 0000000000000000000000003c84d2015378a7376010bafc5efc626e882335e8
Arg [157] : 00000000000000000000000023998a620f3605fd6c0bab43834ef896018b4554
Arg [158] : 00000000000000000000000074dbb176b72b7a82d771263460ef7c019acc9940
Arg [159] : 0000000000000000000000002e67c48a85d34e1645db8cf8b1c7e3d117b531b6
Arg [160] : 00000000000000000000000094e0b3ec075f33486d04271be6cdaa5a1c38652e
Arg [161] : 000000000000000000000000c16603e0f85beed096fe229b74f94a43bc9c7c43
Arg [162] : 0000000000000000000000003f786e0bfd61ffa1c13e144b231dc43ea72189fa
Arg [163] : 000000000000000000000000b09e35d7e811a17dca3e5a2ceea63054ee28a074
Arg [164] : 0000000000000000000000006d57f3b7746e41158e85b272de45c7aeb0e827d6
Arg [165] : 0000000000000000000000007bbeccacfedffab879f6ea0e663e60f8c2074dc0
Arg [166] : 000000000000000000000000cf04dd9b77a6785712eec5f3105e5b2cb94da97c
Arg [167] : 000000000000000000000000f1711a20953f21ba699229bfc38735489da1a692
Arg [168] : 00000000000000000000000037415fee9206978cf2377e32f40836ac1cccc62f
Arg [169] : 00000000000000000000000088cc6756fb0057f294d5f9363f8403512ce6dc44
Arg [170] : 0000000000000000000000000b07725e54de7671b1a089f6122c928c49ce1f83
Arg [171] : 000000000000000000000000992d903a8167f5a4a13ec70c65b05621f222eca6
Arg [172] : 000000000000000000000000274d6ddbd2d43fcb58ecdf9aa7d798fcd49c1a40
Arg [173] : 0000000000000000000000002cd17e77cfa662a78c1764c18419181effd3e191
Arg [174] : 0000000000000000000000006b79b82c5cfc8230bcb9347d093b81d97d31e562
Arg [175] : 000000000000000000000000dadb0b3792f47b0e2db587696fcacf0457a3ff4c
Arg [176] : 000000000000000000000000e22883b8dcd695843cb7875f2086da1112f0d951
Arg [177] : 0000000000000000000000007d8fc49bee312670f68363eba2af045ee695a859
Arg [178] : 0000000000000000000000006b2a50571b076da4b92f4308919fe5ab1cebf01f
Arg [179] : 000000000000000000000000439c8b04f605752179a373ed5bbfbee2876fc6c2
Arg [180] : 0000000000000000000000008ea3a85ac520a3e26736d571d33676ae97e9b583
Arg [181] : 000000000000000000000000d909123d846aa605cf7127ad178f7e4a9dba8b4f
Arg [182] : 000000000000000000000000f32e51e28210229910c7cde4c9d42f18cdd5385f
Arg [183] : 00000000000000000000000030bd068c5fc5ebb87ee395b043b3cdd1c1378d4b
Arg [184] : 000000000000000000000000e1cc7f949c70b803b5eca226429936dad535a213
Arg [185] : 000000000000000000000000d180834039e772feb34c6b42b206eaf1e582854b
Arg [186] : 0000000000000000000000002b9ee87e5b597bf042b0dc588f45cd3e2b1473d6
Arg [187] : 0000000000000000000000004d1570b56cdf3048717e8c287c9ad9fa10a35f11
Arg [188] : 000000000000000000000000480df72243d119d4826a733e00a7b98563cc449f
Arg [189] : 000000000000000000000000211daa831dd902997152b7c14c23c09e4a503914
Arg [190] : 000000000000000000000000990c214889334035879c4b0e70d17da9f7703483
Arg [191] : 0000000000000000000000000e11bdd390085a3cbe7be90b22c9f56f18e8ef11
Arg [192] : 0000000000000000000000009aca9398e804df364b72b36ebba8cf8433e0c999
Arg [193] : 000000000000000000000000ac08efb3deefe763ba4e3b210c975ccdfda738a4
Arg [194] : 00000000000000000000000062f250495cdcbc332b656a8482c5a24b57171e44
Arg [195] : 0000000000000000000000006961349e255c81ec2e37c9ffee54bb169ccf86dd
Arg [196] : 000000000000000000000000039e83cf3971434b6e256cc3e467379466ab9313
Arg [197] : 0000000000000000000000005c1486c77957d019525e08bdb37b6c5bb0d8f188
Arg [198] : 00000000000000000000000074708aacf09583fd25d1c9afc18c8f69f4417acf
Arg [199] : 000000000000000000000000389b7f17e1ea1a02495fc8e6a9ed63a60cedb243
Arg [200] : 000000000000000000000000b7362cde6dc4ea6a44d46bf23544898721444c8c
Arg [201] : 000000000000000000000000b0024fb5c16705edc5c3e8f66e5f79f864e952b9
Arg [202] : 0000000000000000000000007066014277dde23cd88718504b7dec8a398245ca
Arg [203] : 0000000000000000000000003415301446cb482213caf61029ebc3774eaddbb7
Arg [204] : 0000000000000000000000009c09ddc82561e924bc541bde1976899f214df9cc
Arg [205] : 000000000000000000000000031e10e474c1d7b8638f199d30b4502cfdf89abf
Arg [206] : 0000000000000000000000005ee01329a60019535c9b95950ee415f15efab958
Arg [207] : 00000000000000000000000000ee1dc7f82459534d508a702846f940001dff87
Arg [208] : 000000000000000000000000a29c415a745aca4637886a4d598054c6454bf677
Arg [209] : 00000000000000000000000024bc559b81d24c664591f9af19ee8c108a201595
Arg [210] : 0000000000000000000000000b10afba8a46c8110a196f3f837e399637985921
Arg [211] : 000000000000000000000000d5c1f4a13b09fa91b79c133236bdc3125784f795
Arg [212] : 0000000000000000000000009949385848eb72bd3476c5c9f3ec1190b877c618
Arg [213] : 00000000000000000000000019f2b4dea91888c72e0f4543fa6cc4c926fb401d
Arg [214] : 000000000000000000000000c28786883b8a56804d2ca5d92a37a79c7cd7c65b
Arg [215] : 000000000000000000000000ad226db5e142f2610aa005c482b78c02c79f3cb4
Arg [216] : 00000000000000000000000061fc0f87d419fdd94248059861bf9e19652dece1
Arg [217] : 0000000000000000000000006a57e50db5e2b89e19fc488f81bb0f5465e35162
Arg [218] : 0000000000000000000000004cf4427ad3484e1dd81cda2c41dab4ee2bc93823
Arg [219] : 0000000000000000000000009e9c1f45d1624b899c6c9577eaf4edc5e2a56abf
Arg [220] : 00000000000000000000000060374a1b9e417fa4a60053dd95b881e216871376
Arg [221] : 000000000000000000000000713001784115e71315ad8711575f971fbe09f9b7
Arg [222] : 0000000000000000000000000e451f953e4301a4ffd3fa9c2491f76b263cf108
Arg [223] : 0000000000000000000000004eca3ee20ad41df5dfab27d2e9d62c6ee6536062
Arg [224] : 0000000000000000000000008b9fe4894f7b2a6145b5d4865e29abcf48012075
Arg [225] : 000000000000000000000000d2343eaf48b0d5504ed71681f2360f10a8afef89
Arg [226] : 000000000000000000000000d559b6f387ffab63610b060b8be1b8de6827600f
Arg [227] : 0000000000000000000000006a5418b3c33c7153161c49dd535fdad4e4fca12d
Arg [228] : 0000000000000000000000003ed2d7acf0b9ab3fc98603d7faa920e613d3e556
Arg [229] : 000000000000000000000000d0fbbd9b4b2911eea59ad57ae7a1905f49ce09d4
Arg [230] : 000000000000000000000000938f93b0e12fbe253ac1f7a39c1d6b2951d5e587
Arg [231] : 0000000000000000000000007fbd7a7c0c7d7d0e33a487f6e0bf3f8b213709db
Arg [232] : 000000000000000000000000ae2b079bf8f08883c404944f87f0f5303ede2292
Arg [233] : 00000000000000000000000078b1b5e843164d900e1c4c0df7c8926054435682
Arg [234] : 000000000000000000000000e734f4d671fdbb7c58df337f9260d5e55c3fa7fa
Arg [235] : 000000000000000000000000b625d4ef08d64dae4759e347e3984b8b7ffcd9d9
Arg [236] : 000000000000000000000000f0db70fd5fa4dddc2e61779a1ea36908932e9f12
Arg [237] : 000000000000000000000000e2e05ed14faface47b99137679c9d6d5432b2c22
Arg [238] : 000000000000000000000000878404c02c8d4ec88afe827de2a08879752fa3da
Arg [239] : 00000000000000000000000081131878727f4d4dadb1a21d659868594927e74d
Arg [240] : 000000000000000000000000b40c1ec22093d1c5d9467152e073d7e384e6dd9c
Arg [241] : 000000000000000000000000f53cd61e002af1a78a115b0c1936978e22b12768
Arg [242] : 000000000000000000000000d9f01f0936100ff2656a3aa3626fe42d771d3c3e
Arg [243] : 000000000000000000000000ed3c86b42ed24a0ce774a27069ac41afd5eeef84
Arg [244] : 00000000000000000000000092e1b2c322911ee22242e9a6e4ccac2d5d6cf505
Arg [245] : 000000000000000000000000732d9ee644bc1d5958e72124f79133a8cc49a1ab
Arg [246] : 000000000000000000000000d99dace0f9c416dcd734c11427d8e9048e9d8fa6
Arg [247] : 00000000000000000000000026187af2e2d5a941ee2d1281c03fc0b1bd14d940
Arg [248] : 0000000000000000000000002d1184f708f383b42cde6dd2bafa8ba4aa190374
Arg [249] : 000000000000000000000000c1d56c90adab2c06078bf85632bdfeb0f9d4b22e
Arg [250] : 0000000000000000000000006588e8dd6188e204dd468cb98357a87357d94175
Arg [251] : 000000000000000000000000df078b446b4bf2cefaac96dd9f20458fe41465d2
Arg [252] : 00000000000000000000000072ed780c2d7b1fd41ab3f5c43a7c68dcc3dd5428
Arg [253] : 0000000000000000000000001a9949e0945d2cb7bebe54162a1ba9e6459b51d4
Arg [254] : 0000000000000000000000002cb32520621c2079010db985282ad42d05685d96
Arg [255] : 000000000000000000000000472dcd4c1f594dac984d442131c4503c75461af9
Arg [256] : 000000000000000000000000f278323e76f825c2c91e110a9cda8c6c717c2b9c
Arg [257] : 00000000000000000000000017a76b4e13a0cb6f1d01ad769bb66cf41cd2c043
Arg [258] : 000000000000000000000000ad2dfcc4d2cc41b2f9e19812237ea3d8d3f40401
Arg [259] : 0000000000000000000000003acbf5dfa243ea346ce741c9f3d1556d33dc33ba
Arg [260] : 000000000000000000000000e8359cdec4bdd8b8a46ef00093eeeb01a9deba16
Arg [261] : 00000000000000000000000092efdfe04aa5df1f1e824e5e3d3928ca979208c8
Arg [262] : 000000000000000000000000acacb9430212f977abba9345f7d1aa631e3e0771
Arg [263] : 000000000000000000000000ee41100c13dac5725eec4402b9b45c7aba4957ce
Arg [264] : 000000000000000000000000639ddb339665ccce59c6e1728ed4e06a12e15e6a
Arg [265] : 000000000000000000000000253168d6eabb56dbef02bbccb366936fa53002b5
Arg [266] : 000000000000000000000000facb518d26dd126175f1808c92bac5ece92a11b6
Arg [267] : 000000000000000000000000c6236ca9db4043c7756e5eff151aa953ff683ee0
Arg [268] : 0000000000000000000000002d19784334d6e08fa5b9d9da6509e77f7f671ce2
Arg [269] : 00000000000000000000000081ff54c6b56258c71946e9cae615067748802406
Arg [270] : 000000000000000000000000e24ee348f353813728818cc6e79853e943f4ce8b
Arg [271] : 00000000000000000000000063feb64d3dd1b0dc0de78839343accc8df82316e
Arg [272] : 0000000000000000000000005499ba98bfd13839944ac4aa629df36d613b2a71
Arg [273] : 0000000000000000000000000993562a75eded9f23434c408731dacd9754c83a
Arg [274] : 000000000000000000000000ea7f19ac27d0fd224e991e1bc6c6ef23f793bc0d
Arg [275] : 0000000000000000000000004fa7e65636b87e01b06d5152c1def322cc85f443
Arg [276] : 00000000000000000000000062414cf8b1b04c36fd788597c55ab3e3db24f4f0
Arg [277] : 000000000000000000000000d76809b18a8c40328a00d9a162d4ea9254737238
Arg [278] : 000000000000000000000000576519e51a978340394bffca55ae7834da4896d5
Arg [279] : 00000000000000000000000034f89ddfa83b105366bd60eff7eb1896c9aa296f
Arg [280] : 000000000000000000000000bcf3ddd4781a156b68efddd71b0dcb40c25d7785
Arg [281] : 000000000000000000000000295a1257e1c3213c621fdbff19679bd97dedef40
Arg [282] : 000000000000000000000000e7bc4931e93cd97d58b7251a18bb493d23a2cd35
Arg [283] : 000000000000000000000000f0e60898dac4e738aa48ac60c689318608cef746
Arg [284] : 0000000000000000000000000bf5b434f4208308b3274e925fac89c297ba1f6f
Arg [285] : 000000000000000000000000d85c02c684c04ea54c289cff29023a6b4f050bfb
Arg [286] : 000000000000000000000000df37da805f0903f17e1d29474a077eebd926c293
Arg [287] : 00000000000000000000000061fa0bb8bc7fc2990e3155cd119859d9f7c009a4
Arg [288] : 000000000000000000000000e2665ce70df2e7c474f10d1e23d9eec5fc460f25
Arg [289] : 0000000000000000000000003279a9e40148835a6df92657b40c35d38ce5c32c
Arg [290] : 000000000000000000000000413da3f152bade8152c0b7b2495321901f292c80
Arg [291] : 0000000000000000000000007f983eb1ddfbc869cbbb4ea573ccd6ef1161e513
Arg [292] : 000000000000000000000000c2aa70e4008684393800680d98445cf50f35beab
Arg [293] : 0000000000000000000000009c36232a8d9873ae79ed0ec4045c61422b4f1695
Arg [294] : 000000000000000000000000e32b8dcfe8d62c636df175910a0714c3254225e3
Arg [295] : 000000000000000000000000470cb04b3086812889bf3ba2180c584556a5e689
Arg [296] : 0000000000000000000000006d37935418a4efa84f543f4ac4f3a5f4cb2d3d8e
Arg [297] : 0000000000000000000000007ce5e82c722bc9f88530406b19bb78247bcb534b
Arg [298] : 000000000000000000000000945157dde8d93c2c1b4481b92ae2b96bb6710d6b
Arg [299] : 000000000000000000000000272ac27e2ffc6de6bb056f36567f3b1c78ca0bac
Arg [300] : 00000000000000000000000065e92e029be941e3ea489f3632c282d6bb5b4397
Arg [301] : 000000000000000000000000fb1ddb5efdeddcb9f599963a0aec8eb904de3161
Arg [302] : 000000000000000000000000a6f07a32f78196552d1bc4dea8ed6f70d3dbe308
Arg [303] : 0000000000000000000000000c26cde1b6d5377dab07146b2b408b9fe3bc1d2b
Arg [304] : 0000000000000000000000005fdb6770c0e029a8283af98dc36fb9c1976aacb9
Arg [305] : 0000000000000000000000000996a8f51de95c3f74f509c4bd27c85bc271d216
Arg [306] : 0000000000000000000000004ef99b32f216d715208290b8a2eec229fb09a942
Arg [307] : 000000000000000000000000cb8f3974fa8a13e2456259b2fd1a75e0b17ffcbe
Arg [308] : 000000000000000000000000b2382d04ec11cfc2f5ac5b4a1a8efe22073a236f
Arg [309] : 0000000000000000000000009812797c12f13cfab63f35031bbd82f03a3840aa
Arg [310] : 000000000000000000000000e0d54a43be21ab0b3da802a2a64f1e909aaf98a9
Arg [311] : 000000000000000000000000795f5f5b6dcde3c31787d6a452b05798d40c6a6c
Arg [312] : 000000000000000000000000f1684fbb2ec9ea929bd1efea4a06606918acee0b
Arg [313] : 000000000000000000000000c22967e0e7fd239369f6240589be01ab4be0e161
Arg [314] : 00000000000000000000000058d1a30c29e22ee57783e0e1ace9228cc9c3d7b3
Arg [315] : 00000000000000000000000023f2e4c3fe5c0c939b44c1d44373e4231bc0ecc9
Arg [316] : 0000000000000000000000006561b0e908f3fac17f9617b64e1c192f58367e8d
Arg [317] : 0000000000000000000000008c2a0a1c0eac554414acd94be2df958c4dca0b30
Arg [318] : 00000000000000000000000077dea6215b7b444fc0639b55bf1d86b1e315f0af
Arg [319] : 00000000000000000000000020b7883b6e15163076300956830fa2eaee7f771b
Arg [320] : 000000000000000000000000f2da31917b6d568fa376c6e50a8b7b144673a3ec
Arg [321] : 00000000000000000000000026bd12da996362c9fb4edf2e2ce661be8ae77009
Arg [322] : 0000000000000000000000000de0c13eb1c29b56cbc9991328080712d736f691
Arg [323] : 000000000000000000000000b1e58945526a21a24c3701f4146e8f840e9f543f
Arg [324] : 0000000000000000000000003f53f058a1346d3d98ab2bbb1326976d3e8c110e
Arg [325] : 000000000000000000000000c8d5870ca3078b451eb626648925048fea923333
Arg [326] : 0000000000000000000000003c85eeece4bfe9f4e6823da5056fdd2164cacd60
Arg [327] : 000000000000000000000000685b862cf06653119bbd334946b0a7373aa9a47b
Arg [328] : 0000000000000000000000003d3cb065ddae9dab7d6b71fe1b1b22b66b0fa53a
Arg [329] : 0000000000000000000000005cc0fd9dfd3fb55b4f488b67cb349bb75082c1da
Arg [330] : 000000000000000000000000dd1924cf5a7b031d29154d5161f64927ef04fae5
Arg [331] : 0000000000000000000000007ff8634c643cc8b91f6fe7ac8a0ffbea19cfc83b
Arg [332] : 0000000000000000000000006bbad7ece0edfdaac60b6f03f0cff1c531e8b2e3
Arg [333] : 000000000000000000000000ea3a4786ada7bc64ea349f8b696dbc481fb8ce81
Arg [334] : 0000000000000000000000005ad3bf53a5c9fb184768aa29be494452d24dd019
Arg [335] : 00000000000000000000000021e2affea42d113e5a4ae98acbada0eaa02d5695
Arg [336] : 00000000000000000000000032c3bdd638bb744a4e0e79c10ae233bda9ab27a3
Arg [337] : 000000000000000000000000078468e49e0d844d3cc262d4a0193e2251a64e7b
Arg [338] : 000000000000000000000000ddb0db81cca27b2c8d3d15544949b0bef742e5c2
Arg [339] : 00000000000000000000000053985c16321632be042623706e596dced20166be
Arg [340] : 0000000000000000000000008f413e766a2ec3dd6b3855ab9f372cfb072d9937
Arg [341] : 000000000000000000000000769b985ead1d02b2b7fa93fbb6eae4fe1b673768
Arg [342] : 00000000000000000000000082f476cc3aaf427a6abde138c741875274f7f01d
Arg [343] : 0000000000000000000000005756a75678bb6d6297b1e39dc798ac5d20840a74
Arg [344] : 000000000000000000000000fc7adc2a1d4a11a7dbc2a8f6a054670c137b23e4
Arg [345] : 000000000000000000000000c798034cae6c6854d00e23ebeaedf86e9a28af38
Arg [346] : 000000000000000000000000ef9c8f1c8aaf17452c6fa706b02b2463fea0abb1
Arg [347] : 00000000000000000000000063aac0690e1996ffc8ffc295bf95d60b4bd28acc
Arg [348] : 0000000000000000000000007a5a2965cc3ed9d2b2739b615fa3231ef102e383
Arg [349] : 0000000000000000000000004052ee9cfb78f8eccd0a21fc5457b3d58c4d95e4
Arg [350] : 000000000000000000000000dd8d9df5ff4210a6485401e61407c93cc24d7131
Arg [351] : 000000000000000000000000a4fd55095d1144096769e61eddcdc404048d0952
Arg [352] : 000000000000000000000000d9621d4c32cd005d93962a3bd0e25502998e9a5a
Arg [353] : 00000000000000000000000009867e6b45c486513fba94dd924aab9a6acd396c
Arg [354] : 000000000000000000000000d299292df0bb17a8627ca65ff951e6d4672c63d4
Arg [355] : 000000000000000000000000d369756f3dac9d5db93883f7a8ce66d8a6c3e3bc
Arg [356] : 000000000000000000000000fe93fb813128445ee052883a63cbb7c5735166d1
Arg [357] : 000000000000000000000000d8b6090303a6cbe2b64cc4b2f12420f77069d75c
Arg [358] : 00000000000000000000000057f0679eea804d485d9cd2cbd569454e7b14ae2d
Arg [359] : 00000000000000000000000077583412ff92e4e05f1261e38f1979cdfa7e0f69
Arg [360] : 000000000000000000000000ea09488f37844bc7ecd88a7cf78e7317d9abac98
Arg [361] : 000000000000000000000000de24314066f14b37240b0aa7ff08bbbfcd8aebad
Arg [362] : 000000000000000000000000b9b50f4e5a3f7fd63e0eaa6c77a08be9f5b4be00
Arg [363] : 0000000000000000000000009fb8cd55259cd20a6620a796e8455a74b62c2ce9
Arg [364] : 000000000000000000000000e1ccde73fc5ce2cc69abe2afe105a7ee6fbe97f3
Arg [365] : 00000000000000000000000057adbb92c14ac24a16dc3319497f3cc7f0504194
Arg [366] : 0000000000000000000000009cecb6b879999e2f7a21ad01f65b962fb928779f
Arg [367] : 000000000000000000000000cc84878ae314f08fc428f412f8b4350ceb445561
Arg [368] : 0000000000000000000000004da8e56039d22cdf76253a6c1c1d1f35aa745a4c
Arg [369] : 0000000000000000000000007f1e69752f2ae51be9e6592cd6b1600e84e60ef9
Arg [370] : 0000000000000000000000006ca6e144f40b412d839e19f929ab8617d7537a68
Arg [371] : 0000000000000000000000008d8e0dba39fcabc4c274277e9e14e30e865a0c1b
Arg [372] : 000000000000000000000000a3c74c3aa815b1bad5a11511adcc7a6d2fa5de26
Arg [373] : 00000000000000000000000042a8ff87c4dc252b6817f5a0eed826ee32679987
Arg [374] : 00000000000000000000000081f058f551783ee1338caebfa915f34013b019ee
Arg [375] : 0000000000000000000000004334acf7a82443d5c64eb863ca6a5e49d9500ad3
Arg [376] : 00000000000000000000000080c9501b3215fbc2ad942c7beedbb511306c9000
Arg [377] : 0000000000000000000000000006bef13b249090a3ad6238ce55178dfa8add1a
Arg [378] : 00000000000000000000000075184b1f485c9b3fd6388191d75c012ac7d80e74
Arg [379] : 0000000000000000000000005f34afc51a6d2cc94748a21e525ea35f80f8c255
Arg [380] : 00000000000000000000000035136841d869be0d9c232a40904ba343762ccca3
Arg [381] : 000000000000000000000000223b691d7fca83f9f36fdc9e0abe0cda0245089b
Arg [382] : 0000000000000000000000002ad69210323bbd10e7cf531ba024127d9391e609
Arg [383] : 00000000000000000000000048a5aac55cf76d730bb5c47e5cf22eb2bb55473b
Arg [384] : 00000000000000000000000047659ae6e6fe57b73edebab0d68bbf7354e12021
Arg [385] : 000000000000000000000000729985c104b7ba12ab2beb34bf516dedcd4b32f1
Arg [386] : 00000000000000000000000027d438df85fabde466843e71c61eb84b5ffa5d18
Arg [387] : 000000000000000000000000a28cfc98fe7c33f2e2c2ed6e2e4a04d2dd3d1ffb
Arg [388] : 0000000000000000000000008afd1e7ae8f21b42f1dbddc07266f7ebd09a86e4
Arg [389] : 000000000000000000000000027b7566fe4244df6fcf456d74f96c240dee4d7e
Arg [390] : 000000000000000000000000cae4ac13fb3deae9650ab3c6356ced78c3378fa1
Arg [391] : 000000000000000000000000eb3758f1c4f07f5c154d445049ecf57f1e473288
Arg [392] : 0000000000000000000000009b24d8feddd6a49dbab2267ba84ac82210469448
Arg [393] : 000000000000000000000000a6e03d98e5d23ce16482cc45641cc2360fb5820a
Arg [394] : 000000000000000000000000f6ff3d4473a6a6217d3463efac5e78c312813ee9
Arg [395] : 00000000000000000000000063ac4df129d2acc240b090de5bb2ae514420a09f
Arg [396] : 00000000000000000000000067f27ad756e509f5711527f1fc9fe9cabb3175b8
Arg [397] : 000000000000000000000000fa56a31d249e97fcc30f02dc4bd6e6f70aae4568
Arg [398] : 0000000000000000000000001ab5f846e685c487fea3e167fd1761732f7909bc
Arg [399] : 0000000000000000000000009eee1a5d44c136ff4e78b86934229242f828f2e9
Arg [400] : 000000000000000000000000b126326a6b05c19c3fd169b153dede6bce00bc08
Arg [401] : 000000000000000000000000f08f079fba8646adb999aefcaf9e23b8cb5d2ac2
Arg [402] : 000000000000000000000000b1f7162e31056383e0bf5fff38ec08cf29f773a3
Arg [403] : 000000000000000000000000bf90ee453b3ab6d29a8ba6630d92ae57f81d05e6
Arg [404] : 0000000000000000000000004a480a3c76996484ab7c2c570cd460008e1d26d7
Arg [405] : 000000000000000000000000286e51e129fb1a2f6b5b4d7341ada3bc3ba7f386
Arg [406] : 000000000000000000000000d8152e207fd1f54daeb021193398d95a8ef85679
Arg [407] : 000000000000000000000000da787cf75c976c896111ca09570a944f85af2ccf
Arg [408] : 000000000000000000000000bb79c618612fc7de51e0b85d35f9b926c08ed5d3
Arg [409] : 0000000000000000000000008f5c956fafd5f72c6be9f8bb6ffe395bfbd08e59
Arg [410] : 000000000000000000000000d8f3bca6cd6b380539c760a53887280e3a46b629
Arg [411] : 00000000000000000000000047e62c5b67619032f1cc1aa066f03bed81e46010
Arg [412] : 000000000000000000000000cda74e76dc971bf636d0d29eb352c2dbb1beaf0d
Arg [413] : 000000000000000000000000aeae567fc74bd51b7abcf75057f327a2dbe88ad5
Arg [414] : 00000000000000000000000007599456237777486d933c7e72e2b8bbabd0b005
Arg [415] : 000000000000000000000000889ade53d54af7504646b7cf3538a1af0e554924
Arg [416] : 000000000000000000000000137ffce9ca35b67c7ebf9bab03ca212ad5e0fce8
Arg [417] : 0000000000000000000000009b2d8abfed85d3436368981d7cfdac4bd32e9964
Arg [418] : 00000000000000000000000015cd04f71df0a7553fbaaf4f4fa30801fc242e3f
Arg [419] : 0000000000000000000000001a382d13c201234c2e3fd0a7e767a1d985c0c725
Arg [420] : 000000000000000000000000830e9e07d8614ad59291ed4d7a11398ad09c2c63
Arg [421] : 000000000000000000000000927c469dba30095a7661cc5dd92e5059b030050b
Arg [422] : 000000000000000000000000d9b2b0578b414afa31bf159d230683752ed51774
Arg [423] : 0000000000000000000000004ce133b7ee8a61a4ac13bd525d8cfa36aef2b93a
Arg [424] : 0000000000000000000000005cb642349b35ea6aaca13049663c144da81d890c
Arg [425] : 0000000000000000000000005ac2e7f1ef14618ede402cbc98569ddc4956bf9d
Arg [426] : 000000000000000000000000a1a1b6275ba2050238f2a1b396f88fc65b63bd61
Arg [427] : 000000000000000000000000334d47e58d549529ddd5ac94f35a1d8f7c657c76
Arg [428] : 00000000000000000000000052b0c3d58ad771fe192530986e283e1037c985a7
Arg [429] : 000000000000000000000000c5e7c9d5b8a3fe582a7bcb374533865840ae1bc5
Arg [430] : 000000000000000000000000631c06bae101c7168c35031a63cc9fc0ea0892c3
Arg [431] : 00000000000000000000000079e90dfabb202996d272ceec169f0743e89c9ada
Arg [432] : 00000000000000000000000027b89e9bec5173814a2fae87c61c0cfa81283209
Arg [433] : 0000000000000000000000006d9c4935876cbecaf3244bc9d6ecf40c41a832f0
Arg [434] : 000000000000000000000000fb98d2ddef4c850a3dd8541508f1fed916f8c91b
Arg [435] : 000000000000000000000000c3ac86e1ac775c7ba8118a09becf784e4c3d8874
Arg [436] : 0000000000000000000000003298a6789ee0e6bc2b4511568d6f1b2c6e306b60
Arg [437] : 000000000000000000000000f5cbe47dc8115aec8f6d59c3392d260c3e470097
Arg [438] : 000000000000000000000000b3e524c6ff7835d65caa01c1a8c55dcf8a680698
Arg [439] : 0000000000000000000000007f480927b43fd4094c178dfc23d1ff8f2ed5cdeb
Arg [440] : 000000000000000000000000eaa93a3140b0654e86f853f3fec420b63bc02e39
Arg [441] : 00000000000000000000000084b2cafa915f891ebeb45612903e7b7559d08336
Arg [442] : 00000000000000000000000011e8f0fd8a5ca2a1bb8ff2378f6110acd7782cb4
Arg [443] : 000000000000000000000000982e59499706156b29a754429cce4c73da39b40f
Arg [444] : 000000000000000000000000802330844c47b1059451d9932e650437a689759b
Arg [445] : 000000000000000000000000ae03bbf3b0f54c34643dd374243317ce76a55b9e
Arg [446] : 0000000000000000000000008869b96df18e42c99c3ca2ee3ccbc80cea06236c
Arg [447] : 000000000000000000000000cdbb31299a8073bedc0174329e3203030891cd3a
Arg [448] : 000000000000000000000000555b85e1aaa12e38f2c3849f9b77187b8b304316
Arg [449] : 00000000000000000000000065d678c2b7ab4054360dd0179aea58b5eb144c46
Arg [450] : 000000000000000000000000bf33b9c005d9807db5bfaf63b1c2fade53654efa
Arg [451] : 0000000000000000000000004057f07f8e0189f365dc2fbf5829d139ed6ce1a8
Arg [452] : 000000000000000000000000475112aaafb778b40ab78879c11debd04c4f5194
Arg [453] : 000000000000000000000000637deda8965d4a8f12303c67ad59905974d7844d
Arg [454] : 0000000000000000000000001387a40a44766b9a3c86486ecb08084dc3f6c431
Arg [455] : 000000000000000000000000b6eed3e6789d95483ad4c781957c32149e69b6f5
Arg [456] : 000000000000000000000000f582f6ce1a59ab628693497eec12b47ddc6bdbaf
Arg [457] : 0000000000000000000000009946ac406afabcf22484974bdbdeba593741962e
Arg [458] : 0000000000000000000000008763445693012f77eca20bd766f4f6674e9778d6
Arg [459] : 00000000000000000000000066490f961f0709f710685d5a726a90484e4269a1
Arg [460] : 0000000000000000000000001eef0bd83d04e179f6e4edc52c8b9a6ce6011bd5
Arg [461] : 000000000000000000000000edbe38588aff90d4550efdc91801f2b5d4bdfd7f
Arg [462] : 000000000000000000000000139295ef4d5f175d856c8b3395711ef495a5311c
Arg [463] : 000000000000000000000000d588584a05ab935a3427c2566f771721f555f0e2
Arg [464] : 000000000000000000000000b00720d346f9734f7371d00fe5cb2aa4570a91a2
Arg [465] : 000000000000000000000000b90a455832da2e1d45549ad1425662fdcd4a8823
Arg [466] : 0000000000000000000000004a246a6d7acf998206c18829c12e52a7b5efb087
Arg [467] : 00000000000000000000000066563bdabb11febb6d62ee780c5556539abe39d7
Arg [468] : 0000000000000000000000002e2846829915f43d3e3444f3f75c09294ef2a78b
Arg [469] : 000000000000000000000000ac2e7bb8bb02e7a0f4b3447226557ac2943843eb
Arg [470] : 0000000000000000000000007f21f5fffb8cdd6f7772d9f56b53eae2b956033a
Arg [471] : 000000000000000000000000c2bb22d150a05d612d519d1a60f7963569c9981f
Arg [472] : 000000000000000000000000a02124eebe07e31cb5462d76195d3f58965aef04
Arg [473] : 00000000000000000000000095b0a5f0a1d68aae10c254f1a69e5208b3d79c6f
Arg [474] : 0000000000000000000000008d582e731eb7a34b59711b1ea4f34eb41b308547
Arg [475] : 000000000000000000000000fe8bd56700ec0794edf800c654170ca3c40998b8
Arg [476] : 0000000000000000000000004a44a49b8620bf528289c4776bc5fa2b4262d0d8
Arg [477] : 0000000000000000000000005fa981c3debea67812a5af794dd05d6de2c92210
Arg [478] : 000000000000000000000000d0b99dbafee2bae837482c5b1a828cbdcef5cbed
Arg [479] : 00000000000000000000000087828fb64e9626f4aa88918bfff9e51c7cf256c5
Arg [480] : 000000000000000000000000c87f0c0882cbcb7cf62d42fe8435ba9ff55de7b4
Arg [481] : 000000000000000000000000ddc435c8d9b23015e4b665e36aeef95477db649a
Arg [482] : 0000000000000000000000001deb9f0f3caaaa28bbaf39de9ccf1a18d68dbfb7
Arg [483] : 000000000000000000000000cfc4f0e7d354aad7839e173305ac04bc464930bd
Arg [484] : 0000000000000000000000009154d73edefe38766526fa3718782a5c1c470eda
Arg [485] : 000000000000000000000000e9f3a10846627fbacf5807082d4d348ca13244a0
Arg [486] : 000000000000000000000000ffd2d6e5a138df9e4b1ce56c4783d59c2763d2eb
Arg [487] : 000000000000000000000000d02c16bd10559655341650c4fca77a5739991138
Arg [488] : 000000000000000000000000d057b3206b698d13adb802283bd84e780cdba75a
Arg [489] : 0000000000000000000000008620da37062e7b4809d6b933d24af61516920032
Arg [490] : 000000000000000000000000aa973dfc84ae293500601780292f3ce8e3cbc14b
Arg [491] : 000000000000000000000000d015faf19e5da1c4461fccd455f276e336745311
Arg [492] : 000000000000000000000000385df1576b906bedba46f4728874c3bcfa1b324a
Arg [493] : 0000000000000000000000005123f8f8ccd88373b8a79ebfdc65ee55e6dec335
Arg [494] : 0000000000000000000000001f59609c1a6f3af0a6c711c271984fdd3305983d
Arg [495] : 00000000000000000000000010a8f983d91386eb25c37abc1ba71fe8df9b3c2d
Arg [496] : 0000000000000000000000008917bb21e0878dbed15a57910d6641554a4c086e
Arg [497] : 0000000000000000000000000035a907cea37498dab08838beec8a3b863b56b1
Arg [498] : 0000000000000000000000006101e6e89edea0fade9e07066a1d09a42065ec66
Arg [499] : 00000000000000000000000035afea9908d82c5e40cf468793bb0123099d84de
Arg [500] : 00000000000000000000000074289be838cb416b3fc524d9f77f7c95bb77a407
Arg [501] : 000000000000000000000000a76a6814ac0b64b5d941f65be8c8f3709629c6bc
Arg [502] : 0000000000000000000000005f42acbc0d43db24a8c1b80d3214e6c9dd08c184
Arg [503] : 000000000000000000000000e885fbeb7f1288864e91dfb06cf9ed91baf1d687
Arg [504] : 000000000000000000000000f97d4ed9e1b56a9ab9b9ef04e82d880cab621f1f
Arg [505] : 0000000000000000000000000944fc2d0ca9befcf2c465c29985c4c89da5b0cd
Arg [506] : 0000000000000000000000005d9e877395750bdd8c4a5223c7607425c7d479a5
Arg [507] : 000000000000000000000000f955736fe4a87465b830a6c90833419a8e8bbb25
Arg [508] : 0000000000000000000000008ac6cc7819aca399d19aab140e69407e6e01e7b8
Arg [509] : 000000000000000000000000db2a1b45f71f1f15b0fdbfbab2b4c26407568e15
Arg [510] : 000000000000000000000000aa4d1f4e5d12f2289196d5304908d3e30d26c9fa
Arg [511] : 000000000000000000000000851f66fc36e6aa15b3af6d037fbd2b09cab565bc
Arg [512] : 000000000000000000000000789024c47b15ae4b08c96999951846dae8f7fe9b
Arg [513] : 00000000000000000000000087654df496f41e9b279cf95b64dea6be1266ec8a
Arg [514] : 000000000000000000000000200e7cd348d957903d451e50695cb416b9d3957c
Arg [515] : 000000000000000000000000aa09bcb1047372f4eb0de555fd16d251f9887d94
Arg [516] : 000000000000000000000000197d93a92208180d73ee7c8ee8d0cd9053c1d6b6
Arg [517] : 0000000000000000000000006c5b6128de537fe0d5ea4683d3b1aa9703ebf3bd
Arg [518] : 0000000000000000000000008e327165b6add2e28646e176182d6327e8d2f323
Arg [519] : 000000000000000000000000c7547705f900f49095066d89a74684685c2562ff
Arg [520] : 000000000000000000000000fb10ed5e0a16324313616a2d45972a9a84ce4e65
Arg [521] : 0000000000000000000000000f9fcc1066b4753b795ca6f549465776b998899b
Arg [522] : 000000000000000000000000e36a397abf2e594e0f42b9b836c59601e6fc0267
Arg [523] : 000000000000000000000000e5647293b332ccdec31f5d1ae3ddafef9ad3882a
Arg [524] : 000000000000000000000000beedf956eae5c8705d558bacddb8c7f3a3f6e8ad
Arg [525] : 00000000000000000000000062d5eb07b812efedf6f70daa9741c3104df10392
Arg [526] : 000000000000000000000000a80349a9464cb3186147c48d7212cd60aaec494c
Arg [527] : 000000000000000000000000743733b1b0783d9ffc46ff614d6151e0233b9f08
Arg [528] : 000000000000000000000000d673483a4974865c9855d48706e0f1118e3fd3de
Arg [529] : 0000000000000000000000000582d8194fb42f6dbefe2a85abf6c74d5bc3e187
Arg [530] : 00000000000000000000000073e269783b752a3e14c2ffc6c31441e59067b029
Arg [531] : 000000000000000000000000cf71344c00cd87ce02139ece305f5856ff51875a
Arg [532] : 000000000000000000000000de137751ec0586afca1c42ed62f49b0419c9e0a8
Arg [533] : 000000000000000000000000247c2428191836fab634599832085673d6bb5ebc
Arg [534] : 000000000000000000000000ac4f6c9da26a0c0580856a77e394c6c8f2878de2
Arg [535] : 00000000000000000000000018807df4e7aa60141a21839f3a7f0f3361984b23
Arg [536] : 0000000000000000000000006a1db66bd9a3799c479d50951751cf6c253182f9
Arg [537] : 0000000000000000000000004afb2be813f25b64a4299e4d80cb0104eb263f11
Arg [538] : 0000000000000000000000008d6a5340892ff437fbae32e877b77ad8fc9372ed
Arg [539] : 0000000000000000000000008e7d5194e22e6e8d657791e61e76b426773d62ac
Arg [540] : 000000000000000000000000df805eb64093620e0d0b7725812d908d3a957ed1
Arg [541] : 000000000000000000000000293f2c1301bf7cbc86f24f21387b0347900dc976
Arg [542] : 000000000000000000000000d73d75682472a715a66eaaf251137cb1cfb2932b
Arg [543] : 000000000000000000000000c41e44750a1dfa01b417a81bdfd917db65ecb9c7
Arg [544] : 0000000000000000000000001ca972dbf0fe8a3678eb4cd6b6216c302b67145b
Arg [545] : 000000000000000000000000164273444cd43b8a10383ec55b05d568069f8e78
Arg [546] : 000000000000000000000000e556f3bf56222963ed7bd49aeec8df9f8a03c3c2
Arg [547] : 000000000000000000000000b8b720f5006beeba0926ef417fa075df45017fad
Arg [548] : 000000000000000000000000178bbf1b6fc1a2888bd140776c53f1cb0fa1b420
Arg [549] : 0000000000000000000000004a54a19065fe43858c8848f89a608957f571129e
Arg [550] : 000000000000000000000000a79f55e8fcd7ed2d5e3f3719bdab0bec4a8f3efa
Arg [551] : 000000000000000000000000f1115989dae75ad6f6931c712e55f4d94e36db7e
Arg [552] : 00000000000000000000000002198da26cd4531706e1be1a0404d70ed42cb82f
Arg [553] : 00000000000000000000000078668e3ba2567f5c89cb55878080595ed1ee1532
Arg [554] : 000000000000000000000000f0c3cb91387e3e37be5528586396c8d5ec2d07b2
Arg [555] : 000000000000000000000000fc96c9de38447434259c43d4f2241bd52d71386e
Arg [556] : 00000000000000000000000034e7916d5d8681370ed0a6774cfa8347c1d2c9b4
Arg [557] : 000000000000000000000000233f61cbb69e1034d5d0ddb1a6fcacf80c5c38ef
Arg [558] : 000000000000000000000000996af69659bedb7cf3af7d2135f8127ed30eb47d
Arg [559] : 00000000000000000000000079eb4a5005922da62664b36e269353ff26056145
Arg [560] : 00000000000000000000000016edc91aa1bbeea459e28b01acb1ca8fee79d112
Arg [561] : 00000000000000000000000014d2dd56baecab1b6fc29ec137a0860c0d514c76
Arg [562] : 0000000000000000000000005f7ddc4c4586d4b56634a6a976545c843f338a60
Arg [563] : 000000000000000000000000c459dbc87e27dff52f2b21fa2657b9a5bc92b8c8
Arg [564] : 0000000000000000000000008480b89ac6ee776f8842a17f66544aea3726c177
Arg [565] : 0000000000000000000000003ae95ad952a26630f43e4498a7a82db20635ac25
Arg [566] : 000000000000000000000000add6a24b7b1e858b8c6769b82f17611b4a638175
Arg [567] : 000000000000000000000000ec125ad722f1f6b2cd6d7aaff88c3c227495b5e0
Arg [568] : 00000000000000000000000013b24fa5f19ae0e9f9fa5547c2b5af942afa4261
Arg [569] : 000000000000000000000000e8fcdc329c9bd25eb6d844ec4b4e1b5925ad131a
Arg [570] : 00000000000000000000000003ed7c9768e331fef1c3d6d89cd6454c32273a83
Arg [571] : 000000000000000000000000b423e06fc7b9be29e8cdc616dac87d48e25a7bb7
Arg [572] : 000000000000000000000000bdd31160772498a5915551be812847daa6f388fa
Arg [573] : 0000000000000000000000007b5fea2d7ca3016f0f46e92e9ca40c46974d2ce4
Arg [574] : 00000000000000000000000065e309bae5ef3bc484be0313204f4f3101aff102
Arg [575] : 000000000000000000000000836266d230fc857b1e3a1a824c12c59c5925cd47
Arg [576] : 000000000000000000000000b57fccdf3dc709c3c4d0497efbb9a073f6fde5da
Arg [577] : 0000000000000000000000001e63ede600b62f2ff43b3867dc86c8db19f8f2e1
Arg [578] : 000000000000000000000000ffa9f7994d20ba7de035d6fa41e6871687f13290
Arg [579] : 0000000000000000000000000224215a3344e3ebf3fb0e3a5104452489f51843
Arg [580] : 00000000000000000000000080827527114cf5e466f52dec6c51f37862f29566
Arg [581] : 0000000000000000000000008530f639d68294a354522d1c8453da2e561c001e
Arg [582] : 000000000000000000000000df35a04b5cb35938d2f3c57f49a3ff6a889670ce
Arg [583] : 00000000000000000000000049d6ebdf80d2084252f5aab888f1fcce997ddc29
Arg [584] : 0000000000000000000000009322109123b0540d8a4f5a2928ed893631fff642
Arg [585] : 00000000000000000000000039bca683a410753ae85da9eeabd4cb5b5b4d5d2b
Arg [586] : 000000000000000000000000280d0e4920da5808dca7fb76be6d491c0f533319
Arg [587] : 00000000000000000000000083edcd53c07f8751d9ff6f9f0f25dcd9dd371059
Arg [588] : 000000000000000000000000ed2c8fdee39a6841c49b1f78929c1533f5986cdb
Arg [589] : 000000000000000000000000b445f034b4a211624c883c7dc3945a3f6c8f2530
Arg [590] : 000000000000000000000000e9b3fbec34e4c4c96ffbf3975b8ea7eb562504c6
Arg [591] : 000000000000000000000000c30013baa11654cc37377845c58cb2f9a5aca46b
Arg [592] : 000000000000000000000000654588270ff471a15e7fe09e5cc4f4b5cd18b62f
Arg [593] : 0000000000000000000000007a41c650c95360d7ae3281eb4e56dd5d91e3853b
Arg [594] : 0000000000000000000000000fd34a6c0c484f0da7fb00d8d028032406c57182
Arg [595] : 000000000000000000000000dea35742bf7c670e86a11e2306160d92608aba1f
Arg [596] : 0000000000000000000000002aa623258a13585992e2f5d7d50486fb2892d89a
Arg [597] : 00000000000000000000000093e0a367d0d4eee72b7212aa360748ad1e443adf
Arg [598] : 000000000000000000000000bd03308a3b0f1fec0ff6f4ba6d100c3041d3ff3e
Arg [599] : 000000000000000000000000262d2f90f05517739008246a827d58f979424d50
Arg [600] : 000000000000000000000000d1a9570647939e84e1196972d2356a87e1d3ad8e
Arg [601] : 0000000000000000000000004b4184b191e1fcbe428765b4fce813721549247c
Arg [602] : 0000000000000000000000006bada952a80c5e83febebcae62f524b361d1cefd
Arg [603] : 000000000000000000000000a513c2d5d01697feac6e5b3b602489d8c8f84a71
Arg [604] : 000000000000000000000000eb510ed57658e27a60053ca9b64949a550be2792
Arg [605] : 000000000000000000000000494c36b6eb1171229f9ae48df9c28a5e576507e2
Arg [606] : 000000000000000000000000b016b6b24de1598662b22df26ffe27a15bd28643
Arg [607] : 0000000000000000000000008faa9997b3f3e5c1054f74cc4a01c312cff68007
Arg [608] : 000000000000000000000000d1325a2f91d2aa8c1b1d10a6f04f2afa8609bf42
Arg [609] : 000000000000000000000000e73104bafe72f40b12869a8479a628513e9aa014
Arg [610] : 000000000000000000000000599deee04a19e3988f5927781c8e93feaa5b3cbc
Arg [611] : 000000000000000000000000138776e605a008ad7985450ded654cf9e6b6929f
Arg [612] : 00000000000000000000000037e8837d0f331c8e0a2ed79245830f6cb5f032ce
Arg [613] : 000000000000000000000000f901cc2811bbc25c697502d8e69c2ae8be74eecf
Arg [614] : 000000000000000000000000aec3079b2a388837667120915864959f64d44b38
Arg [615] : 000000000000000000000000235370c641e9f5b5d5f6b38d7d9a526a74310948
Arg [616] : 00000000000000000000000017146187d85b0d993b068172ff512353b95a64fa
Arg [617] : 00000000000000000000000059f0db6a672d7704ab8c50b088689cec3b69e51d
Arg [618] : 0000000000000000000000006e959f7c452647bbbfaa933f7da967a3d219c1ba
Arg [619] : 0000000000000000000000008c0487bf345d0ae8933f56e4f3e928ece9be8849
Arg [620] : 0000000000000000000000000ad8baeee28ce6e9c943393531bb6998ce575be8
Arg [621] : 0000000000000000000000003cc7aa3e9b09b337ea45d4618e6818bd00508380
Arg [622] : 0000000000000000000000009b5faf112141311e7c5a3e5e20cfbde67a794f59
Arg [623] : 0000000000000000000000006d299b48d9adc5c7ed195000123c240906ae3438
Arg [624] : 00000000000000000000000042e0060017f153e920005588853f9567fa666950
Arg [625] : 00000000000000000000000077ad6189b5bdfadffb3e30885c06d5237f463e72
Arg [626] : 000000000000000000000000aada7a57ff9a21114e1770ae1a514e53c3de7026
Arg [627] : 00000000000000000000000015fc9b02da0970f8edf6e4bc6f799eab79eefb3f
Arg [628] : 000000000000000000000000a0665ccb5b21b3b4671403a26990fd058b7ac1cf
Arg [629] : 000000000000000000000000ce6eb0f503ceef7b4af79f5d5a97451883b5e1e5
Arg [630] : 0000000000000000000000004d188ecd8f036c83c244287c31bdc870535483c0
Arg [631] : 000000000000000000000000cbb8dd6ab53c0bf758e74673271db045ae70369e
Arg [632] : 000000000000000000000000df4417ba80b9608b719276c917ecc5b9e5d28900
Arg [633] : 000000000000000000000000c8ad2e37f5ec15a2dc3a729204f42b6f0d628853
Arg [634] : 0000000000000000000000000a474378e948ddaa23b081d366b66686848122d2
Arg [635] : 000000000000000000000000323dc376282e0865f2e1fe112058462254d23234
Arg [636] : 0000000000000000000000004a86d53fca883ce12e293500454ea2908b990132
Arg [637] : 000000000000000000000000736ec392eb92af50589384849f3a8f621f025544
Arg [638] : 000000000000000000000000a81291a386e72b17720f323dad85fc4cbdbcd16e
Arg [639] : 00000000000000000000000067cc5ae0040a911f1bdd663e38e30a8044c92571
Arg [640] : 00000000000000000000000030e7e6801d9762c365194de429cde853349556f9
Arg [641] : 0000000000000000000000000393cd8d20c2f102f7c342bcfa647d0f51490932
Arg [642] : 00000000000000000000000094a3778d6ca52ce6b9637f267cb805e6d2e7ccb2
Arg [643] : 000000000000000000000000386e91e3a79fe2045a060fa7e5402315e4ce8a08
Arg [644] : 000000000000000000000000c3705a64373352a881cc8f72479ebf3a91db18fc
Arg [645] : 0000000000000000000000004dca8d2752945d0553e3e34d0be3f9fe76729c58
Arg [646] : 00000000000000000000000072c5169dba0a9ee86aef8a5233e91a88cc800ecc
Arg [647] : 000000000000000000000000e37dc84a55a334e1eadc3ffbbca629ba9b823abc
Arg [648] : 0000000000000000000000005f9c4d6436c8b9c4def47e0e26bf31fc8473f1c8
Arg [649] : 00000000000000000000000024b59fb9f305a5700c3befb3a8c32ba23d234739
Arg [650] : 000000000000000000000000fbe867c0bfd74fa7c1c39b194fedc11a002248e5
Arg [651] : 000000000000000000000000c825cb06154f4004ffdbfad1f97e1dfe29251faf
Arg [652] : 000000000000000000000000521d7158a6b4d33c6bd89bda56b8cb5b2a066319
Arg [653] : 00000000000000000000000009cfdabcb4e1ec731aaa3ea6190184f11859abd1
Arg [654] : 00000000000000000000000088a6b5d70ffdff6b82d251795b50428b3bb48117
Arg [655] : 0000000000000000000000007b98a7f57bbfb618c16c195475426180f6116077
Arg [656] : 00000000000000000000000094324971d9f0f1c27322d0ed7607a1177d87b267
Arg [657] : 00000000000000000000000038a04bb3ce0b2b7e8da4bf56b6a56290d83f4ed3
Arg [658] : 0000000000000000000000009025102b2acd3b962da4e47978d0eb16458bd9db
Arg [659] : 000000000000000000000000d97988491e71dd03d5415e62a7a8b0c49e7147b2
Arg [660] : 000000000000000000000000ba2b7d6d40d56d60cfcb3e7ac2b4d68365c30835
Arg [661] : 0000000000000000000000008c06d0aa13504437094e29a75bb4bc9265f45b4d
Arg [662] : 000000000000000000000000fe3cb3c474aa83668e828ddfcb8459522ae40bbc
Arg [663] : 000000000000000000000000dca7bfa8b6bff2d337194d3d2c1cc0cc20d22c10
Arg [664] : 000000000000000000000000ae0bf36d9ca8bcff08b0212a659228cc16a4e8ae
Arg [665] : 000000000000000000000000e08b35e5c5aab97cbfc6266883832dacd3a5a050
Arg [666] : 00000000000000000000000023b3777036ae4ae9bd15faaaaa0a96dc27cd274d
Arg [667] : 0000000000000000000000001e5361146582a9c2a32cade53a3a89813ae57168
Arg [668] : 000000000000000000000000d50cf90663f456da5aa3672690d03bc97ba24d3a
Arg [669] : 000000000000000000000000a0782e75f9ebb2fdcc2478d520aa92950a6cf750
Arg [670] : 0000000000000000000000008087e4d6d4291778c9ce4143a11bef2b20f3140e
Arg [671] : 000000000000000000000000285be5201ff4e9a55ab0265ad9de084c23064136
Arg [672] : 000000000000000000000000cb3ea946316c7bc2f58135431731fefb12ab6382
Arg [673] : 000000000000000000000000178cc437eff1d71bea766b20e7b78d83372f2128
Arg [674] : 000000000000000000000000b2327e2bd254afdc0a609e4da4fba555ee00d286
Arg [675] : 000000000000000000000000ab6d6565cfead6b973ba1e5a959e4033dca5e3ad
Arg [676] : 0000000000000000000000004549a16b23c177837970762ab3750486a5d49f08
Arg [677] : 00000000000000000000000003c6864fc2cfc9ebc47ba83863ac9151098dd416
Arg [678] : 00000000000000000000000097c6bee26821db970a4c8d2e5568ffbe7269b41d
Arg [679] : 0000000000000000000000006d3c8f761a29f62cb5829ce6dcfd7e73641f247f
Arg [680] : 000000000000000000000000530e6ecd167226f3048d13a8f6eba3c1ddddbf9c
Arg [681] : 0000000000000000000000007c0078e427363fa2015de03b4168369413fbf689
Arg [682] : 0000000000000000000000004ee02e4e26054b830b20739f7dec3528b1f19320
Arg [683] : 000000000000000000000000d432236156c0df043347c7c6a092b6781fae48ce
Arg [684] : 00000000000000000000000011e4257c8282f26b5d720e7565e125d557eb0a2c
Arg [685] : 000000000000000000000000d092e9ff6913f6473beaad95909821dad6b499dc
Arg [686] : 000000000000000000000000fa8f8c14beab1e73eda17f3df74532eee7d66b00
Arg [687] : 00000000000000000000000000432fbd1017c3c90af4835f71ef277fc28f4361
Arg [688] : 000000000000000000000000ddda7b0e7776b6a008b3e67baa0b24980480b9bf
Arg [689] : 0000000000000000000000005bcacfcb6fb2a750ef490ba3e723ad7ca574d570
Arg [690] : 0000000000000000000000006a02f288b80d96675e9770a88e99618fdb8a5ad7
Arg [691] : 00000000000000000000000064965fb65fb2da8e67534618f36df2d2f78970cf
Arg [692] : 000000000000000000000000580e42791e1904bcf6f1f36212f652979f6d03cd
Arg [693] : 00000000000000000000000053d153e46655937fe1a3f0a48c716f5db3b66a21
Arg [694] : 0000000000000000000000002377c6d05d8b8af3c35318099df67defbc29a249
Arg [695] : 000000000000000000000000886fa99a190f58f51540bf316852207e4a8e816e
Arg [696] : 0000000000000000000000005b9dfff627356b40c19d7253d657418483e4e997
Arg [697] : 000000000000000000000000fdc4d55f97a8105031df2c3cbd04f154549b67a5
Arg [698] : 000000000000000000000000e70299b2b9b029c5bc8184d6fe1a57e4b62e532e
Arg [699] : 000000000000000000000000ed78abfd1d85cfa6bf8bd6c116e90c46dee9ff1b
Arg [700] : 000000000000000000000000dd0809970cd98ae7aaa42d6b4e8776eae61a06fd
Arg [701] : 0000000000000000000000001832c65105da10caad98b20e3a079d1b29cd0bdb
Arg [702] : 000000000000000000000000b5d12a3c979c36da416ee3997fdbb4aff1e9dea9
Arg [703] : 000000000000000000000000a2b76678d05a6132aef90bdb3e1419e22852046f
Arg [704] : 000000000000000000000000ae21b65c913701d5580a9457bc8bf38f4637a038
Arg [705] : 00000000000000000000000067fa2c157c917a7db2525f79cac54de2c5161dfb
Arg [706] : 0000000000000000000000000dd79037f50917efde3d8c440f874360c5a8b9aa
Arg [707] : 000000000000000000000000f115c81c9c7d1317416f83d42579f6038485e071
Arg [708] : 000000000000000000000000a41135722858d2e5a5c35a8c8326eeee2a53c10b
Arg [709] : 000000000000000000000000f9bc3e0e7c594558eadffaf64970f2c0f3cd1945
Arg [710] : 0000000000000000000000002d32067dd357dfec3fc667fc7e1c093269cbc41d
Arg [711] : 000000000000000000000000059f9609ccf838a1b488faf2073510d0b3edcc4c
Arg [712] : 000000000000000000000000871ea3cfb0ed8606cf56f9f15d9dad12206428e9
Arg [713] : 00000000000000000000000029243b13c0ef1f45a7b6e17f9ca7ee6aacdb64a0
Arg [714] : 00000000000000000000000070fd628d255e9a2636d80d61bd33cee5989ff793
Arg [715] : 000000000000000000000000124c840b229b8c20473d9910ba9f1bdd641a5124
Arg [716] : 000000000000000000000000d55c19cc9104f9d4d1b4c841fd71db982c26a6b8
Arg [717] : 000000000000000000000000da8400463684a3374874d45fc99be39a02f21af6
Arg [718] : 000000000000000000000000668e746d9241b768ac67f9281b304d1f710a0f9b
Arg [719] : 0000000000000000000000007da616285fccf0d4385a759a4aedd0cac34c2836
Arg [720] : 0000000000000000000000009b20998a946b2a5ae8dea92920d833178305686f
Arg [721] : 0000000000000000000000007bacb1d74ca802219d3af1e5d57e16344cd255c6
Arg [722] : 000000000000000000000000bab00cbb478c6833b3602cac64017d11262434f9
Arg [723] : 00000000000000000000000026f81f9ac37ca043cef328e274fa5b0828c61f5b
Arg [724] : 000000000000000000000000e4499ce683014ed98d8750fb28c472ad834f05a6
Arg [725] : 000000000000000000000000182daa17237048a8a5745d53aba692f91f1888ab
Arg [726] : 000000000000000000000000f102822a6ba3179e9655000d4d25879d6c959773
Arg [727] : 000000000000000000000000be48311ed5301de98543190b5bb09eefd56a1af9
Arg [728] : 00000000000000000000000022c49e09609e01571dcfed2f397f689c1cae77f3
Arg [729] : 0000000000000000000000007ffebb6a20be80364d42cdb8b5a2767f4ee6c4bb
Arg [730] : 0000000000000000000000007192507bab00a0f4a0d594c3058b8b2933f1aff2
Arg [731] : 000000000000000000000000b04ab601bac0c1c4a86e51eb89f0f825a78a622e
Arg [732] : 0000000000000000000000002b61f81d468b14d4fc9a4deb1b608266619e48d9
Arg [733] : 000000000000000000000000f7b9995d750892c07010d7d8552f4fa072049a29
Arg [734] : 00000000000000000000000007ae44dead8f9d8d35d94f177a26050594b0d79c
Arg [735] : 000000000000000000000000df147afbbf70b900524921eadec587bef68379d7
Arg [736] : 000000000000000000000000256e1a42ac82dcfff8669318ca47b361837df3d1
Arg [737] : 000000000000000000000000eb453d4d1e133f66931207601fb26b7ef07a6cc9
Arg [738] : 0000000000000000000000008927bd13f41c43a66f7d3c07ee6126c7f9c4ff21
Arg [739] : 0000000000000000000000000e8a528163d269a91437c57d3a4e2dc2ec6b0209
Arg [740] : 0000000000000000000000000130364637853a4a337eb2f8ca6ee2f29f4b87dc
Arg [741] : 000000000000000000000000a4246c31207746887f7c09c58d4fd75dc59b81bd
Arg [742] : 0000000000000000000000001c02d382f69325aa257ab845957086be347d8a31
Arg [743] : 0000000000000000000000004df3bfd987dc47058f50c7e5a57f25672102a905
Arg [744] : 0000000000000000000000000b5e5081b62ad1cfc478aaee2c2b4d4b60ef2e97
Arg [745] : 0000000000000000000000009479c57b70ed4d0052cc9408697a997429207d78
Arg [746] : 00000000000000000000000045a1589f134910c2a4954cf4650b5583a3eaac0c
Arg [747] : 0000000000000000000000003b24038a08bdf9b9617f2c910379cf0b56a5c366
Arg [748] : 00000000000000000000000096e17f57b1baa2371d7ac307f4ef25da45b0760c
Arg [749] : 00000000000000000000000043d01e03af604490eed8e8f9b7858f930ed46f31
Arg [750] : 00000000000000000000000006eed855c0e1bcfb95d46f1a464dafa594c2228d
Arg [751] : 000000000000000000000000f75140c3172c318b24fd3f64e850a4979762bcfb
Arg [752] : 000000000000000000000000193cfdba605ee2e73939ad90454bc59365357b13


Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.