Contract 0x67ae39a2Ee91D7258a86CD901B17527e19E493B3 1

Txn Hash Method
Block
From
To
Value [Txn Fee]
0x6b4b9f566a47c06b217c0b5eb4219cbc31228c18f425708b1202afdfd1b6050d0x60806040165984472021-09-07 13:28:5247 days 12 hrs agoFantom: Deployer IN  Contract Creation0 FTM2.484307723544
[ Download CSV Export 
Latest 1 internal transaction
Parent Txn Hash Block From To Value
0x6b4b9f566a47c06b217c0b5eb4219cbc31228c18f425708b1202afdfd1b6050d165984472021-09-07 13:28:5247 days 12 hrs ago Fantom: Deployer  Contract Creation0 FTM
[ Download CSV Export 
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
codex

Compiler Version
v0.8.7+commit.e28d00a7

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, GNU LGPLv3 license
/**
 *Submitted for verification at FtmScan.com on 2021-09-07
*/

// SPDX-License-Identifier: MIT
pragma solidity 0.8.7;

contract codex {
    string constant public index = "Skills";
    string constant public class = "Any";

    function skill_by_id(uint _id) external pure returns(
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        if (_id == 1) {
            return appraise();
        } else if (_id == 2) {
            return balance();
        } else if (_id == 3) {
            return bluff();
        } else if (_id == 4) {
            return climb();
        } else if (_id == 5) {
            return concentration();
        } else if (_id == 6) {
            return craft();
        } else if (_id == 7) {
            return decipher_script();
        } else if (_id == 8) {
            return diplomacy();
        } else if (_id == 9) {
            return disable_device();
        } else if (_id == 10) {
            return disguise();
        } else if (_id == 11) {
            return escape_artist();
        } else if (_id == 12) {
            return forgery();
        } else if (_id == 13) {
            return gather_information();
        } else if (_id == 14) {
            return handle_animal();
        } else if (_id == 15) {
            return heal();
        } else if (_id == 16) {
            return hide();
        } else if (_id == 17) {
            return intimidate();
        } else if (_id == 18) {
            return jump();
        } else if (_id == 19) {
            return knowledge();
        } else if (_id == 20) {
            return listen();
        } else if (_id == 21) {
            return move_silently();
        } else if (_id == 22) {
            return open_lock();
        } else if (_id == 23) {
            return perform();
        } else if (_id == 24) {
            return profession();
        } else if (_id == 25) {
            return ride();
        } else if (_id == 26) {
            return search();
        } else if (_id == 27) {
            return sense_motive();
        } else if (_id == 28) {
            return sleight_of_hand();
        } else if (_id == 29) {
            return speak_language();
        } else if (_id == 30) {
            return spellcraft();
        } else if (_id == 31) {
            return spot();
        } else if (_id == 32) {
            return survival();
        } else if (_id == 33) {
            return swim();
        } else if (_id == 34) {
            return tumble();
        } else if (_id == 35) {
            return use_magic_device();
        } else if (_id == 36) {
            return use_rope();
        }
    }
    
    function get_attribute(uint id) external pure returns (string memory attribute) {
        if (id == 1) {
            return "Strength";
        } else if (id == 2) {
            return "Dexterity";
        } else if (id == 3) {
            return "Constitution";
        } else if (id == 4) {
            return "Intelligence";
        } else if (id == 5) {
            return "Wisdom";
        } else if (id == 6) {
            return "Charisma";
        }
    }

    function appraise() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 1;
        name = "Appraise";
        attribute_id = 4;
        synergy = 6; // craft
        retry = false;
        armor_check_penalty = false;
        check = "You can appraise common or well-known objects with a DC 12 Appraise check. Failure means that you estimate the value at 50% to 150% (2d6+3 times 10%,) of its actual value. Appraising a rare or exotic item requires a successful check against DC 15, 20, or higher. If the check is successful, you estimate the value correctly; failure means you cannot estimate the items value.";
        action = "Appraising an item takes 1 minute (ten consecutive full-round actions).";
    }

    function balance() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 2;
        name = "Balance";
        attribute_id = 2;
        synergy = 34; // tumble
        retry = false;
        armor_check_penalty = true;
        check = "You can walk on a precarious surface. A successful check lets you move at half your speed along the surface for 1 round. A failure by 4 or less means you cant move for 1 round. A failure by 5 or more means you fall. The difficulty varies with the surface, as follows:";
        action = "None. A Balance check doesnt require an action; it is made as part of another action or as a reaction to a situation.";
    }

    function bluff() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 3;
        name = "Bluff";
        attribute_id = 6;
        synergy = 0;
        retry = true;
        armor_check_penalty = false;
        check = "A Bluff check is opposed by the targets Sense Motive check. See the accompanying table for examples of different kinds of bluffs and the modifier to the targets Sense Motive check for each one.";
        action = "Varies. A Bluff check made as part of general interaction always takes at least 1 round (and is at least a full-round action), but it can take much longer if you try something elaborate.";
    }

    function climb() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 4;
        name = "Climb";
        attribute_id = 1;
        synergy = 36; // use rope
        retry = true;
        armor_check_penalty = true;
        check = "With a successful Climb check, you can advance up, down, or across a slope, a wall, or some other steep incline (or even a ceiling with handholds) at one-quarter your normal speed. A slope is considered to be any incline at an angle measuring less than 60 degrees; a wall is any incline at an angle measuring 60 degrees or more.";
        action = "Climbing is part of movement, so its generally part of a move action (and may be combined with other types of movement in a move action).";
    }

    function concentration() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 5;
        name = "Concentration";
        attribute_id = 3;
        synergy = 0;
        retry = true;
        armor_check_penalty = false;
        check = "You must make a Concentration check whenever you might potentially be distracted (by taking damage, by harsh weather, and so on) while engaged in some action that requires your full attention. Such actions include casting a spell, concentrating on an active spell, directing a spell, using a spell-like ability, or using a skill that would provoke an attack of opportunity. In general, if an action wouldnt normally provoke an attack of opportunity, you need not make a Concentration check to avoid being distracted.";
        action = "None. Making a Concentration check doesnt take an action; it is either a free action (when attempted reactively) or part of another action (when attempted actively).";
    }

    function craft() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 6;
        name = "Craft";
        attribute_id = 4;
        synergy = 0;
        retry = true;
        armor_check_penalty = false;
        check = "You can practice your trade and make a decent living, earning about half your check result in gold pieces per week of dedicated work. You know how to use the tools of your trade, how to perform the crafts daily tasks, how to supervise untrained helpers, and how to handle common problems. (Untrained laborers and assistants earn an average of 1 silver piece per day.)";
        action = "Does not apply. Craft checks are made by the day or week (see above).";
    }

    function decipher_script() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 7;
        name = "Decipher Script";
        attribute_id = 4;
        synergy = 0;
        retry = false;
        armor_check_penalty = false;
        check = "You can decipher writing in an unfamiliar language or a message written in an incomplete or archaic form. The base DC is 20 for the simplest messages, 25 for standard texts, and 30 or higher for intricate, exotic, or very old writing.";
        action = "Deciphering the equivalent of a single page of script takes 1 minute (ten consecutive full-round actions).";
    }

    function diplomacy() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 8;
        name = "Diplomacy";
        attribute_id = 6;
        synergy = 3; // bluff
        retry = false;
        armor_check_penalty = false;
        check = "You can change the attitudes of others (nonplayer characters) with a successful Diplomacy check; see the Influencing NPC Attitudes sidebar, below, for basic DCs. In negotiations, participants roll opposed Diplomacy checks, and the winner gains the advantage. Opposed checks also resolve situations when two advocates or diplomats plead opposite cases in a hearing before a third party.";
        action = "Changing others attitudes with Diplomacy generally takes at least 1 full minute (10 consecutive full-round actions). In some situations, this time requirement may greatly increase. A rushed Diplomacy check can be made as a full-round action, but you take a -10 penalty on the check.";
    }

    function disable_device() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 9;
        name = "Disable Device";
        attribute_id = 4;
        synergy = 0;
        retry = false;
        armor_check_penalty = false;
        check = "The Disable Device check is made secretly, so that you dont necessarily know whether youve succeeded. The DC depends on how tricky the device is. Disabling (or rigging or jamming) a fairly simple device has a DC of 10; more intricate and complex devices have higher DCs.";
        action = "The amount of time needed to make a Disable Device check depends on the task, as noted above. Disabling a simple device takes 1 round and is a full-round action. An intricate or complex device requires 1d4 or 2d4 rounds.";
    }

    function disguise() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 10;
        name = "Disguise";
        attribute_id = 6;
        synergy = 3; // bluff
        retry = true;
        armor_check_penalty = false;
        check = "Your Disguise check result determines how good the disguise is, and it is opposed by others Spot check results. If you dont draw any attention to yourself, others do not get to make Spot checks. If you come to the attention of people who are suspicious (such as a guard who is watching commoners walking through a city gate), it can be assumed that such observers are taking 10 on their Spot checks.";
        action = "Creating a disguise requires 1d3*10 minutes of work.";
    }

    function escape_artist() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 11;
        name = "Escape Artist";
        attribute_id = 2;
        synergy = 36; // use rope
        retry = true;
        armor_check_penalty = true;
        check = "Your Escape Artist check is opposed by the binders Use Rope check. Since its easier to tie someone up than to escape from being tied up, the binder gets a +10 bonus on his or her check.";
        action = "Making an Escape Artist check to escape from rope bindings, manacles, or other restraints (except a grappler) requires 1 minute of work. Escaping from a net or an animate rope, command plants, control plants, or entangle spell is a full-round action. Escaping from a grapple or pin is a standard action. Squeezing through a tight space takes at least 1 minute, maybe longer, depending on how long the space is.";
    }

    function forgery() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 12;
        name = "Forgery";
        attribute_id = 4;
        synergy = 0;
        retry = false;
        armor_check_penalty = false;
        check = "Forgery requires writing materials appropriate to the document being forged, enough light or sufficient visual acuity to see the details of what youre writing, wax for seals (if appropriate), and some time. To forge a document on which the handwriting is not specific to a person (military orders, a government decree, a business ledger, or the like), you need only to have seen a similar document before, and you gain a +8 bonus on your check. To forge a signature, you need an autograph of that person to copy, and you gain a +4 bonus on the check. To forge a longer document written in the hand of some particular person, a large sample of that persons handwriting is needed.";
        action = "Forging a very short and simple document takes about 1 minute. A longer or more complex document takes 1d4 minutes per page.";
    }

    function gather_information() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 13;
        name = "Gather Information";
        attribute_id = 6;
        synergy = 0;
        retry = true;
        armor_check_penalty = false;
        check = "An evenings time, a few gold pieces for buying drinks and making friends, and a DC 10 Gather Information check get you a general idea of a citys major news items, assuming there are no obvious reasons why the information would be withheld. The higher your check result, the better the information.";
        action = "A typical Gather Information check takes 1d4+1 hours.";
    }

    function handle_animal() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 14;
        name = "Handle Animal";
        attribute_id = 6;
        synergy = 0;
        retry = true;
        armor_check_penalty = false;
        check = "This task involves commanding an animal to perform a task or trick that it knows. If the animal is wounded or has taken any nonlethal damage or ability score damage, the DC increases by 2. If your check succeeds, the animal performs the task or trick on its next action.";
        action = "Varies. Handling an animal is a move action.";
    }

    function heal() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 15;
        name = "Heal";
        attribute_id = 5;
        synergy = 0;
        retry = true;
        armor_check_penalty = false;
        check = "You usually use first aid to save a dying character. If a character has negative hit points and is losing hit points (at the rate of 1 per round, 1 per hour, or 1 per day), you can make him or her stable. A stable character regains no hit points but stops losing them.";
        action = "Providing first aid, treating a wound, or treating poison is a standard action.";
    }

    function hide() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 16;
        name = "Hide";
        attribute_id = 2;
        synergy = 0;
        retry = false;
        armor_check_penalty = true;
        check = "Your Hide check is opposed by the Spot check of anyone who might see you. You can move up to one-half your normal speed and hide at no penalty. When moving at a speed greater than one-half but less than your normal speed, you take a -5 penalty. Its practically impossible (-20 penalty) to hide while attacking, running or charging.";
        action = "Usually none. Normally, you make a Hide check as part of movement, so it doesnt take a separate action.";
    }

    function intimidate() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 17;
        name = "Intimidate";
        attribute_id = 6;
        synergy = 3; // bluff
        retry = true;
        armor_check_penalty = false;
        check = "You can change anothers behavior with a successful check. Your Intimidate check is opposed by the targets modified level check (1d20 + character level or Hit Dice + targets Wisdom bonus [if any] + targets modifiers on saves against fear). If you beat your targets check result, you may treat the target as friendly, but only for the purpose of actions taken while it remains intimidated. (That is, the target retains its normal attitude, but will chat, advise, offer limited help, or advocate on your behalf while intimidated. See the Diplomacy skill, above, for additional details.) The effect lasts as long as the target remains in your presence, and for 1d6*10 minutes afterward. After this time, the targets default attitude toward you shifts to unfriendly (or, if normally unfriendly, to hostile).";
        action = "Varies. Changing anothers behavior requires 1 minute of interaction. Intimidating an opponent in combat is a standard action.";
    }

    function jump() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 18;
        name = "Jump";
        attribute_id = 1;
        synergy = 34; // tumble
        retry = true;
        armor_check_penalty = true;
        check = "The DC and the distance you can cover vary according to the type of jump you are attempting (see below). Your Jump check is modified by your speed. If your speed is 30 feet then no modifier based on speed applies to the check. If your speed is less than 30 feet, you take a -6 penalty for every 10 feet of speed less than 30 feet. If your speed is greater than 30 feet, you gain a +4 bonus for every 10 feet beyond 30 feet. All Jump DCs given here assume that you get a running start, which requires that you move at least 20 feet in a straight line before attempting the jump. If you do not get a running start, the DC for the jump is doubled. Distance moved by jumping is counted against your normal maximum movement in a round. If you have ranks in Jump and you succeed on a Jump check, you land on your feet (when appropriate). If you attempt a Jump check untrained, you land prone unless you beat the DC by 5 or more.";
        action = "None. A Jump check is included in your movement, so it is part of a move action.";
    }

    function knowledge() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 19;
        name = "Knowledge";
        attribute_id = 4;
        synergy = 0;
        retry = false;
        armor_check_penalty = false;
        check = "Answering a question within your field of study has a DC of 10 (for really easy questions), 15 (for basic questions), or 20 to 30 (for really tough questions). In many cases, you can use this skill to identify monsters and their special powers or vulnerabilities. In general, the DC of such a check equals 10 + the monsters HD. A successful check allows you to remember a bit of useful information about that monster. For every 5 points by which your check result exceeds the DC, you recall another piece of useful information.";
        action = "Usually none. In most cases, making a Knowledge check doesnt take an action-you simply know the answer or you dont.";
    }

    function listen() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 20;
        name = "Listen";
        attribute_id = 5;
        synergy = 0;
        retry = true;
        armor_check_penalty = false;
        check = "Your Listen check is either made against a DC that reflects how quiet the noise is that you might hear, or it is opposed by your targets Move Silently check. In the case of people trying to be quiet, the DCs given on the table could be replaced by Move Silently checks, in which case the indicated DC would be their average check result.";
        action = "Varies. Every time you have a chance to hear something in a reactive manner (such as when someone makes a noise or you move into a new area), you can make a Listen check without using an action. Trying to hear something you failed to hear previously is a move action.";
    }

    function move_silently() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 21;
        name = "Move Silently";
        attribute_id = 2;
        synergy = 0;
        retry = true;
        armor_check_penalty = true;
        check = "Your Move Silently check is opposed by the Listen check of anyone who might hear you. You can move up to one-half your normal speed at no penalty. When moving at a speed greater than one-half but less than your full speed, you take a -5 penalty. Its practically impossible (-20 penalty) to move silently while running or charging. Noisy surfaces, such as bogs or undergrowth, are tough to move silently across. When you try to sneak across such a surface, you take a penalty on your Move Silently check as indicated below.";
        action = "None. A Move Silently check is included in your movement or other activity, so it is part of another action.";
    }

    function open_lock() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 22;
        name = "Open Lock";
        attribute_id = 2;
        synergy = 0;
        retry = true;
        armor_check_penalty = false;
        check = "The DC for opening a lock varies from 20 to 40, depending on the quality of the lock, as given on the table below.";
        action = "Opening a lock is a full-round action.";
    }

    function perform() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 23;
        name = "Perform";
        attribute_id = 6;
        synergy = 0;
        retry = true;
        armor_check_penalty = false;
        check = "You can impress audiences with your talent and skill.";
        action = "Varies. Trying to earn money by playing in public requires anywhere from an evenings work to a full days performance.";
    }

    function profession() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 24;
        name = "Profession";
        attribute_id = 5;
        synergy = 0;
        retry = true;
        armor_check_penalty = false;
        check = "You can practice your trade and make a decent living, earning about half your Profession check result in gold pieces per week of dedicated work. You know how to use the tools of your trade, how to perform the professions daily tasks, how to supervise helpers, and how to handle common problems.";
        action = "Not applicable. A single check generally represents a week of work.";
    }

    function ride() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 25;
        name = "Ride";
        attribute_id = 2;
        synergy = 14; // handle animal
        retry = true;
        armor_check_penalty = false;
        check = "Typical riding actions dont require checks. You can saddle, mount, ride, and dismount from a mount without a problem.";
        action = "Varies. Mounting or dismounting normally is a move action. Other checks are a move action, a free action, or no action at all, as noted above.";
    }

    function search() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 26;
        name = "Search";
        attribute_id = 4;
        synergy = 0;
        retry = true;
        armor_check_penalty = false;
        check = "You generally must be within 10 feet of the object or surface to be searched. The table below gives DCs for typical tasks involving the Search skill.";
        action = "It takes a full-round action to search a 5-foot-by-5-foot area or a volume of goods 5 feet on a side.";
    }

    function sense_motive() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 27;
        name = "Sense Motive";
        attribute_id = 5;
        synergy = 0;
        retry = false;
        armor_check_penalty = false;
        check = "A successful check lets you avoid being bluffed. You can also use this skill to determine when 'something is up' (that is, something odd is going on) or to assess someones trustworthiness.";
        action = "Trying to gain information with Sense Motive generally takes at least 1 minute, and you could spend a whole evening trying to get a sense of the people around you.";
    }

    function sleight_of_hand() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 28;
        name = "Sleight Of Hand";
        attribute_id = 2;
        synergy = 3; // bluff
        retry = false;
        armor_check_penalty = true;
        check = "A DC 10 Sleight of Hand check lets you palm a coin-sized, unattended object. Performing a minor feat of legerdemain, such as making a coin disappear, also has a DC of 10 unless an observer is determined to note where the item went.";
        action = "Any Sleight of Hand check normally is a standard action. However, you may perform a Sleight of Hand check as a free action by taking a -20 penalty on the check.";
    }

    function speak_language() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 29;
        name = "Speak Language";
        attribute_id = 0;
        synergy = 0;
        retry = false;
        armor_check_penalty = false;
        check = "Not applicable.";
        action = "Not applicable.";
    }

    function spellcraft() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 30;
        name = "Spellcraft";
        attribute_id = 4;
        synergy = 0;
        retry = false;
        armor_check_penalty = false;
        check = "You can identify spells and magic effects. The DCs for Spellcraft checks relating to various tasks are summarized on the table below.";
        action = "Varies.";
    }

    function spot() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 31;
        name = "Spot";
        attribute_id = 5;
        synergy = 0;
        retry = false;
        armor_check_penalty = false;
        check = "The Spot skill is used primarily to detect characters or creatures who are hiding. Typically, your Spot check is opposed by the Hide check of the creature trying not to be seen. Sometimes a creature isnt intentionally hiding but is still difficult to see, so a successful Spot check is necessary to notice it. A Spot check result higher than 20 generally lets you become aware of an invisible creature near you, though you cant actually see it.";
        action = "Varies. Every time you have a chance to spot something in a reactive manner you can make a Spot check without using an action.";
    }

    function survival() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 32;
        name = "Survival";
        attribute_id = 5;
        synergy = 0;
        retry = false;
        armor_check_penalty = false;
        check = "You can keep yourself and others safe and fed in the wild. The table below gives the DCs for various tasks that require Survival checks.";
        action = "Varies. For getting along in the wild or for gaining the Fortitude save bonus noted in the table above, you make a Survival check once every 24 hours.";
    }

    function swim() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 33;
        name = "Swim";
        attribute_id = 1;
        synergy = 0;
        retry = false;
        armor_check_penalty = true;
        check = "Make a Swim check once per round while you are in the water. Success means you may swim at up to one-half your speed (as a full-round action) or at one-quarter your speed (as a move action). If you fail by 4 or less, you make no progress through the water. If you fail by 5 or more, you go underwater.";
        action = "A successful Swim check allows you to swim one-quarter of your speed as a move action or one-half your speed as a full-round action.";
    }

    function tumble() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 34;
        name = "Tumble";
        attribute_id = 2;
        synergy = 18; // jump
        retry = false;
        armor_check_penalty = true;
        check = "You can land softly when you fall or tumble past opponents. You can also tumble to entertain an audience (as though using the Perform skill). The DCs for various tasks involving the Tumble skill are given on the table below.";
        action = "Not applicable. Tumbling is part of movement, so a Tumble check is part of a move action.";
    }

    function use_magic_device() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 35;
        name = "Use Magic Device";
        attribute_id = 6;
        synergy = 0;
        retry = true;
        armor_check_penalty = false;
        check = "You can use this skill to read a spell or to activate a magic item. Use Magic Device lets you use a magic item as if you had the spell ability or class features of another class, as if you were a different race, or as if you were of a different alignment. You make a Use Magic Device check each time you activate a device such as a wand. If you are using the check to emulate an alignment or some other quality in an ongoing manner, you need to make the relevant Use Magic Device check once per hour.";
        action = "None. The Use Magic Device check is made as part of the action (if any) required to activate the magic item.";
    }

    function use_rope() public pure returns (
        uint id,
        string memory name,
        uint attribute_id,
        uint synergy,
        bool retry,
        bool armor_check_penalty,
        string memory check,
        string memory action
    ) {
        id = 36;
        name = "Use Rope";
        attribute_id = 2;
        synergy = 0;
        retry = true;
        armor_check_penalty = false;
        check = "Securing a grappling hook requires a Use Rope check (DC 10, +2 for every 10 feet of distance the grappling hook is thrown, to a maximum DC of 20 at 50 feet). Failure by 4 or less indicates that the hook fails to catch and falls, allowing you to try again. Failure by 5 or more indicates that the grappling hook initially holds, but comes loose after 1d4 rounds of supporting weight. This check is made secretly, so that you dont know whether the rope will hold your weight.";
        action = "Varies. Throwing a grappling hook is a standard action that provokes an attack of opportunity.";
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"name":"appraise","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"balance","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"bluff","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"class","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"climb","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"concentration","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"craft","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"decipher_script","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"diplomacy","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"disable_device","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"disguise","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"escape_artist","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"forgery","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"gather_information","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"uint256","name":"id","type":"uint256"}],"name":"get_attribute","outputs":[{"internalType":"string","name":"attribute","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"handle_animal","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"heal","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"hide","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"index","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"intimidate","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"jump","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"knowledge","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"listen","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"move_silently","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"open_lock","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"perform","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"profession","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"ride","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"search","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"sense_motive","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"uint256","name":"_id","type":"uint256"}],"name":"skill_by_id","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"sleight_of_hand","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"speak_language","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"spellcraft","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"spot","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"survival","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"swim","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"tumble","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"use_magic_device","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"use_rope","outputs":[{"internalType":"uint256","name":"id","type":"uint256"},{"internalType":"string","name":"name","type":"string"},{"internalType":"uint256","name":"attribute_id","type":"uint256"},{"internalType":"uint256","name":"synergy","type":"uint256"},{"internalType":"bool","name":"retry","type":"bool"},{"internalType":"bool","name":"armor_check_penalty","type":"bool"},{"internalType":"string","name":"check","type":"string"},{"internalType":"string","name":"action","type":"string"}],"stateMutability":"pure","type":"function"}]

608060405234801561001057600080fd5b50615898806100206000396000f3fe608060405234801561001057600080fd5b50600436106102485760003560e01c80637ddb7ff21161013b578063b69ef8a8116100b8578063deb31c881161007c578063deb31c88146103d1578063e10a5605146103d9578063e5fcfe6d146103e1578063ef22163c146103e9578063fa1adec9146103fc57600080fd5b8063b69ef8a81461038f578063bd037c9314610397578063bff852fa1461039f578063d68ab7f1146103c1578063de58f8f2146103c957600080fd5b80639f3763b4116100ff5780639f3763b414610367578063a5432fee1461036f578063b147f40c14610377578063b62a76251461037f578063b69977101461038757600080fd5b80637ddb7ff21461033f578063814e4ad91461034757806389350daa1461034f5780638f1bb4d0146103575780638f6c696b1461035f57600080fd5b80632ad9567c116101c95780634b3aea651161018d5780634b3aea6514610317578063628bac7a1461031f5780636f265b9314610327578063725b14391461032f578063798208ec1461033757600080fd5b80632ad9567c146102e4578063335dd05f146102ec5780633b38a0db146102ff57806347c8244414610307578063480fdaae1461030f57600080fd5b806312ee3b0c1161021057806312ee3b0c146102925780631345e41b1461029a578063144f067d146102a2578063219ce0d4146102aa5780632986c0e5146102b257600080fd5b806304001eec1461024d5780630434fe0b1461027257806307961cd11461027a5780630e44e0bf146102825780631156a65c1461028a575b600080fd5b610255610404565b60405161026998979695949392919061188f565b60405180910390f35b610255610477565b6102556104e7565b610255610556565b6102556105c5565b610255610637565b6102556106af565b61025561072d565b6102556107a1565b6102d760405180604001604052806006815260200165536b696c6c7360d01b81525081565b6040516102699190611875565b61025561081a565b6102556102fa36600461180f565b61088f565b610255610b20565b610255610b9c565b610255610c0b565b610255610c84565b610255610cf9565b610255610d73565b610255610de2565b610255610e56565b610255610ed1565b610255610f4b565b610255610fbc565b61025561102c565b61025561109c565b61025561110b565b61025561117d565b6102556111ed565b61025561125e565b6102556112ce565b610255611345565b6102556113b8565b6102d760405180604001604052806003815260200162416e7960e81b81525081565b61025561142e565b6102556114a3565b610255611517565b610255611587565b610255611601565b6102d76103f736600461180f565b61167a565b610255611796565b60408051808201825260098152684f70656e204c6f636b60b81b602080830191909152825160a081019093526072808452601693600292600092600192849260609283929161343890830139915060405180606001604052806026815260200161194c6026913990509091929394959697565b60408051808201825260048152631219585b60e21b6020808301919091528251610140810190935261010c808452600f9360059260009260019284926060928392916139d79083013991506040518060800160405280604f81526020016118fd604f913990509091929394959697565b604080518082018252600e81526d537065616b204c616e677561676560901b60208083019190915282518084018452600f8082526e2737ba1030b8383634b1b0b136329760891b828401819052855180870190965290855291840191909152601d939192600092839283928392565b60408051808201825260048152635269646560e01b602080830191909152825160a081019093526075808452601993600292600e9260019260009260609283929161200b9083013991506040518060c00160405280608e8152602001614a0a608e913990509091929394959697565b6040805180820182526007815266466f726765727960c81b60208083019190915282516102e081019093526102a6808452600c93600492600092839283926060928392916141899083013991506040518060a00160405280607c81526020016157e7607c913990509091929394959697565b60408051808201825260098152684469706c6f6d61637960b81b60208083019190915282516101c081019093526101818084526008936006926003926000928392606092839291612cf390830139915060405180610140016040528061011a815260200161566161011a913990509091929394959697565b604080518082018252601281527123b0ba3432b91024b73337b936b0ba34b7b760711b60208083019190915282516101608101909352610129808452600d9360069260009260019284926060928392916122a8908301399150604051806060016040528060358152602001613ae36035913990509091929394959697565b6040805180820182526008815267417070726169736560c01b60208083019190915282516101a081019093526101778084526001936004926006926000928392606092839291613d43908301399150604051806080016040528060478152602001611e366047913990509091929394959697565b604080518082018252600d81526c21b7b731b2b73a3930ba34b7b760991b602080830191909152825161024081019093526102048084526005936003926000926001928492606092839291611c329083013991506040518060e0016040528060a581526020016152c860a5913990509091929394959697565b604080518082018252600c81526b53656e7365204d6f7469766560a01b602080830191909152825160e0810190935260bc808452601b9360059260009283928392606092839291613eba9083013991506040518060e0016040528060a381526020016137a760a3913990509091929394959697565b6000606060008060008060608088600114156108c2576108ad61072d565b97509750975097509750975097509750610b15565b88600214156108d3576108ad611345565b88600314156108e4576108ad61102c565b88600414156108f5576108ad61117d565b8860051415610906576108ad6107a1565b8860061415610917576108ad610f4b565b8860071415610928576108ad611601565b8860081415610939576108ad610637565b886009141561094a576108ad611587565b88600a141561095b576108ad610c84565b88600b141561096c576108ad610cf9565b88600c141561097d576108ad6105c5565b88600d141561098e576108ad6106af565b88600e141561099f576108ad611796565b88600f14156109b0576108ad610477565b88601014156109c1576108ad61125e565b88601114156109d2576108ad6112ce565b88601214156109e3576108ad61109c565b88601314156109f4576108ad610de2565b8860141415610a05576108ad61142e565b8860151415610a16576108ad610c0b565b8860161415610a27576108ad610404565b8860171415610a38576108ad6111ed565b8860181415610a49576108ad6113b8565b8860191415610a5a576108ad610556565b88601a1415610a6b576108ad610fbc565b88601b1415610a7c576108ad61081a565b88601c1415610a8d576108ad610e56565b88601d1415610a9e576108ad6104e7565b88601e1415610aaf576108ad610ed1565b88601f1415610ac0576108ad610d73565b8860201415610ad1576108ad611517565b8860211415610ae2576108ad610b9c565b8860221415610af3576108ad61110b565b8860231415610b04576108ad610b20565b8860241415610b15576108ad6114a3565b919395975091939597565b604080518082018252601081526f557365204d616769632044657669636560801b602080830191909152825161022081019093526101f48084526023936006926000926001928492606092839291614fc69083013991506040518060a00160405280606c815260200161442f606c913990509091929394959697565b60408051808201825260048152635377696d60e01b6020808301919091528251610160810190935261012d808452602193600192600092839285926060928392916148dd9083013991506040518060c00160405280608481526020016120806084913990509091929394959697565b604080518082018252600d81526c4d6f76652053696c656e746c7960981b6020808301919091528251610240810190935261020a808452601593600292600092600192839260609283929161449b9083013991506040518060a00160405280606c815260200161577b606c913990509091929394959697565b6040805180820182526008815267446973677569736560c01b60208083019190915282516101c0810190935261018f808452600a9360069260039260019260009260609283929161474e90830139915060405180606001604052806034815260200161471a6034913990509091929394959697565b604080518082018252600d81526c115cd8d85c1948105c9d1a5cdd609a1b602080830191909152825160e0810190935260b9808452600b9360029260249260019283926060928392916134df908301399150604051806101c0016040528061019a81526020016154c761019a913990509091929394959697565b604080518082018252600481526314dc1bdd60e21b60208083019190915282516101e081019093526101bc808452601f93600592600092839283926060928392916123d19083013991506040518060a00160405280607e8152602001612980607e913990509091929394959697565b60408051808201825260098152684b6e6f776c6564676560b81b6020808301919091528251610240810190935261020f808452601393600492600092839283926060928392916135989083013991506040518060a001604052806073815260200161536d6073913990509091929394959697565b604080518082018252600f81526e14db195a59da1d0813d98812185b99608a1b6020808301919091528251610120810190935260e7808452601c936002926003926000926001926060928392916153e09083013991506040518060c0016040528060a08152602001613ca360a0913990509091929394959697565b604080518082018252600a81526914dc195b1b18dc98599d60b21b602080830191909152825160c081019093526085808452601e9360049260009283928392606092839291613b18908301399150604051806040016040528060078152602001662b30b934b2b99760c91b81525090509091929394959697565b604080518082018252600581526410dc98599d60da1b60208083019190915282516101a0810190935261016f8084526006936004926000926001928492606092839291611ac3908301399150604051806080016040528060458152602001611fc66045913990509091929394959697565b60408051808201825260068152650a6cac2e4c6d60d31b602080830191909152825160c081019093526095808452601a936004926000926001928492606092839291611f059083013991506040518060a0016040528060658152602001613b9d6065913990509091929394959697565b604080518082018252600581526421363ab33360d91b6020808301919091528251610100810190935260c18084526003936006926000926001928492606092839291614dba9083013991506040518060e0016040528060ba8152602001613ff360ba913990509091929394959697565b604080518082018252600481526304a756d760e41b60208083019190915282516103c0810190935261039a8084526012936001926022928492839260609283929161258d9083013991506040518060800160405280605081526020016130c76050913990509091929394959697565b604080518082018252600681526554756d626c6560d01b6020808301919091528251610100810190935260e0808452602293600292601292600092600192606092839291612f5e9083013991506040518060800160405280605981526020016129276059913990509091929394959697565b604080518082018252600581526421b634b6b160d91b60208083019190915282516101808101909352610148808452600493600192602492849283926060928392916131179083013991506040518060c001604052806089815260200161303e6089913990509091929394959697565b6040805180820182526007815266506572666f726d60c81b602080830191909152825160608181019094526035808252601794600693600093600193859392839291906134aa9083013991506040518060a0016040528060758152602001612b736075913990509091929394959697565b60408051808201825260048152634869646560e01b6020808301919091528251610180810190935261014b8084526010936002926000928392600192606092839291614e7b9083013991506040518060a001604052806067815260200161384a6067913990509091929394959697565b604080518082018252600a815269496e74696d696461746560b01b60208083019190915282516103608101909352610322808452601193600692600392600192600092606092839291614a989083013991506040518060a00160405280607d8152602001613f76607d913990509091929394959697565b604080518082018252600781526642616c616e636560c81b6020808301919091528251610140810190935261010b8084526002938492602292600092600192606092839291612be89083013991506040518060a00160405280607581526020016146a56075913990509091929394959697565b604080518082018252600a815269283937b332b9b9b4b7b760b11b6020808301919091528251610160810190935261012680845260189360059260009260019284926060928392916138b1908301399150604051806080016040528060438152602001613c026043913990509091929394959697565b60408051808201825260068152652634b9ba32b760d11b60208083019190915282516101808101909352610151808452601493600592600092600192849260609283929161197290830139915060405180610140016040528061010b81526020016129fe61010b913990509091929394959697565b604080518082018252600881526755736520526f706560c01b602080830191909152825161020081019093526101d9808452602493600292600092600192849260609283929161325f9083013991506040518060800160405280605e8152602001613c45605e913990509091929394959697565b604080518082018252600881526714dd5c9d9a5d985b60c21b602082810191909152825160c081019093526088808452909260059160009182918291606091829190611e7d828b013991506040518060c00160405280609681526020016121046096913990509091929394959697565b604080518082018252600e81526d44697361626c652044657669636560901b6020808301919091528251610140810190935261010e8084526009936004926000928392839260609283929161219a90830139915060405180610100016040528060dc81526020016140ad60dc913990509091929394959697565b604080518082018252600f81526e111958da5c1a195c8814d8dc9a5c1d608a1b6020808301919091528251610120810190935260ea80845260079360049260009283928392606092839291612e749083013991506040518060a00160405280606a8152602001612b09606a913990509091929394959697565b606081600114156116a95750506040805180820190915260088152670a6e8e4cadccee8d60c31b602082015290565b81600214156116d757505060408051808201909152600981526844657874657269747960b81b602082015290565b816003141561170857505060408051808201909152600c81526b21b7b739ba34ba3aba34b7b760a11b602082015290565b816004141561173957505060408051808201909152600c81526b496e74656c6c6967656e636560a01b602082015290565b8160051415611764575050604080518082019091526006815265576973646f6d60d01b602082015290565b81600614156117915750506040805180820190915260088152674368617269736d6160c01b602082015290565b919050565b604080518082018252600d81526c12185b991b1948105b9a5b585b609a1b6020808301919091528251610140810190935261010e808452600e9360069260009260019284926060928392916151ba9083013991506040518060600160405280602c8152602001611f9a602c913990509091929394959697565b60006020828403121561182157600080fd5b5035919050565b6000815180845260005b8181101561184e57602081850181015186830182015201611832565b81811115611860576000602083870101525b50601f01601f19169290920160200192915050565b6020815260006118886020830184611828565b9392505050565b60006101008a83528060208401526118a98184018b611828565b9050886040840152876060840152861515608084015285151560a084015282810360c08401526118d98186611828565b905082810360e08401526118ed8185611828565b9b9a505050505050505050505056fe50726f766964696e67206669727374206169642c207472656174696e67206120776f756e642c206f72207472656174696e6720706f69736f6e2069732061207374616e6461726420616374696f6e2e4f70656e696e672061206c6f636b20697320612066756c6c2d726f756e6420616374696f6e2e596f7572204c697374656e20636865636b20697320656974686572206d61646520616761696e737420612044432074686174207265666c6563747320686f7720717569657420746865206e6f697365206973207468617420796f75206d6967687420686561722c206f72206974206973206f70706f73656420627920796f75722074617267657473204d6f76652053696c656e746c7920636865636b2e20496e207468652063617365206f662070656f706c6520747279696e6720746f2062652071756965742c207468652044437320676976656e206f6e20746865207461626c6520636f756c64206265207265706c61636564206279204d6f76652053696c656e746c7920636865636b732c20696e20776869636820636173652074686520696e6469636174656420444320776f756c64206265207468656972206176657261676520636865636b20726573756c742e596f752063616e20707261637469636520796f757220747261646520616e64206d616b65206120646563656e74206c6976696e672c206561726e696e672061626f75742068616c6620796f757220636865636b20726573756c7420696e20676f6c642070696563657320706572207765656b206f662064656469636174656420776f726b2e20596f75206b6e6f7720686f7720746f207573652074686520746f6f6c73206f6620796f75722074726164652c20686f7720746f20706572666f726d2074686520637261667473206461696c79207461736b732c20686f7720746f2073757065727669736520756e747261696e65642068656c706572732c20616e6420686f7720746f2068616e646c6520636f6d6d6f6e2070726f626c656d732e2028556e747261696e6564206c61626f7265727320616e6420617373697374616e7473206561726e20616e2061766572616765206f6620312073696c76657220706965636520706572206461792e29596f75206d757374206d616b65206120436f6e63656e74726174696f6e20636865636b207768656e6576657220796f75206d6967687420706f74656e7469616c6c792062652064697374726163746564202862792074616b696e672064616d6167652c20627920686172736820776561746865722c20616e6420736f206f6e29207768696c6520656e676167656420696e20736f6d6520616374696f6e207468617420726571756972657320796f75722066756c6c20617474656e74696f6e2e205375636820616374696f6e7320696e636c7564652063617374696e672061207370656c6c2c20636f6e63656e74726174696e67206f6e20616e20616374697665207370656c6c2c20646972656374696e672061207370656c6c2c207573696e672061207370656c6c2d6c696b65206162696c6974792c206f72207573696e67206120736b696c6c207468617420776f756c642070726f766f6b6520616e2061747461636b206f66206f70706f7274756e6974792e20496e2067656e6572616c2c20696620616e20616374696f6e20776f756c646e74206e6f726d616c6c792070726f766f6b6520616e2061747461636b206f66206f70706f7274756e6974792c20796f75206e656564206e6f74206d616b65206120436f6e63656e74726174696f6e20636865636b20746f2061766f6964206265696e6720646973747261637465642e41707072616973696e6720616e206974656d2074616b65732031206d696e757465202874656e20636f6e73656375746976652066756c6c2d726f756e6420616374696f6e73292e596f752063616e206b65657020796f757273656c6620616e64206f7468657273207361666520616e642066656420696e207468652077696c642e20546865207461626c652062656c6f77206769766573207468652044437320666f7220766172696f7573207461736b732074686174207265717569726520537572766976616c20636865636b732e596f752067656e6572616c6c79206d7573742062652077697468696e2031302066656574206f6620746865206f626a656374206f72207375726661636520746f2062652073656172636865642e20546865207461626c652062656c6f772067697665732044437320666f72207479706963616c207461736b7320696e766f6c76696e67207468652053656172636820736b696c6c2e5661726965732e2048616e646c696e6720616e20616e696d616c2069732061206d6f766520616374696f6e2e446f6573206e6f74206170706c792e20437261667420636865636b7320617265206d6164652062792074686520646179206f72207765656b20287365652061626f7665292e5479706963616c20726964696e6720616374696f6e7320646f6e74207265717569726520636865636b732e20596f752063616e20736164646c652c206d6f756e742c20726964652c20616e64206469736d6f756e742066726f6d2061206d6f756e7420776974686f757420612070726f626c656d2e41207375636365737366756c205377696d20636865636b20616c6c6f777320796f7520746f207377696d206f6e652d71756172746572206f6620796f75722073706565642061732061206d6f766520616374696f6e206f72206f6e652d68616c6620796f757220737065656420617320612066756c6c2d726f756e6420616374696f6e2e5661726965732e20466f722067657474696e6720616c6f6e6720696e207468652077696c64206f7220666f72206761696e696e672074686520466f72746974756465207361766520626f6e7573206e6f74656420696e20746865207461626c652061626f76652c20796f75206d616b65206120537572766976616c20636865636b206f6e636520657665727920323420686f7572732e5468652044697361626c652044657669636520636865636b206973206d616465207365637265746c792c20736f207468617420796f7520646f6e74206e65636573736172696c79206b6e6f77207768657468657220796f757665207375636365656465642e2054686520444320646570656e6473206f6e20686f7720747269636b7920746865206465766963652069732e2044697361626c696e6720286f722072696767696e67206f72206a616d6d696e6729206120666169726c792073696d706c6520646576696365206861732061204443206f662031303b206d6f726520696e7472696361746520616e6420636f6d706c65782064657669636573206861766520686967686572204443732e416e206576656e696e67732074696d652c20612066657720676f6c642070696563657320666f7220627579696e67206472696e6b7320616e64206d616b696e6720667269656e64732c20616e6420612044432031302047617468657220496e666f726d6174696f6e20636865636b2067657420796f7520612067656e6572616c2069646561206f662061206369747973206d616a6f72206e657773206974656d732c20617373756d696e6720746865726520617265206e6f206f6276696f757320726561736f6e73207768792074686520696e666f726d6174696f6e20776f756c64206265207769746868656c642e205468652068696768657220796f757220636865636b20726573756c742c20746865206265747465722074686520696e666f726d6174696f6e2e5468652053706f7420736b696c6c2069732075736564207072696d6172696c7920746f206465746563742063686172616374657273206f72206372656174757265732077686f2061726520686964696e672e205479706963616c6c792c20796f75722053706f7420636865636b206973206f70706f73656420627920746865204869646520636865636b206f662074686520637265617475726520747279696e67206e6f7420746f206265207365656e2e20536f6d6574696d657320612063726561747572652069736e7420696e74656e74696f6e616c6c7920686964696e6720627574206973207374696c6c20646966666963756c7420746f207365652c20736f2061207375636365737366756c2053706f7420636865636b206973206e656365737361727920746f206e6f746963652069742e20412053706f7420636865636b20726573756c7420686967686572207468616e2032302067656e6572616c6c79206c65747320796f75206265636f6d65206177617265206f6620616e20696e76697369626c65206372656174757265206e65617220796f752c2074686f75676820796f752063616e742061637475616c6c79207365652069742e54686520444320616e64207468652064697374616e636520796f752063616e20636f7665722076617279206163636f7264696e6720746f207468652074797065206f66206a756d7020796f752061726520617474656d7074696e6720287365652062656c6f77292e20596f7572204a756d7020636865636b206973206d6f64696669656420627920796f75722073706565642e20496620796f75722073706565642069732033302066656574207468656e206e6f206d6f646966696572206261736564206f6e207370656564206170706c69657320746f2074686520636865636b2e20496620796f7572207370656564206973206c657373207468616e20333020666565742c20796f752074616b652061202d362070656e616c747920666f722065766572792031302066656574206f66207370656564206c657373207468616e20333020666565742e20496620796f75722073706565642069732067726561746572207468616e20333020666565742c20796f75206761696e2061202b3420626f6e757320666f722065766572792031302066656574206265796f6e6420333020666565742e20416c6c204a756d702044437320676976656e206865726520617373756d65207468617420796f752067657420612072756e6e696e672073746172742c207768696368207265717569726573207468617420796f75206d6f7665206174206c65617374203230206665657420696e2061207374726169676874206c696e65206265666f726520617474656d7074696e6720746865206a756d702e20496620796f7520646f206e6f742067657420612072756e6e696e672073746172742c2074686520444320666f7220746865206a756d7020697320646f75626c65642e2044697374616e6365206d6f766564206279206a756d70696e6720697320636f756e74656420616761696e737420796f7572206e6f726d616c206d6178696d756d206d6f76656d656e7420696e206120726f756e642e20496620796f7520686176652072616e6b7320696e204a756d7020616e6420796f752073756363656564206f6e2061204a756d7020636865636b2c20796f75206c616e64206f6e20796f7572206665657420287768656e20617070726f707269617465292e20496620796f7520617474656d70742061204a756d7020636865636b20756e747261696e65642c20796f75206c616e642070726f6e6520756e6c65737320796f752062656174207468652044432062792035206f72206d6f72652e4e6f74206170706c696361626c652e2054756d626c696e672069732070617274206f66206d6f76656d656e742c20736f20612054756d626c6520636865636b2069732070617274206f662061206d6f766520616374696f6e2e5661726965732e2045766572792074696d6520796f7520686176652061206368616e636520746f2073706f7420736f6d657468696e6720696e2061207265616374697665206d616e6e657220796f752063616e206d616b6520612053706f7420636865636b20776974686f7574207573696e6720616e20616374696f6e2e5661726965732e2045766572792074696d6520796f7520686176652061206368616e636520746f206865617220736f6d657468696e6720696e2061207265616374697665206d616e6e6572202873756368206173207768656e20736f6d656f6e65206d616b65732061206e6f697365206f7220796f75206d6f766520696e746f2061206e65772061726561292c20796f752063616e206d616b652061204c697374656e20636865636b20776974686f7574207573696e6720616e20616374696f6e2e20547279696e6720746f206865617220736f6d657468696e6720796f75206661696c656420746f20686561722070726576696f75736c792069732061206d6f766520616374696f6e2e4465636970686572696e6720746865206571756976616c656e74206f6620612073696e676c652070616765206f66207363726970742074616b65732031206d696e757465202874656e20636f6e73656375746976652066756c6c2d726f756e6420616374696f6e73292e5661726965732e20547279696e6720746f206561726e206d6f6e657920627920706c6179696e6720696e207075626c696320726571756972657320616e7977686572652066726f6d20616e206576656e696e677320776f726b20746f20612066756c6c206461797320706572666f726d616e63652e596f752063616e2077616c6b206f6e206120707265636172696f757320737572666163652e2041207375636365737366756c20636865636b206c65747320796f75206d6f76652061742068616c6620796f757220737065656420616c6f6e6720746865207375726661636520666f72203120726f756e642e2041206661696c7572652062792034206f72206c657373206d65616e7320796f752063616e74206d6f766520666f72203120726f756e642e2041206661696c7572652062792035206f72206d6f7265206d65616e7320796f752066616c6c2e2054686520646966666963756c74792076617269657320776974682074686520737572666163652c20617320666f6c6c6f77733a596f752063616e206368616e67652074686520617474697475646573206f66206f746865727320286e6f6e706c6179657220636861726163746572732920776974682061207375636365737366756c204469706c6f6d61637920636865636b3b207365652074686520496e666c75656e63696e67204e50432041747469747564657320736964656261722c2062656c6f772c20666f72206261736963204443732e20496e206e65676f74696174696f6e732c207061727469636970616e747320726f6c6c206f70706f736564204469706c6f6d61637920636865636b732c20616e64207468652077696e6e6572206761696e732074686520616476616e746167652e204f70706f73656420636865636b7320616c736f207265736f6c766520736974756174696f6e73207768656e2074776f206164766f6361746573206f72206469706c6f6d61747320706c656164206f70706f7369746520636173657320696e20612068656172696e67206265666f726520612074686972642070617274792e596f752063616e2064656369706865722077726974696e6720696e20616e20756e66616d696c696172206c616e6775616765206f722061206d657373616765207772697474656e20696e20616e20696e636f6d706c657465206f72206172636861696320666f726d2e20546865206261736520444320697320323020666f72207468652073696d706c657374206d657373616765732c20323520666f72207374616e646172642074657874732c20616e64203330206f722068696768657220666f7220696e747269636174652c2065786f7469632c206f722076657279206f6c642077726974696e672e596f752063616e206c616e6420736f66746c79207768656e20796f752066616c6c206f722074756d626c652070617374206f70706f6e656e74732e20596f752063616e20616c736f2074756d626c6520746f20656e7465727461696e20616e2061756469656e6365202861732074686f756768207573696e672074686520506572666f726d20736b696c6c292e205468652044437320666f7220766172696f7573207461736b7320696e766f6c76696e67207468652054756d626c6520736b696c6c2061726520676976656e206f6e20746865207461626c652062656c6f772e436c696d62696e672069732070617274206f66206d6f76656d656e742c20736f206974732067656e6572616c6c792070617274206f662061206d6f766520616374696f6e2028616e64206d617920626520636f6d62696e65642077697468206f74686572207479706573206f66206d6f76656d656e7420696e2061206d6f766520616374696f6e292e4e6f6e652e2041204a756d7020636865636b20697320696e636c7564656420696e20796f7572206d6f76656d656e742c20736f2069742069732070617274206f662061206d6f766520616374696f6e2e576974682061207375636365737366756c20436c696d6220636865636b2c20796f752063616e20616476616e63652075702c20646f776e2c206f72206163726f7373206120736c6f70652c20612077616c6c2c206f7220736f6d65206f7468657220737465657020696e636c696e6520286f72206576656e2061206365696c696e6720776974682068616e64686f6c647329206174206f6e652d7175617274657220796f7572206e6f726d616c2073706565642e204120736c6f706520697320636f6e7369646572656420746f20626520616e7920696e636c696e6520617420616e20616e676c65206d6561737572696e67206c657373207468616e20363020646567726565733b20612077616c6c20697320616e7920696e636c696e6520617420616e20616e676c65206d6561737572696e672036302064656772656573206f72206d6f72652e5365637572696e6720612067726170706c696e6720686f6f6b20726571756972657320612055736520526f706520636865636b202844432031302c202b3220666f722065766572792031302066656574206f662064697374616e6365207468652067726170706c696e6720686f6f6b206973207468726f776e2c20746f2061206d6178696d756d204443206f662032302061742035302066656574292e204661696c7572652062792034206f72206c65737320696e6469636174657320746861742074686520686f6f6b206661696c7320746f20636174636820616e642066616c6c732c20616c6c6f77696e6720796f7520746f2074727920616761696e2e204661696c7572652062792035206f72206d6f726520696e646963617465732074686174207468652067726170706c696e6720686f6f6b20696e697469616c6c7920686f6c64732c2062757420636f6d6573206c6f6f73652061667465722031643420726f756e6473206f6620737570706f7274696e67207765696768742e205468697320636865636b206973206d616465207365637265746c792c20736f207468617420796f7520646f6e74206b6e6f7720776865746865722074686520726f70652077696c6c20686f6c6420796f7572207765696768742e54686520444320666f72206f70656e696e672061206c6f636b207661726965732066726f6d20323020746f2034302c20646570656e64696e67206f6e20746865207175616c697479206f6620746865206c6f636b2c20617320676976656e206f6e20746865207461626c652062656c6f772e596f752063616e20696d70726573732061756469656e636573207769746820796f75722074616c656e7420616e6420736b696c6c2e596f7572204573636170652041727469737420636865636b206973206f70706f736564206279207468652062696e646572732055736520526f706520636865636b2e2053696e6365206974732065617369657220746f2074696520736f6d656f6e65207570207468616e20746f206573636170652066726f6d206265696e6720746965642075702c207468652062696e64657220676574732061202b313020626f6e7573206f6e20686973206f722068657220636865636b2e416e73776572696e672061207175657374696f6e2077697468696e20796f7572206669656c64206f66207374756479206861732061204443206f662031302028666f72207265616c6c792065617379207175657374696f6e73292c2031352028666f72206261736963207175657374696f6e73292c206f7220323020746f2033302028666f72207265616c6c7920746f756768207175657374696f6e73292e20496e206d616e792063617365732c20796f752063616e20757365207468697320736b696c6c20746f206964656e74696679206d6f6e737465727320616e64207468656972207370656369616c20706f77657273206f722076756c6e65726162696c69746965732e20496e2067656e6572616c2c20746865204443206f662073756368206120636865636b20657175616c73203130202b20746865206d6f6e73746572732048442e2041207375636365737366756c20636865636b20616c6c6f777320796f7520746f2072656d656d626572206120626974206f662075736566756c20696e666f726d6174696f6e2061626f75742074686174206d6f6e737465722e20466f72206576657279203520706f696e747320627920776869636820796f757220636865636b20726573756c742065786365656473207468652044432c20796f7520726563616c6c20616e6f74686572207069656365206f662075736566756c20696e666f726d6174696f6e2e547279696e6720746f206761696e20696e666f726d6174696f6e20776974682053656e7365204d6f746976652067656e6572616c6c792074616b6573206174206c656173742031206d696e7574652c20616e6420796f7520636f756c64207370656e6420612077686f6c65206576656e696e6720747279696e6720746f2067657420612073656e7365206f66207468652070656f706c652061726f756e6420796f752e557375616c6c79206e6f6e652e204e6f726d616c6c792c20796f75206d616b652061204869646520636865636b2061732070617274206f66206d6f76656d656e742c20736f20697420646f65736e742074616b65206120736570617261746520616374696f6e2e596f752063616e20707261637469636520796f757220747261646520616e64206d616b65206120646563656e74206c6976696e672c206561726e696e672061626f75742068616c6620796f75722050726f66657373696f6e20636865636b20726573756c7420696e20676f6c642070696563657320706572207765656b206f662064656469636174656420776f726b2e20596f75206b6e6f7720686f7720746f207573652074686520746f6f6c73206f6620796f75722074726164652c20686f7720746f20706572666f726d207468652070726f66657373696f6e73206461696c79207461736b732c20686f7720746f207375706572766973652068656c706572732c20616e6420686f7720746f2068616e646c6520636f6d6d6f6e2070726f626c656d732e596f7520757375616c6c79207573652066697273742061696420746f20736176652061206479696e67206368617261637465722e20496620612063686172616374657220686173206e656761746976652068697420706f696e747320616e64206973206c6f73696e672068697420706f696e747320286174207468652072617465206f6620312070657220726f756e642c20312070657220686f75722c206f7220312070657220646179292c20796f752063616e206d616b652068696d206f722068657220737461626c652e204120737461626c65206368617261637465722072656761696e73206e6f2068697420706f696e7473206275742073746f7073206c6f73696e67207468656d2e41207479706963616c2047617468657220496e666f726d6174696f6e20636865636b2074616b6573203164342b3120686f7572732e596f752063616e206964656e74696679207370656c6c7320616e64206d6167696320656666656374732e205468652044437320666f72205370656c6c637261667420636865636b732072656c6174696e6720746f20766172696f7573207461736b73206172652073756d6d6172697a6564206f6e20746865207461626c652062656c6f772e49742074616b657320612066756c6c2d726f756e6420616374696f6e20746f20736561726368206120352d666f6f742d62792d352d666f6f742061726561206f72206120766f6c756d65206f6620676f6f647320352066656574206f6e206120736964652e4e6f74206170706c696361626c652e20412073696e676c6520636865636b2067656e6572616c6c7920726570726573656e74732061207765656b206f6620776f726b2e5661726965732e205468726f77696e6720612067726170706c696e6720686f6f6b2069732061207374616e6461726420616374696f6e20746861742070726f766f6b657320616e2061747461636b206f66206f70706f7274756e6974792e416e7920536c6569676874206f662048616e6420636865636b206e6f726d616c6c792069732061207374616e6461726420616374696f6e2e20486f77657665722c20796f75206d617920706572666f726d206120536c6569676874206f662048616e6420636865636b2061732061206672656520616374696f6e2062792074616b696e672061202d32302070656e616c7479206f6e2074686520636865636b2e596f752063616e20617070726169736520636f6d6d6f6e206f722077656c6c2d6b6e6f776e206f626a656374732077697468206120444320313220417070726169736520636865636b2e204661696c757265206d65616e73207468617420796f7520657374696d617465207468652076616c75652061742035302520746f203135302520283264362b332074696d6573203130252c29206f66206974732061637475616c2076616c75652e2041707072616973696e6720612072617265206f722065786f746963206974656d2072657175697265732061207375636365737366756c20636865636b20616761696e73742044432031352c2032302c206f72206869676865722e2049662074686520636865636b206973207375636365737366756c2c20796f7520657374696d617465207468652076616c756520636f72726563746c793b206661696c757265206d65616e7320796f752063616e6e6f7420657374696d61746520746865206974656d732076616c75652e41207375636365737366756c20636865636b206c65747320796f752061766f6964206265696e6720626c75666665642e20596f752063616e20616c736f20757365207468697320736b696c6c20746f2064657465726d696e65207768656e2027736f6d657468696e67206973207570272028746861742069732c20736f6d657468696e67206f646420697320676f696e67206f6e29206f7220746f2061737365737320736f6d656f6e6573207472757374776f727468696e6573732e5661726965732e204368616e67696e6720616e6f7468657273206265686176696f722072657175697265732031206d696e757465206f6620696e746572616374696f6e2e20496e74696d69646174696e6720616e206f70706f6e656e7420696e20636f6d6261742069732061207374616e6461726420616374696f6e2e5661726965732e204120426c75666620636865636b206d6164652061732070617274206f662067656e6572616c20696e746572616374696f6e20616c776179732074616b6573206174206c65617374203120726f756e642028616e64206973206174206c6561737420612066756c6c2d726f756e6420616374696f6e292c206275742069742063616e2074616b65206d756368206c6f6e67657220696620796f752074727920736f6d657468696e6720656c61626f726174652e54686520616d6f756e74206f662074696d65206e656564656420746f206d616b6520612044697361626c652044657669636520636865636b20646570656e6473206f6e20746865207461736b2c206173206e6f7465642061626f76652e2044697361626c696e6720612073696d706c65206465766963652074616b6573203120726f756e6420616e6420697320612066756c6c2d726f756e6420616374696f6e2e20416e20696e74726963617465206f7220636f6d706c65782064657669636520726571756972657320316434206f722032643420726f756e64732e466f72676572792072657175697265732077726974696e67206d6174657269616c7320617070726f70726961746520746f2074686520646f63756d656e74206265696e6720666f726765642c20656e6f756768206c69676874206f722073756666696369656e742076697375616c2061637569747920746f20736565207468652064657461696c73206f66207768617420796f7572652077726974696e672c2077617820666f72207365616c732028696620617070726f707269617465292c20616e6420736f6d652074696d652e20546f20666f726765206120646f63756d656e74206f6e207768696368207468652068616e6477726974696e67206973206e6f7420737065636966696320746f206120706572736f6e20286d696c6974617279206f72646572732c206120676f7665726e6d656e74206465637265652c206120627573696e657373206c65646765722c206f7220746865206c696b65292c20796f75206e656564206f6e6c7920746f2068617665207365656e20612073696d696c617220646f63756d656e74206265666f72652c20616e6420796f75206761696e2061202b3820626f6e7573206f6e20796f757220636865636b2e20546f20666f7267652061207369676e61747572652c20796f75206e65656420616e206175746f6772617068206f66207468617420706572736f6e20746f20636f70792c20616e6420796f75206761696e2061202b3420626f6e7573206f6e2074686520636865636b2e20546f20666f7267652061206c6f6e67657220646f63756d656e74207772697474656e20696e207468652068616e64206f6620736f6d6520706172746963756c617220706572736f6e2c2061206c617267652073616d706c65206f66207468617420706572736f6e732068616e6477726974696e67206973206e65656465642e4e6f6e652e2054686520557365204d616769632044657669636520636865636b206973206d6164652061732070617274206f662074686520616374696f6e2028696620616e792920726571756972656420746f20616374697661746520746865206d61676963206974656d2e596f7572204d6f76652053696c656e746c7920636865636b206973206f70706f73656420627920746865204c697374656e20636865636b206f6620616e796f6e652077686f206d69676874206865617220796f752e20596f752063616e206d6f766520757020746f206f6e652d68616c6620796f7572206e6f726d616c207370656564206174206e6f2070656e616c74792e205768656e206d6f76696e6720617420612073706565642067726561746572207468616e206f6e652d68616c6620627574206c657373207468616e20796f75722066756c6c2073706565642c20796f752074616b652061202d352070656e616c74792e204974732070726163746963616c6c7920696d706f737369626c6520282d32302070656e616c74792920746f206d6f76652073696c656e746c79207768696c652072756e6e696e67206f72206368617267696e672e204e6f6973792073757266616365732c207375636820617320626f6773206f7220756e64657267726f7774682c2061726520746f75676820746f206d6f76652073696c656e746c79206163726f73732e205768656e20796f752074727920746f20736e65616b206163726f73732073756368206120737572666163652c20796f752074616b6520612070656e616c7479206f6e20796f7572204d6f76652053696c656e746c7920636865636b20617320696e646963617465642062656c6f772e4e6f6e652e20412042616c616e636520636865636b20646f65736e74207265717569726520616e20616374696f6e3b206974206973206d6164652061732070617274206f6620616e6f7468657220616374696f6e206f722061732061207265616374696f6e20746f206120736974756174696f6e2e4372656174696e672061206469736775697365207265717569726573203164332a3130206d696e75746573206f6620776f726b2e596f757220446973677569736520636865636b20726573756c742064657465726d696e657320686f7720676f6f64207468652064697367756973652069732c20616e64206974206973206f70706f736564206279206f74686572732053706f7420636865636b20726573756c74732e20496620796f7520646f6e74206472617720616e7920617474656e74696f6e20746f20796f757273656c662c206f746865727320646f206e6f742067657420746f206d616b652053706f7420636865636b732e20496620796f7520636f6d6520746f2074686520617474656e74696f6e206f662070656f706c652077686f2061726520737573706963696f757320287375636820617320612067756172642077686f206973207761746368696e6720636f6d6d6f6e6572732077616c6b696e67207468726f756768206120636974792067617465292c2069742063616e20626520617373756d656420746861742073756368206f6273657276657273206172652074616b696e67203130206f6e2074686569722053706f7420636865636b732e4d616b652061205377696d20636865636b206f6e63652070657220726f756e64207768696c6520796f752061726520696e207468652077617465722e2053756363657373206d65616e7320796f75206d6179207377696d20617420757020746f206f6e652d68616c6620796f75722073706565642028617320612066756c6c2d726f756e6420616374696f6e29206f72206174206f6e652d7175617274657220796f7572207370656564202861732061206d6f766520616374696f6e292e20496620796f75206661696c2062792034206f72206c6573732c20796f75206d616b65206e6f2070726f6772657373207468726f756768207468652077617465722e20496620796f75206661696c2062792035206f72206d6f72652c20796f7520676f20756e64657277617465722e5661726965732e204d6f756e74696e67206f72206469736d6f756e74696e67206e6f726d616c6c792069732061206d6f766520616374696f6e2e204f7468657220636865636b73206172652061206d6f766520616374696f6e2c2061206672656520616374696f6e2c206f72206e6f20616374696f6e20617420616c6c2c206173206e6f7465642061626f76652e596f752063616e206368616e676520616e6f7468657273206265686176696f7220776974682061207375636365737366756c20636865636b2e20596f757220496e74696d696461746520636865636b206973206f70706f736564206279207468652074617267657473206d6f646966696564206c6576656c20636865636b202831643230202b20636861726163746572206c6576656c206f72204869742044696365202b207461726765747320576973646f6d20626f6e7573205b696620616e795d202b2074617267657473206d6f64696669657273206f6e20736176657320616761696e73742066656172292e20496620796f75206265617420796f7572207461726765747320636865636b20726573756c742c20796f75206d6179207472656174207468652074617267657420617320667269656e646c792c20627574206f6e6c7920666f722074686520707572706f7365206f6620616374696f6e732074616b656e207768696c652069742072656d61696e7320696e74696d6964617465642e2028546861742069732c20746865207461726765742072657461696e7320697473206e6f726d616c2061747469747564652c206275742077696c6c20636861742c206164766973652c206f66666572206c696d697465642068656c702c206f72206164766f63617465206f6e20796f757220626568616c66207768696c6520696e74696d6964617465642e2053656520746865204469706c6f6d61637920736b696c6c2c2061626f76652c20666f72206164646974696f6e616c2064657461696c732e292054686520656666656374206c61737473206173206c6f6e6720617320746865207461726765742072656d61696e7320696e20796f75722070726573656e63652c20616e6420666f72203164362a3130206d696e75746573206166746572776172642e20416674657220746869732074696d652c2074686520746172676574732064656661756c7420617474697475646520746f7761726420796f752073686966747320746f20756e667269656e646c7920286f722c206966206e6f726d616c6c7920756e667269656e646c792c20746f20686f7374696c65292e4120426c75666620636865636b206973206f70706f7365642062792074686520746172676574732053656e7365204d6f7469766520636865636b2e2053656520746865206163636f6d70616e79696e67207461626c6520666f72206578616d706c6573206f6620646966666572656e74206b696e6473206f6620626c7566667320616e6420746865206d6f64696669657220746f2074686520746172676574732053656e7365204d6f7469766520636865636b20666f722065616368206f6e652e596f7572204869646520636865636b206973206f70706f736564206279207468652053706f7420636865636b206f6620616e796f6e652077686f206d696768742073656520796f752e20596f752063616e206d6f766520757020746f206f6e652d68616c6620796f7572206e6f726d616c20737065656420616e642068696465206174206e6f2070656e616c74792e205768656e206d6f76696e6720617420612073706565642067726561746572207468616e206f6e652d68616c6620627574206c657373207468616e20796f7572206e6f726d616c2073706565642c20796f752074616b652061202d352070656e616c74792e204974732070726163746963616c6c7920696d706f737369626c6520282d32302070656e616c74792920746f2068696465207768696c652061747461636b696e672c2072756e6e696e67206f72206368617267696e672e596f752063616e20757365207468697320736b696c6c20746f20726561642061207370656c6c206f7220746f2061637469766174652061206d61676963206974656d2e20557365204d6167696320446576696365206c65747320796f75207573652061206d61676963206974656d20617320696620796f752068616420746865207370656c6c206162696c697479206f7220636c617373206665617475726573206f6620616e6f7468657220636c6173732c20617320696620796f752077657265206120646966666572656e7420726163652c206f7220617320696620796f752077657265206f66206120646966666572656e7420616c69676e6d656e742e20596f75206d616b65206120557365204d616769632044657669636520636865636b20656163682074696d6520796f75206163746976617465206120646576696365207375636820617320612077616e642e20496620796f7520617265207573696e672074686520636865636b20746f20656d756c61746520616e20616c69676e6d656e74206f7220736f6d65206f74686572207175616c69747920696e20616e206f6e676f696e67206d616e6e65722c20796f75206e65656420746f206d616b65207468652072656c6576616e7420557365204d616769632044657669636520636865636b206f6e63652070657220686f75722e54686973207461736b20696e766f6c76657320636f6d6d616e64696e6720616e20616e696d616c20746f20706572666f726d2061207461736b206f7220747269636b2074686174206974206b6e6f77732e2049662074686520616e696d616c20697320776f756e646564206f72206861732074616b656e20616e79206e6f6e6c657468616c2064616d616765206f72206162696c6974792073636f72652064616d6167652c2074686520444320696e6372656173657320627920322e20496620796f757220636865636b2073756363656564732c2074686520616e696d616c20706572666f726d7320746865207461736b206f7220747269636b206f6e20697473206e65787420616374696f6e2e4e6f6e652e204d616b696e67206120436f6e63656e74726174696f6e20636865636b20646f65736e742074616b6520616e20616374696f6e3b206974206973206569746865722061206672656520616374696f6e20287768656e20617474656d707465642072656163746976656c7929206f722070617274206f6620616e6f7468657220616374696f6e20287768656e20617474656d70746564206163746976656c79292e557375616c6c79206e6f6e652e20496e206d6f73742063617365732c206d616b696e672061204b6e6f776c6564676520636865636b20646f65736e742074616b6520616e20616374696f6e2d796f752073696d706c79206b6e6f772074686520616e73776572206f7220796f7520646f6e742e4120444320313020536c6569676874206f662048616e6420636865636b206c65747320796f752070616c6d206120636f696e2d73697a65642c20756e617474656e646564206f626a6563742e20506572666f726d696e672061206d696e6f722066656174206f66206c6567657264656d61696e2c2073756368206173206d616b696e67206120636f696e206469736170706561722c20616c736f206861732061204443206f6620313020756e6c65737320616e206f627365727665722069732064657465726d696e656420746f206e6f746520776865726520746865206974656d2077656e742e4d616b696e6720616e204573636170652041727469737420636865636b20746f206573636170652066726f6d20726f70652062696e64696e67732c206d616e61636c65732c206f72206f7468657220726573747261696e7473202865786365707420612067726170706c6572292072657175697265732031206d696e757465206f6620776f726b2e204573636170696e672066726f6d2061206e6574206f7220616e20616e696d61746520726f70652c20636f6d6d616e6420706c616e74732c20636f6e74726f6c20706c616e74732c206f7220656e74616e676c65207370656c6c20697320612066756c6c2d726f756e6420616374696f6e2e204573636170696e672066726f6d20612067726170706c65206f722070696e2069732061207374616e6461726420616374696f6e2e2053717565657a696e67207468726f75676820612074696768742073706163652074616b6573206174206c656173742031206d696e7574652c206d61796265206c6f6e6765722c20646570656e64696e67206f6e20686f77206c6f6e67207468652073706163652069732e4368616e67696e67206f7468657273206174746974756465732077697468204469706c6f6d6163792067656e6572616c6c792074616b6573206174206c6561737420312066756c6c206d696e7574652028313020636f6e73656375746976652066756c6c2d726f756e6420616374696f6e73292e20496e20736f6d6520736974756174696f6e732c20746869732074696d6520726571756972656d656e74206d61792067726561746c7920696e6372656173652e204120727573686564204469706c6f6d61637920636865636b2063616e206265206d61646520617320612066756c6c2d726f756e6420616374696f6e2c2062757420796f752074616b652061202d31302070656e616c7479206f6e2074686520636865636b2e4e6f6e652e2041204d6f76652053696c656e746c7920636865636b20697320696e636c7564656420696e20796f7572206d6f76656d656e74206f72206f746865722061637469766974792c20736f2069742069732070617274206f6620616e6f7468657220616374696f6e2e466f7267696e67206120766572792073686f727420616e642073696d706c6520646f63756d656e742074616b65732061626f75742031206d696e7574652e2041206c6f6e676572206f72206d6f726520636f6d706c657820646f63756d656e742074616b657320316434206d696e757465732070657220706167652ea26469706673582212207ed5a4b713919acdb2c37348310d051c8ff7dfe38c92c0b9dd83985fd1816a9364736f6c63430008070033

Deployed ByteCode Sourcemap

59:36921:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;24867:624;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;;;;;;;;16928:809;;;:::i;30189:513::-;;;:::i;26988:739::-;;;:::i;13999:1271::-;;;:::i;9830:1148::-;;;:::i;15278:840::-;;;:::i;3322:925::-;;;:::i;6923:1160::-;;;:::i;81:39::-;;;;;;;;;;;;;;;-1:-1:-1;;;81:39:0;;;;;;;;;;;;:::i;28459:830::-;;;:::i;172:2653::-;;;;;;:::i;:::-;;:::i;34838:1094::-;;;:::i;33139:895::-;;;:::i;23750:1109::-;;;:::i;11966:930::-;;;:::i;12904:1087::-;;;:::i;31333:1033::-;;;:::i;21549:1115::-;;;:::i;29297:884::-;;;:::i;30710:615::-;;;:::i;8091:899::-;;;:::i;27735:716::-;;;:::i;5125:842::-;;;:::i;20067:1474::-;;;:::i;34042:788::-;;;:::i;5975:940::-;;;:::i;25499:638::-;;;:::i;17745:896::-;;;:::i;18649:1410::-;;;:::i;4255:862::-;;;:::i;26145:835::-;;;:::i;127:36::-;;;;;;;;;;;;;;;-1:-1:-1;;;127:36:0;;;;;22672:1070;;;:::i;35940:1037::-;;;:::i;32374:757::-;;;:::i;10986:972::-;;;:::i;8998:824::-;;;:::i;2837:477::-;;;;;;:::i;:::-;;:::i;16126:794::-;;;:::i;24867:624::-;25160:18;;;;;;;;;;;-1:-1:-1;;;25160:18:0;;;;;;;;25299:124;;;;;;;;;;;;25147:2;;25204:1;;24919:7;;25246:4;;24919:7;;24937:18;;;;25299:124;;;;;;;;25434:49;;;;;;;;;;;;;;;;;;;24867:624;;;;;;;;:::o;16928:809::-;17216:13;;;;;;;;;;;-1:-1:-1;;;17216:13:0;;;;;;;;17350:278;;;;;;;;;;;;17203:2;;17255:1;;16975:7;;17297:4;;16975:7;;16993:18;;;;17350:278;;;;;;;;17639:90;;;;;;;;;;;;;;;;;;;16928:809;;;;;;;;:::o;30189:513::-;30487:23;;;;;;;;;;;-1:-1:-1;;;30487:23:0;;;;;;;;30632:25;;;;;;;;;;;-1:-1:-1;;;30632:25:0;;;;;;30668:26;;;;;;;;;;;;;;;;;;30474:2;;30487:23;;30246:7;;;;;;;;30189:513::o;26988:739::-;27276:13;;;;;;;;;;;-1:-1:-1;;;27276:13:0;;;;;;;;27428:127;;;;;;;;;;;;27263:2;;27315:1;;27337:2;;27375:4;;27035:7;;27053:18;;;;27428:127;;;;;;;;27566:153;;;;;;;;;;;;;;;;;;;26988:739;;;;;;;;:::o;13999:1271::-;14290:16;;;;;;;;;;;-1:-1:-1;;;14290:16:0;;;;;;;;14428:688;;;;;;;;;;;;14277:2;;14332:1;;14049:7;;;;;;14067:18;;;;14428:688;;;;;;;;15127:135;;;;;;;;;;;;;;;;;;;13999:1271;;;;;;;;:::o;9830:1148::-;10122:18;;;;;;;;;;;-1:-1:-1;;;10122:18:0;;;;;;;;10271:395;;;;;;;;;;;;10110:1;;10166;;10188;;9882:7;;;;9900:18;;;;10271:395;;;;;;;;10677:293;;;;;;;;;;;;;;;;;;;9830:1148;;;;;;;;:::o;15278:840::-;15580:27;;;;;;;;;;;-1:-1:-1;;;15580:27:0;;;;;;;;15728:307;;;;;;;;;;;;15567:2;;15633:1;;15339:7;;15675:4;;15339:7;;15357:18;;;;15728:307;;;;;;;;16046:64;;;;;;;;;;;;;;;;;;;15278:840;;;;;;;;:::o;3322:925::-;3613:17;;;;;;;;;;;-1:-1:-1;;;3613:17:0;;;;;;;;3761:385;;;;;;;;;;;;3601:1;;3656;;3678;;3373:7;;;;3391:18;;;;3761:385;;;;;;;;4157:82;;;;;;;;;;;;;;;;;;;3322:925;;;;;;;;:::o;6923:1160::-;7219:22;;;;;;;;;;;-1:-1:-1;;;7219:22:0;;;;;;;;7362:526;;;;;;;;;;;;7207:1;;7267;;6979:7;;7309:4;;6979:7;;6997:18;;;;7362:526;;;;;;;;7899:176;;;;;;;;;;;;;;;;;;;6923:1160;;;;;;;;:::o;28459:830::-;28755:21;;;;;;;;;;;-1:-1:-1;;;28755:21:0;;;;;;;;28898:198;;;;;;;;;;;;28742:2;;28802:1;;28514:7;;;;;;28532:18;;;;28898:198;;;;;;;;29107:174;;;;;;;;;;;;;;;;;;;28459:830;;;;;;;;:::o;172:2653::-;235:7;253:18;282:17;310:12;333:10;354:24;389:19;419:20;462:3;469:1;462:8;458:2360;;;494:10;:8;:10::i;:::-;487:17;;;;;;;;;;;;;;;;;;458:2360;526:3;533:1;526:8;522:2296;;;558:9;:7;:9::i;522:2296::-;589:3;596:1;589:8;585:2233;;;621:7;:5;:7::i;585:2233::-;650:3;657:1;650:8;646:2172;;;682:7;:5;:7::i;646:2172::-;711:3;718:1;711:8;707:2111;;;743:15;:13;:15::i;707:2111::-;780:3;787:1;780:8;776:2042;;;812:7;:5;:7::i;776:2042::-;841:3;848:1;841:8;837:1981;;;873:17;:15;:17::i;837:1981::-;912:3;919:1;912:8;908:1910;;;944:11;:9;:11::i;908:1910::-;977:3;984:1;977:8;973:1845;;;1009:16;:14;:16::i;973:1845::-;1047:3;1054:2;1047:9;1043:1775;;;1080:10;:8;:10::i;1043:1775::-;1112:3;1119:2;1112:9;1108:1710;;;1145:15;:13;:15::i;1108:1710::-;1182:3;1189:2;1182:9;1178:1640;;;1215:9;:7;:9::i;1178:1640::-;1246:3;1253:2;1246:9;1242:1576;;;1279:20;:18;:20::i;1242:1576::-;1321:3;1328:2;1321:9;1317:1501;;;1354:15;:13;:15::i;1317:1501::-;1391:3;1398:2;1391:9;1387:1431;;;1424:6;:4;:6::i;1387:1431::-;1452:3;1459:2;1452:9;1448:1370;;;1485:6;:4;:6::i;1448:1370::-;1513:3;1520:2;1513:9;1509:1309;;;1546:12;:10;:12::i;1509:1309::-;1580:3;1587:2;1580:9;1576:1242;;;1613:6;:4;:6::i;1576:1242::-;1641:3;1648:2;1641:9;1637:1181;;;1674:11;:9;:11::i;1637:1181::-;1707:3;1714:2;1707:9;1703:1115;;;1740:8;:6;:8::i;1703:1115::-;1770:3;1777:2;1770:9;1766:1052;;;1803:15;:13;:15::i;1766:1052::-;1840:3;1847:2;1840:9;1836:982;;;1873:11;:9;:11::i;1836:982::-;1906:3;1913:2;1906:9;1902:916;;;1939:9;:7;:9::i;1902:916::-;1970:3;1977:2;1970:9;1966:852;;;2003:12;:10;:12::i;1966:852::-;2037:3;2044:2;2037:9;2033:785;;;2070:6;:4;:6::i;2033:785::-;2098:3;2105:2;2098:9;2094:724;;;2131:8;:6;:8::i;2094:724::-;2161:3;2168:2;2161:9;2157:661;;;2194:14;:12;:14::i;2157:661::-;2230:3;2237:2;2230:9;2226:592;;;2263:17;:15;:17::i;2226:592::-;2302:3;2309:2;2302:9;2298:520;;;2335:16;:14;:16::i;2298:520::-;2373:3;2380:2;2373:9;2369:449;;;2406:12;:10;:12::i;2369:449::-;2440:3;2447:2;2440:9;2436:382;;;2473:6;:4;:6::i;2436:382::-;2501:3;2508:2;2501:9;2497:321;;;2534:10;:8;:10::i;2497:321::-;2566:3;2573:2;2566:9;2562:256;;;2599:6;:4;:6::i;2562:256::-;2627:3;2634:2;2627:9;2623:195;;;2660:8;:6;:8::i;2623:195::-;2690:3;2697:2;2690:9;2686:132;;;2723:18;:16;:18::i;2686:132::-;2763:3;2770:2;2763:9;2759:59;;;2796:10;:8;:10::i;2759:59::-;172:2653;;;;;;;;;:::o;34838:1094::-;35138:25;;;;;;;;;;;-1:-1:-1;;;35138:25:0;;;;;;;;35284:510;;;;;;;;;;;;35125:2;;35189:1;;34897:7;;35231:4;;34897:7;;34915:18;;;;35284:510;;;;;;;;35805:119;;;;;;;;;;;;;;;;;;;34838:1094;;;;;;;;:::o;33139:895::-;33427:13;;;;;;;;;;;-1:-1:-1;;;33427:13:0;;;;;;;;33561:311;;;;;;;;;;;;33414:2;;33466:1;;33186:7;;;;33466:1;;33204:18;;;;33561:311;;;;;;;;33883:143;;;;;;;;;;;;;;;;;;;33139:895;;;;;;;;:::o;23750:1109::-;24047:22;;;;;;;;;;;-1:-1:-1;;;24047:22:0;;;;;;;;24189:532;;;;;;;;;;;;24034:2;;24095:1;;23806:7;;24137:4;;;;23824:18;;;;24189:532;;;;;;;;24732:119;;;;;;;;;;;;;;;;;;;23750:1109;;;;;;;;:::o;11966:930::-;12258:17;;;;;;;;;;;-1:-1:-1;;;12258:17:0;;;;;;;;12405:409;;;;;;;;;;;;12245:2;;12301:1;;12323;;12352:4;;12017:7;;12035:18;;;;12405:409;;;;;;;;12825:63;;;;;;;;;;;;;;;;;;;11966:930;;;;;;;;:::o;12904:1087::-;13201:22;;;;;;;;;;;-1:-1:-1;;;13201:22:0;;;;;;;;13356:195;;;;;;;;;;;;13188:2;;13249:1;;13271:2;;13304:4;;;;12978:18;;;;13356:195;;;;;;;;13562:421;;;;;;;;;;;;;;;;;;;12904:1087;;;;;;;;:::o;31333:1033::-;31621:13;;;;;;;;;;;-1:-1:-1;;;31621:13:0;;;;;;;;31756:454;;;;;;;;;;;;31608:2;;31660:1;;31380:7;;;;;;31398:18;;;;31756:454;;;;;;;;32221:137;;;;;;;;;;;;;;;;;;;31333:1033;;;;;;;;:::o;21549:1115::-;21842:18;;;;;;;;;;;-1:-1:-1;;;21842:18:0;;;;;;;;21982:537;;;;;;;;;;;;21829:2;;21886:1;;21601:7;;;;;;21619:18;;;;21982:537;;;;;;;;22530:126;;;;;;;;;;;;;;;;;;;21549:1115;;;;;;;;:::o;29297:884::-;29596:24;;;;;;;;;;;-1:-1:-1;;;29596:24:0;;;;;;;;29750:241;;;;;;;;;;;;29583:2;;29646:1;;29668;;29355:7;;29735:4;;29373:18;;;;29750:241;;;;;;;;30002:171;;;;;;;;;;;;;;;;;;;29297:884;;;;;;;;:::o;30710:615::-;31004:19;;;;;;;;;;;-1:-1:-1;;;31004:19:0;;;;;;;;31145:143;;;;;;;;;;;;30991:2;;31049:1;;30763:7;;;;;;30781:18;;;;31145:143;;;;;;;;31299:18;;;;;;;;;;;;;-1:-1:-1;;;31299:18:0;;;;;30710:615;;;;;;;;:::o;8091:899::-;8379:14;;;;;;;;;;;-1:-1:-1;;;8379:14:0;;;;;;;;8514:377;;;;;;;;;;;;8367:1;;8419;;8139:7;;8461:4;;8139:7;;8157:18;;;;8514:377;;;;;;;;8902:80;;;;;;;;;;;;;;;;;;;8091:899;;;;;;;;:::o;27735:716::-;28025:15;;;;;;;;;;;-1:-1:-1;;;28025:15:0;;;;;;;;28161:159;;;;;;;;;;;;28012:2;;28066:1;;27784:7;;28108:4;;27784:7;;27802:18;;;;28161:159;;;;;;;;28331:112;;;;;;;;;;;;;;;;;;;27735:716;;;;;;;;:::o;5125:842::-;5413:14;;;;;;;;;;;-1:-1:-1;;;5413:14:0;;;;;;;;5548:203;;;;;;;;;;;;5401:1;;5453;;5173:7;;5495:4;;5173:7;;5191:18;;;;5548:203;;;;;;;;5762:197;;;;;;;;;;;;;;;;;;;5125:842;;;;;;;;:::o;20067:1474::-;20355:13;;;;;;;;;;;-1:-1:-1;;;20355:13:0;;;;;;;;20499:932;;;;;;;;;;;;20342:2;;20394:1;;20416:2;;20394:1;;;;20132:18;;;;20499:932;;;;;;;;21442:91;;;;;;;;;;;;;;;;;;;20067:1474;;;;;;;;:::o;34042:788::-;34332:15;;;;;;;;;;;-1:-1:-1;;;34332:15:0;;;;;;;;34477:234;;;;;;;;;;;;34319:2;;34373:1;;34395:2;;34091:7;;34462:4;;34109:18;;;;34477:234;;;;;;;;34722:100;;;;;;;;;;;;;;;;;;;34042:788;;;;;;;;:::o;5975:940::-;6263:14;;;;;;;;;;;-1:-1:-1;;;6263:14:0;;;;;;;;6410:338;;;;;;;;;;;;6251:1;;6303;;6325:2;;6303:1;;;;6041:18;;;;6410:338;;;;;;;;6759:148;;;;;;;;;;;;;;;;;;;5975:940;;;;;;;;:::o;25499:638::-;25790:16;;;;;;;;;;;-1:-1:-1;;;25790:16:0;;;;;;;;25927:63;;25567:18;25927:63;;;;;;;;;;25777:2;;25832:1;;25549:7;;25874:4;;25549:7;;25567:18;;;25927:63;;;;;;;;;26001:128;;;;;;;;;;;;;;;;;;;25499:638;;;;;;;;:::o;17745:896::-;18033:13;;;;;;;;;;;-1:-1:-1;;;18033:13:0;;;;;;;;18167:341;;;;;;;;;;;;18020:2;;18072:1;;17792:7;;;;18152:4;;17810:18;;;;18167:341;;;;;;;;18519:114;;;;;;;;;;;;;;;;;;;17745:896;;;;;;;;:::o;18649:1410::-;18943:19;;;;;;;;;;;-1:-1:-1;;;18943:19:0;;;;;;;;19092:812;;;;;;;;;;;;18930:2;;18988:1;;19010;;19039:4;;18702:7;;18720:18;;;;19092:812;;;;;;;;19915:136;;;;;;;;;;;;;;;;;;;18649:1410;;;;;;;;:::o;4255:862::-;4545:16;;;;;;;;;;;-1:-1:-1;;;4545:16:0;;;;;;;;4693:277;;;;;;;;;;;;4533:1;;;;4609:2;;4305:7;;4678:4;;4323:18;;;;4693:277;;;;;;;;4981:128;;;;;;;;;;;;;;;;;;;4255:862;;;;;;;;:::o;26145:835::-;26439:19;;;;;;;;;;;-1:-1:-1;;;26439:19:0;;;;;;;;26579:304;;;;;;;;;;;;26426:2;;26484:1;;26198:7;;26526:4;;26198:7;;26216:18;;;;26579:304;;;;;;;;26894:78;;;;;;;;;;;;;;;;;;;26145:835;;;;;;;;:::o;22672:1070::-;22962:15;;;;;;;;;;;-1:-1:-1;;;22962:15:0;;;;;;;;23098:347;;;;;;;;;;;;22949:2;;23003:1;;22721:7;;23045:4;;22721:7;;22739:18;;;;23098:347;;;;;;;;23456:278;;;;;;;;;;;;;;;;;;;22672:1070;;;;;;;;:::o;35940:1037::-;36232:17;;;;;;;;;;;-1:-1:-1;;;36232:17:0;;;;;;;;36370:483;;;;;;;;;;;;36219:2;;36275:1;;35991:7;;36317:4;;35991:7;;36009:18;;;;36370:483;;;;;;;;36864:105;;;;;;;;;;;;;;;;;;;35940:1037;;;;;;;;:::o;32374:757::-;32666:17;;;;;;;;;;;-1:-1:-1;;;32653:2:0;32666:17;;;;;;;32805:146;;;;;;;;;;;;32653:2;;32709:1;;32425:7;;;;;;32443:18;;;;32805:146;;;;;;;;32962:161;;;;;;;;;;;;;;;;;;;32374:757;;;;;;;;:::o;10986:972::-;11283:23;;;;;;;;;;;-1:-1:-1;;;11283:23:0;;;;;;;;11428:280;;;;;;;;;;;;11271:1;;11332;;11043:7;;;;;;11061:18;;;;11428:280;;;;;;;;11719:231;;;;;;;;;;;;;;;;;;;10986:972;;;;;;;;:::o;8998:824::-;9296:24;;;;;;;;;;;-1:-1:-1;;;9296:24:0;;;;;;;;9442:244;;;;;;;;;;;;9284:1;;9346;;9056:7;;;;;;9074:18;;;;9442:244;;;;;;;;9697:117;;;;;;;;;;;;;;;;;;;8998:824;;;;;;;;:::o;2837:477::-;2892:23;2932:2;2938:1;2932:7;2928:379;;;-1:-1:-1;;2956:17:0;;;;;;;;;;;;-1:-1:-1;;;2956:17:0;;;;;2837:477::o;2928:379::-;2995:2;3001:1;2995:7;2991:316;;;-1:-1:-1;;3019:18:0;;;;;;;;;;;;-1:-1:-1;;;3019:18:0;;;;;2837:477::o;2991:316::-;3059:2;3065:1;3059:7;3055:252;;;-1:-1:-1;;3083:21:0;;;;;;;;;;;;-1:-1:-1;;;3083:21:0;;;;;2837:477::o;3055:252::-;3126:2;3132:1;3126:7;3122:185;;;-1:-1:-1;;3150:21:0;;;;;;;;;;;;-1:-1:-1;;;3150:21:0;;;;;2837:477::o;3122:185::-;3193:2;3199:1;3193:7;3189:118;;;-1:-1:-1;;3217:15:0;;;;;;;;;;;;-1:-1:-1;;;3217:15:0;;;;;2837:477::o;3189:118::-;3254:2;3260:1;3254:7;3250:57;;;-1:-1:-1;;3278:17:0;;;;;;;;;;;;-1:-1:-1;;;3278:17:0;;;;;2837:477::o;3250:57::-;2837:477;;;:::o;16126:794::-;16423:22;;;;;;;;;;;-1:-1:-1;;;16423:22:0;;;;;;;;16566:280;;;;;;;;;;;;16410:2;;16471:1;;16182:7;;16513:4;;16182:7;;16200:18;;;;16566:280;;;;;;;;16857:55;;;;;;;;;;;;;;;;;;;16126:794;;;;;;;;:::o;14:180:1:-;73:6;126:2;114:9;105:7;101:23;97:32;94:52;;;142:1;139;132:12;94:52;-1:-1:-1;165:23:1;;14:180;-1:-1:-1;14:180:1:o;199:472::-;241:3;279:5;273:12;306:6;301:3;294:19;331:1;341:162;355:6;352:1;349:13;341:162;;;417:4;473:13;;;469:22;;463:29;445:11;;;441:20;;434:59;370:12;341:162;;;521:6;518:1;515:13;512:87;;;587:1;580:4;571:6;566:3;562:16;558:27;551:38;512:87;-1:-1:-1;653:2:1;632:15;-1:-1:-1;;628:29:1;619:39;;;;660:4;615:50;;199:472;-1:-1:-1;;199:472:1:o;676:220::-;825:2;814:9;807:21;788:4;845:45;886:2;875:9;871:18;863:6;845:45;:::i;:::-;837:53;676:220;-1:-1:-1;;;676:220:1:o;901:947::-;1237:4;1266:3;1296:6;1285:9;1278:25;1339:2;1334;1323:9;1319:18;1312:30;1365:45;1406:2;1395:9;1391:18;1383:6;1365:45;:::i;:::-;1351:59;;1446:6;1441:2;1430:9;1426:18;1419:34;1489:6;1484:2;1473:9;1469:18;1462:34;1547:6;1540:14;1533:22;1527:3;1516:9;1512:19;1505:51;1607:6;1600:14;1593:22;1587:3;1576:9;1572:19;1565:51;1665:9;1657:6;1653:22;1647:3;1636:9;1632:19;1625:51;1699:33;1725:6;1717;1699:33;:::i;:::-;1685:47;;1781:9;1773:6;1769:22;1763:3;1752:9;1748:19;1741:51;1809:33;1835:6;1827;1809:33;:::i;:::-;1801:41;901:947;-1:-1:-1;;;;;;;;;;;901:947:1:o

Swarm Source

ipfs://7ed5a4b713919acdb2c37348310d051c8ff7dfe38c92c0b9dd83985fd1816a93
Block Transaction Gas Used Reward
Age Block Fee Address BC Fee Address Voting Power Jailed Incoming
Validator ID :
0 FTM

Amount Staked
0

Amount Delegated
0

Staking Total
0

Staking Start Epoch
0

Staking Start Time
0

Proof of Importance
0

Origination Score
0

Validation Score
0

Active
0

Online
0

Downtime
0 s
Address Amount claimed Rewards Created On Epoch Created On
Block Uncle Number Difficulty Gas Used Reward
Loading
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.