'use strict'
Object.defineProperty(exports, '__esModule', { value: true })
const contract = require('@truffle/contract')
const VRFD20 = contract({
 "contractName": "VRFD20",
 "abi": [
  {
   "inputs": [
    {
     "internalType": "address",
     "name": "vrfCoordinator",
     "type": "address"
    },
    {
     "internalType": "address",
     "name": "link",
     "type": "address"
    },
    {
     "internalType": "bytes32",
     "name": "keyHash",
     "type": "bytes32"
    },
    {
     "internalType": "uint256",
     "name": "fee",
     "type": "uint256"
    }
   ],
   "stateMutability": "nonpayable",
   "type": "constructor"
  },
  {
   "anonymous": false,
   "inputs": [
    {
     "indexed": true,
     "internalType": "bytes32",
     "name": "requestId",
     "type": "bytes32"
    },
    {
     "indexed": true,
     "internalType": "uint256",
     "name": "result",
     "type": "uint256"
    }
   ],
   "name": "DiceLanded",
   "type": "event"
  },
  {
   "anonymous": false,
   "inputs": [
    {
     "indexed": true,
     "internalType": "bytes32",
     "name": "requestId",
     "type": "bytes32"
    },
    {
     "indexed": true,
     "internalType": "address",
     "name": "roller",
     "type": "address"
    }
   ],
   "name": "DiceRolled",
   "type": "event"
  },
  {
   "anonymous": false,
   "inputs": [
    {
     "indexed": true,
     "internalType": "address",
     "name": "from",
     "type": "address"
    },
    {
     "indexed": true,
     "internalType": "address",
     "name": "to",
     "type": "address"
    }
   ],
   "name": "OwnershipTransferRequested",
   "type": "event"
  },
  {
   "anonymous": false,
   "inputs": [
    {
     "indexed": true,
     "internalType": "address",
     "name": "from",
     "type": "address"
    },
    {
     "indexed": true,
     "internalType": "address",
     "name": "to",
     "type": "address"
    }
   ],
   "name": "OwnershipTransferred",
   "type": "event"
  },
  {
   "inputs": [],
   "name": "acceptOwnership",
   "outputs": [],
   "stateMutability": "nonpayable",
   "type": "function"
  },
  {
   "inputs": [],
   "name": "fee",
   "outputs": [
    {
     "internalType": "uint256",
     "name": "",
     "type": "uint256"
    }
   ],
   "stateMutability": "view",
   "type": "function"
  },
  {
   "inputs": [
    {
     "internalType": "address",
     "name": "player",
     "type": "address"
    }
   ],
   "name": "house",
   "outputs": [
    {
     "internalType": "string",
     "name": "",
     "type": "string"
    }
   ],
   "stateMutability": "view",
   "type": "function"
  },
  {
   "inputs": [],
   "name": "keyHash",
   "outputs": [
    {
     "internalType": "bytes32",
     "name": "",
     "type": "bytes32"
    }
   ],
   "stateMutability": "view",
   "type": "function"
  },
  {
   "inputs": [],
   "name": "owner",
   "outputs": [
    {
     "internalType": "address",
     "name": "",
     "type": "address"
    }
   ],
   "stateMutability": "view",
   "type": "function"
  },
  {
   "inputs": [
    {
     "internalType": "bytes32",
     "name": "requestId",
     "type": "bytes32"
    },
    {
     "internalType": "uint256",
     "name": "randomness",
     "type": "uint256"
    }
   ],
   "name": "rawFulfillRandomness",
   "outputs": [],
   "stateMutability": "nonpayable",
   "type": "function"
  },
  {
   "inputs": [
    {
     "internalType": "uint256",
     "name": "userProvidedSeed",
     "type": "uint256"
    },
    {
     "internalType": "address",
     "name": "roller",
     "type": "address"
    }
   ],
   "name": "rollDice",
   "outputs": [
    {
     "internalType": "bytes32",
     "name": "requestId",
     "type": "bytes32"
    }
   ],
   "stateMutability": "nonpayable",
   "type": "function"
  },
  {
   "inputs": [
    {
     "internalType": "uint256",
     "name": "fee",
     "type": "uint256"
    }
   ],
   "name": "setFee",
   "outputs": [],
   "stateMutability": "nonpayable",
   "type": "function"
  },
  {
   "inputs": [
    {
     "internalType": "bytes32",
     "name": "keyHash",
     "type": "bytes32"
    }
   ],
   "name": "setKeyHash",
   "outputs": [],
   "stateMutability": "nonpayable",
   "type": "function"
  },
  {
   "inputs": [
    {
     "internalType": "address",
     "name": "_to",
     "type": "address"
    }
   ],
   "name": "transferOwnership",
   "outputs": [],
   "stateMutability": "nonpayable",
   "type": "function"
  },
  {
   "inputs": [
    {
     "internalType": "address",
     "name": "to",
     "type": "address"
    },
    {
     "internalType": "uint256",
     "name": "value",
     "type": "uint256"
    }
   ],
   "name": "withdrawLINK",
   "outputs": [],
   "stateMutability": "nonpayable",
   "type": "function"
  }
 ],
 "evm": {
  "bytecode": {
   "linkReferences": {},
   "object": " ",
   "opcodes": "PUSH1 0xC0 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x40 MLOAD PUSH2 0x16D7 CODESIZE SUB DUP1 PUSH2 0x16D7 DUP4 CODECOPY DUP2 DUP2 ADD PUSH1 0x40 MSTORE PUSH1 0x80 DUP2 LT ISZERO PUSH2 0x33 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP DUP1 MLOAD PUSH1 0x20 DUP3 ADD MLOAD PUSH1 0x40 DUP4 ADD MLOAD PUSH1 0x60 SWAP4 DUP5 ADD MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x60 SHL SUB NOT SWAP4 DUP6 SHL DUP5 AND PUSH1 0xA0 MSTORE SWAP2 SWAP1 SWAP4 SHL SWAP1 SWAP2 AND PUSH1 0x80 MSTORE PUSH1 0x1 DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND CALLER OR SWAP1 SSTORE PUSH1 0x3 SWAP2 SWAP1 SWAP2 SSTORE PUSH1 0x4 SSTORE PUSH1 0x80 MLOAD PUSH1 0x60 SHR PUSH1 0xA0 MLOAD PUSH1 0x60 SHR PUSH2 0x1623 PUSH2 0xB4 PUSH1 0x0 CODECOPY DUP1 PUSH2 0x794 MSTORE DUP1 PUSH2 0xD1E MSTORE POP DUP1 PUSH2 0x363 MSTORE DUP1 PUSH2 0x8B6 MSTORE DUP1 PUSH2 0xCE2 MSTORE POP PUSH2 0x1623 PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0xC9 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x94985DDD GT PUSH2 0x81 JUMPI DUP1 PUSH4 0xB1CAD5E3 GT PUSH2 0x5B JUMPI DUP1 PUSH4 0xB1CAD5E3 EQ PUSH2 0x1F2 JUMPI DUP1 PUSH4 0xDDCA3F43 EQ PUSH2 0x29A JUMPI DUP1 PUSH4 0xF2FDE38B EQ PUSH2 0x2A2 JUMPI PUSH2 0xC9 JUMP JUMPDEST DUP1 PUSH4 0x94985DDD EQ PUSH2 0x179 JUMPI DUP1 PUSH4 0x983FBAB2 EQ PUSH2 0x19C JUMPI DUP1 PUSH4 0x98544710 EQ PUSH2 0x1D5 JUMPI PUSH2 0xC9 JUMP JUMPDEST DUP1 PUSH4 0x69FE0E2D GT PUSH2 0xB2 JUMPI DUP1 PUSH4 0x69FE0E2D EQ PUSH2 0x121 JUMPI DUP1 PUSH4 0x79BA5097 EQ PUSH2 0x140 JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x148 JUMPI PUSH2 0xC9 JUMP JUMPDEST DUP1 PUSH4 0x5E816740 EQ PUSH2 0xCE JUMPI DUP1 PUSH4 0x61728F39 EQ PUSH2 0x119 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x107 PUSH1 0x4 DUP1 CALLDATASIZE SUB PUSH1 0x40 DUP2 LT ISZERO PUSH2 0xE4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP DUP1 CALLDATALOAD SWAP1 PUSH1 0x20 ADD CALLDATALOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x2D5 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD SWAP2 DUP3 MSTORE MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x20 ADD SWAP1 RETURN JUMPDEST PUSH2 0x107 PUSH2 0x5C9 JUMP JUMPDEST PUSH2 0x13E PUSH1 0x4 DUP1 CALLDATASIZE SUB PUSH1 0x20 DUP2 LT ISZERO PUSH2 0x137 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP CALLDATALOAD PUSH2 0x5CF JUMP JUMPDEST STOP JUMPDEST PUSH2 0x13E PUSH2 0x65A JUMP JUMPDEST PUSH2 0x150 PUSH2 0x760 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP3 AND DUP3 MSTORE MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x20 ADD SWAP1 RETURN JUMPDEST PUSH2 0x13E PUSH1 0x4 DUP1 CALLDATASIZE SUB PUSH1 0x40 DUP2 LT ISZERO PUSH2 0x18F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP DUP1 CALLDATALOAD SWAP1 PUSH1 0x20 ADD CALLDATALOAD PUSH2 0x77C JUMP JUMPDEST PUSH2 0x13E PUSH1 0x4 DUP1 CALLDATASIZE SUB PUSH1 0x40 DUP2 LT ISZERO PUSH2 0x1B2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 CALLDATALOAD AND SWAP1 PUSH1 0x20 ADD CALLDATALOAD PUSH2 0x82E JUMP JUMPDEST PUSH2 0x13E PUSH1 0x4 DUP1 CALLDATASIZE SUB PUSH1 0x20 DUP2 LT ISZERO PUSH2 0x1EB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP CALLDATALOAD PUSH2 0x9F2 JUMP JUMPDEST PUSH2 0x225 PUSH1 0x4 DUP1 CALLDATASIZE SUB PUSH1 0x20 DUP2 LT ISZERO PUSH2 0x208 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP CALLDATALOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0xA7D JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x20 DUP1 DUP3 MSTORE DUP4 MLOAD DUP2 DUP4 ADD MSTORE DUP4 MLOAD SWAP2 SWAP3 DUP4 SWAP3 SWAP1 DUP4 ADD SWAP2 DUP6 ADD SWAP1 DUP1 DUP4 DUP4 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x25F JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH2 0x247 JUMP JUMPDEST POP POP POP POP SWAP1 POP SWAP1 DUP2 ADD SWAP1 PUSH1 0x1F AND DUP1 ISZERO PUSH2 0x28C JUMPI DUP1 DUP3 SUB DUP1 MLOAD PUSH1 0x1 DUP4 PUSH1 0x20 SUB PUSH2 0x100 EXP SUB NOT AND DUP2 MSTORE PUSH1 0x20 ADD SWAP2 POP JUMPDEST POP SWAP3 POP POP POP PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x107 PUSH2 0xBDB JUMP JUMPDEST PUSH2 0x13E PUSH1 0x4 DUP1 CALLDATASIZE SUB PUSH1 0x20 DUP2 LT ISZERO PUSH2 0x2B8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP CALLDATALOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0xBE1 JUMP JUMPDEST PUSH1 0x1 SLOAD PUSH1 0x0 SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER EQ PUSH2 0x35E JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x16 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x4F6E6C792063616C6C61626C65206279206F776E657200000000000000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH1 0x4 SLOAD PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x70A08231 ADDRESS PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP2 POP POP PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3FE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x412 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x20 DUP2 LT ISZERO PUSH2 0x428 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP MLOAD LT ISZERO PUSH2 0x497 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x1A PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x4E6F7420656E6F756768204C494E4B20746F2070617920666565000000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x6 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD ISZERO PUSH2 0x529 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0xE PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x416C726561647920726F6C6C6564000000000000000000000000000000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH2 0x538 PUSH1 0x3 SLOAD PUSH1 0x4 SLOAD DUP6 PUSH2 0xCDE JUMP JUMPDEST PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x5 PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 DUP1 SLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFF0000000000000000000000000000000000000000 AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP9 AND SWAP1 DUP2 OR SWAP1 SWAP2 SSTORE DUP1 DUP5 MSTORE PUSH1 0x6 SWAP1 SWAP3 MSTORE DUP1 DUP4 KECCAK256 PUSH1 0x2A SWAP1 SSTORE MLOAD SWAP3 SWAP4 POP SWAP2 DUP4 SWAP2 PUSH32 0x923DE4FC4AECE24A78A9E4CA3009C571A742F81AC2C004A229224B0FD1883BDD SWAP2 LOG3 SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x3 SLOAD SWAP1 JUMP JUMPDEST PUSH1 0x1 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER EQ PUSH2 0x655 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x16 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x4F6E6C792063616C6C61626C65206279206F776E657200000000000000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH1 0x4 SSTORE JUMP JUMPDEST PUSH1 0x2 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER EQ PUSH2 0x6E0 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x16 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x4D7573742062652070726F706F736564206F776E657200000000000000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH1 0x1 DUP1 SLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFF0000000000000000000000000000000000000000 DUP1 DUP3 AND CALLER SWAP1 DUP2 OR SWAP1 SWAP4 SSTORE PUSH1 0x2 DUP1 SLOAD SWAP1 SWAP2 AND SWAP1 SSTORE PUSH1 0x40 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND SWAP2 SWAP1 DUP3 SWAP1 PUSH32 0x8BE0079C531659141344CD1FD0A4F28419497F9722A3DAAFE3B4186F6B6457E0 SWAP1 PUSH1 0x0 SWAP1 LOG3 POP JUMP JUMPDEST PUSH1 0x1 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND EQ PUSH2 0x820 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x1F PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x4F6E6C7920565246436F6F7264696E61746F722063616E2066756C66696C6C00 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH2 0x82A DUP3 DUP3 PUSH2 0xEC7 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x1 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER EQ PUSH2 0x8B4 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x16 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x4F6E6C792063616C6C61626C65206279206F776E657200000000000000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xA9059CBB DUP4 DUP4 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD DUP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP2 MSTORE PUSH1 0x20 ADD SWAP3 POP POP POP PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x95B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x96F JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x20 DUP2 LT ISZERO PUSH2 0x985 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP MLOAD PUSH2 0x82A JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0xF PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x4E6F7420656E6F756768204C494E4B0000000000000000000000000000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH1 0x1 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER EQ PUSH2 0xA78 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x16 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x4F6E6C792063616C6C61626C65206279206F776E657200000000000000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH1 0x3 SSTORE JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x6 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD PUSH1 0x60 SWAP1 PUSH2 0xB11 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0xF PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x44696365206E6F7420726F6C6C65640000000000000000000000000000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x6 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD PUSH1 0x2A EQ ISZERO PUSH2 0xBA6 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x10 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x526F6C6C20696E2070726F677265737300000000000000000000000000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x6 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD PUSH2 0xBD5 SWAP1 PUSH2 0xF50 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x4 SLOAD SWAP1 JUMP JUMPDEST PUSH1 0x1 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER EQ PUSH2 0xC67 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x16 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x4F6E6C792063616C6C61626C65206279206F776E657200000000000000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH1 0x2 DUP1 SLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFF0000000000000000000000000000000000000000 AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP4 DUP2 AND SWAP2 DUP3 OR SWAP1 SWAP3 SSTORE PUSH1 0x1 SLOAD PUSH1 0x40 MLOAD SWAP2 SWAP3 AND SWAP1 PUSH32 0xED8889F560326EB138920D842192F0EB3DD22B4F139C87A2C57538E05BAE1278 SWAP1 PUSH1 0x0 SWAP1 LOG3 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x4000AEA0 PUSH32 0x0 DUP6 DUP8 DUP7 PUSH1 0x40 MLOAD PUSH1 0x20 ADD DUP1 DUP4 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP2 MSTORE PUSH1 0x20 ADD SWAP3 POP POP POP PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH1 0x40 MLOAD DUP5 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD DUP1 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP2 MSTORE PUSH1 0x20 ADD DUP1 PUSH1 0x20 ADD DUP3 DUP2 SUB DUP3 MSTORE DUP4 DUP2 DUP2 MLOAD DUP2 MSTORE PUSH1 0x20 ADD SWAP2 POP DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 DUP1 DUP4 DUP4 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0xDEA JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH2 0xDD2 JUMP JUMPDEST POP POP POP POP SWAP1 POP SWAP1 DUP2 ADD SWAP1 PUSH1 0x1F AND DUP1 ISZERO PUSH2 0xE17 JUMPI DUP1 DUP3 SUB DUP1 MLOAD PUSH1 0x1 DUP4 PUSH1 0x20 SUB PUSH2 0x100 EXP SUB NOT AND DUP2 MSTORE PUSH1 0x20 ADD SWAP2 POP JUMPDEST POP SWAP5 POP POP POP POP POP PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xE38 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0xE4C JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x20 DUP2 LT ISZERO PUSH2 0xE62 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP POP PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 SLOAD PUSH2 0xE82 SWAP1 DUP7 SWAP1 DUP6 SWAP1 ADDRESS SWAP1 PUSH2 0x13D4 JUMP JUMPDEST PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD SWAP1 SWAP2 POP PUSH2 0xEA5 SWAP1 PUSH1 0x1 PUSH4 0xFFFFFFFF PUSH2 0x1428 AND JUMP JUMPDEST PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SSTORE PUSH2 0xEBE DUP6 DUP3 PUSH2 0x14A3 JUMP JUMPDEST SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xEEB PUSH1 0x1 PUSH2 0xEDF DUP5 PUSH1 0x14 PUSH4 0xFFFFFFFF PUSH2 0x14CF AND JUMP JUMPDEST SWAP1 PUSH4 0xFFFFFFFF PUSH2 0x1428 AND JUMP JUMPDEST PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x5 PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 MSTORE PUSH1 0x6 SWAP1 SWAP2 MSTORE DUP1 DUP3 KECCAK256 DUP4 SWAP1 SSTORE MLOAD SWAP2 SWAP3 POP DUP3 SWAP2 DUP6 SWAP2 PUSH32 0x909DD726737B7FFA4AE9D137E9EDEBE8A74A9C2910A4B60E8112F93AB2170837 SWAP2 LOG3 POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH2 0xF5A PUSH2 0x15C5 JUMP JUMPDEST POP PUSH1 0x40 DUP1 MLOAD PUSH2 0x2C0 DUP2 ADD DUP3 MSTORE PUSH1 0x9 PUSH2 0x280 DUP3 ADD DUP2 DUP2 MSTORE PUSH32 0x54617267617279656E0000000000000000000000000000000000000000000000 PUSH2 0x2A0 DUP5 ADD MSTORE DUP3 MSTORE DUP3 MLOAD DUP1 DUP5 ADD DUP5 MSTORE DUP2 DUP2 MSTORE PUSH32 0x4C616E6E69737465720000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP1 DUP5 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP4 MLOAD DUP1 DUP6 ADD DUP6 MSTORE PUSH1 0x5 DUP1 DUP3 MSTORE PUSH32 0x537461726B000000000000000000000000000000000000000000000000000000 DUP3 DUP5 ADD MSTORE DUP5 DUP7 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP5 MLOAD DUP1 DUP7 ADD DUP7 MSTORE PUSH1 0x6 DUP1 DUP3 MSTORE PUSH32 0x547972656C6C0000000000000000000000000000000000000000000000000000 DUP3 DUP6 ADD MSTORE PUSH1 0x60 DUP7 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP6 MLOAD DUP1 DUP8 ADD DUP8 MSTORE SWAP4 DUP5 MSTORE PUSH32 0x426172617468656F6E0000000000000000000000000000000000000000000000 DUP5 DUP5 ADD MSTORE PUSH1 0x80 DUP6 ADD SWAP4 SWAP1 SWAP4 MSTORE DUP5 MLOAD DUP1 DUP7 ADD DUP7 MSTORE PUSH1 0x7 DUP1 DUP3 MSTORE PUSH32 0x4D617274656C6C00000000000000000000000000000000000000000000000000 DUP3 DUP6 ADD MSTORE PUSH1 0xA0 DUP7 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP6 MLOAD DUP1 DUP8 ADD DUP8 MSTORE DUP3 DUP2 MSTORE PUSH32 0x54756C6C79000000000000000000000000000000000000000000000000000000 DUP2 DUP6 ADD MSTORE PUSH1 0xC0 DUP7 ADD MSTORE DUP6 MLOAD DUP1 DUP8 ADD DUP8 MSTORE DUP5 DUP2 MSTORE PUSH32 0x426F6C746F6E0000000000000000000000000000000000000000000000000000 DUP2 DUP6 ADD MSTORE PUSH1 0xE0 DUP7 ADD MSTORE DUP6 MLOAD DUP1 DUP8 ADD DUP8 MSTORE DUP2 DUP2 MSTORE PUSH32 0x477265796A6F7900000000000000000000000000000000000000000000000000 DUP2 DUP6 ADD MSTORE PUSH2 0x100 DUP7 ADD MSTORE DUP6 MLOAD DUP1 DUP8 ADD DUP8 MSTORE DUP3 DUP2 MSTORE PUSH32 0x417272796E000000000000000000000000000000000000000000000000000000 DUP2 DUP6 ADD MSTORE PUSH2 0x120 DUP7 ADD MSTORE DUP6 MLOAD DUP1 DUP8 ADD DUP8 MSTORE PUSH1 0x4 DUP2 MSTORE PUSH32 0x4672657900000000000000000000000000000000000000000000000000000000 DUP2 DUP6 ADD MSTORE PUSH2 0x140 DUP7 ADD MSTORE DUP6 MLOAD DUP1 DUP8 ADD DUP8 MSTORE DUP2 DUP2 MSTORE PUSH32 0x4D6F726D6F6E7400000000000000000000000000000000000000000000000000 DUP2 DUP6 ADD MSTORE PUSH2 0x160 DUP7 ADD MSTORE DUP6 MLOAD DUP1 DUP8 ADD DUP8 MSTORE DUP5 DUP2 MSTORE PUSH32 0x5461726C65790000000000000000000000000000000000000000000000000000 DUP2 DUP6 ADD MSTORE PUSH2 0x180 DUP7 ADD MSTORE DUP6 MLOAD DUP1 DUP8 ADD DUP8 MSTORE DUP3 DUP2 MSTORE PUSH32 0x4461796E65000000000000000000000000000000000000000000000000000000 DUP2 DUP6 ADD MSTORE PUSH2 0x1A0 DUP7 ADD MSTORE DUP6 MLOAD DUP1 DUP8 ADD DUP8 MSTORE SWAP2 DUP3 MSTORE PUSH32 0x556D626572000000000000000000000000000000000000000000000000000000 DUP3 DUP5 ADD MSTORE PUSH2 0x1C0 DUP6 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP5 MLOAD DUP1 DUP7 ADD DUP7 MSTORE PUSH1 0x8 DUP1 DUP3 MSTORE PUSH32 0x56616C6572796F6E000000000000000000000000000000000000000000000000 DUP3 DUP6 ADD MSTORE PUSH2 0x1E0 DUP7 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP6 MLOAD DUP1 DUP8 ADD DUP8 MSTORE DUP2 DUP2 MSTORE PUSH32 0x4D616E6465726C79000000000000000000000000000000000000000000000000 DUP2 DUP6 ADD MSTORE PUSH2 0x200 DUP7 ADD MSTORE DUP6 MLOAD DUP1 DUP8 ADD DUP8 MSTORE SWAP2 DUP3 MSTORE PUSH32 0x436C6567616E6500000000000000000000000000000000000000000000000000 DUP3 DUP5 ADD MSTORE PUSH2 0x220 DUP6 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP5 MLOAD DUP1 DUP7 ADD DUP7 MSTORE SWAP3 DUP4 MSTORE PUSH32 0x476C6F7665720000000000000000000000000000000000000000000000000000 DUP4 DUP4 ADD MSTORE PUSH2 0x240 DUP5 ADD SWAP3 SWAP1 SWAP3 MSTORE DUP4 MLOAD DUP1 DUP6 ADD SWAP1 SWAP5 MSTORE SWAP1 DUP4 MSTORE PUSH32 0x4B6172737461726B000000000000000000000000000000000000000000000000 SWAP1 DUP4 ADD MSTORE PUSH2 0x260 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP1 PUSH2 0x13BE DUP5 PUSH1 0x1 PUSH4 0xFFFFFFFF PUSH2 0x154E AND JUMP JUMPDEST PUSH1 0x14 DUP2 LT PUSH2 0x13C8 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL ADD MLOAD SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x20 DUP1 DUP3 ADD SWAP7 SWAP1 SWAP7 MSTORE DUP1 DUP3 ADD SWAP5 SWAP1 SWAP5 MSTORE PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP3 SWAP1 SWAP3 AND PUSH1 0x60 DUP5 ADD MSTORE PUSH1 0x80 DUP1 DUP5 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP2 MLOAD DUP1 DUP5 SUB SWAP1 SWAP2 ADD DUP2 MSTORE PUSH1 0xA0 SWAP1 SWAP3 ADD SWAP1 MSTORE DUP1 MLOAD SWAP2 ADD KECCAK256 SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 ADD DUP4 DUP2 LT ISZERO PUSH2 0x149C JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x1B PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x536166654D6174683A206164646974696F6E206F766572666C6F770000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x20 DUP1 DUP3 ADD SWAP5 SWAP1 SWAP5 MSTORE DUP1 DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE DUP1 MLOAD DUP1 DUP4 SUB DUP3 ADD DUP2 MSTORE PUSH1 0x60 SWAP1 SWAP3 ADD SWAP1 MSTORE DUP1 MLOAD SWAP2 ADD KECCAK256 SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH2 0x153D JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x18 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x536166654D6174683A206D6F64756C6F206279207A65726F0000000000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST DUP2 DUP4 DUP2 PUSH2 0x1546 JUMPI INVALID JUMPDEST MOD SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 GT ISZERO PUSH2 0x15BF JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x1E PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x536166654D6174683A207375627472616374696F6E206F766572666C6F770000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST POP SWAP1 SUB SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH2 0x280 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x14 SWAP1 JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x15D5 JUMPI SWAP1 POP POP SWAP1 JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xB5 0xEC DELEGATECALL SLOAD 0xCB 0x25 0xD6 PUSH25 0xB51DF1F9F74D18B4F13D55CDFC78E913B1776C4F2B2966864 PUSH20 0x6F6C634300060600330000000000000000000000 ",
   "sourceMap": "310:5735:26:-:0;;;1427:211;5:9:-1;2:2;;;27:1;24;17:12;2:2;1427:211:26;;;;;;;;;;;;;;;15:3:-1;10;7:12;4:2;;;32:1;29;22:12;4:2;-1:-1;1427:211:26;;;;;;;;;;;;;;;-1:-1:-1;;;;;;8998:32:22;;;;;;;9036;;;;;;;1427:211:26;9036:32:22;438:5:13;:18;;-1:-1:-1;;;;;;438:18:13;446:10;438:18;;;1582:9:26::1;:19:::0;;;;1611:5:::1;:11:::0;310:5735;;;;;;;;;;;;;;;;"
  },
  "deployedBytecode": {
   "immutableReferences": {
    "9438": [
     {
      "length": 32,
      "start": 867
     },
     {
      "length": 32,
      "start": 2230
     },
     {
      "length": 32,
      "start": 3298
     }
    ],
    "9440": [
     {
      "length": 32,
      "start": 1940
     },
     {
      "length": 32,
      "start": 3358
     }
    ]
   },
   "linkReferences": {},
   "object": " ",
   "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0xC9 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x94985DDD GT PUSH2 0x81 JUMPI DUP1 PUSH4 0xB1CAD5E3 GT PUSH2 0x5B JUMPI DUP1 PUSH4 0xB1CAD5E3 EQ PUSH2 0x1F2 JUMPI DUP1 PUSH4 0xDDCA3F43 EQ PUSH2 0x29A JUMPI DUP1 PUSH4 0xF2FDE38B EQ PUSH2 0x2A2 JUMPI PUSH2 0xC9 JUMP JUMPDEST DUP1 PUSH4 0x94985DDD EQ PUSH2 0x179 JUMPI DUP1 PUSH4 0x983FBAB2 EQ PUSH2 0x19C JUMPI DUP1 PUSH4 0x98544710 EQ PUSH2 0x1D5 JUMPI PUSH2 0xC9 JUMP JUMPDEST DUP1 PUSH4 0x69FE0E2D GT PUSH2 0xB2 JUMPI DUP1 PUSH4 0x69FE0E2D EQ PUSH2 0x121 JUMPI DUP1 PUSH4 0x79BA5097 EQ PUSH2 0x140 JUMPI DUP1 PUSH4 0x8DA5CB5B EQ PUSH2 0x148 JUMPI PUSH2 0xC9 JUMP JUMPDEST DUP1 PUSH4 0x5E816740 EQ PUSH2 0xCE JUMPI DUP1 PUSH4 0x61728F39 EQ PUSH2 0x119 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x107 PUSH1 0x4 DUP1 CALLDATASIZE SUB PUSH1 0x40 DUP2 LT ISZERO PUSH2 0xE4 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP DUP1 CALLDATALOAD SWAP1 PUSH1 0x20 ADD CALLDATALOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0x2D5 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD SWAP2 DUP3 MSTORE MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x20 ADD SWAP1 RETURN JUMPDEST PUSH2 0x107 PUSH2 0x5C9 JUMP JUMPDEST PUSH2 0x13E PUSH1 0x4 DUP1 CALLDATASIZE SUB PUSH1 0x20 DUP2 LT ISZERO PUSH2 0x137 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP CALLDATALOAD PUSH2 0x5CF JUMP JUMPDEST STOP JUMPDEST PUSH2 0x13E PUSH2 0x65A JUMP JUMPDEST PUSH2 0x150 PUSH2 0x760 JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP3 AND DUP3 MSTORE MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x20 ADD SWAP1 RETURN JUMPDEST PUSH2 0x13E PUSH1 0x4 DUP1 CALLDATASIZE SUB PUSH1 0x40 DUP2 LT ISZERO PUSH2 0x18F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP DUP1 CALLDATALOAD SWAP1 PUSH1 0x20 ADD CALLDATALOAD PUSH2 0x77C JUMP JUMPDEST PUSH2 0x13E PUSH1 0x4 DUP1 CALLDATASIZE SUB PUSH1 0x40 DUP2 LT ISZERO PUSH2 0x1B2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 CALLDATALOAD AND SWAP1 PUSH1 0x20 ADD CALLDATALOAD PUSH2 0x82E JUMP JUMPDEST PUSH2 0x13E PUSH1 0x4 DUP1 CALLDATASIZE SUB PUSH1 0x20 DUP2 LT ISZERO PUSH2 0x1EB JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP CALLDATALOAD PUSH2 0x9F2 JUMP JUMPDEST PUSH2 0x225 PUSH1 0x4 DUP1 CALLDATASIZE SUB PUSH1 0x20 DUP2 LT ISZERO PUSH2 0x208 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP CALLDATALOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0xA7D JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x20 DUP1 DUP3 MSTORE DUP4 MLOAD DUP2 DUP4 ADD MSTORE DUP4 MLOAD SWAP2 SWAP3 DUP4 SWAP3 SWAP1 DUP4 ADD SWAP2 DUP6 ADD SWAP1 DUP1 DUP4 DUP4 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x25F JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH2 0x247 JUMP JUMPDEST POP POP POP POP SWAP1 POP SWAP1 DUP2 ADD SWAP1 PUSH1 0x1F AND DUP1 ISZERO PUSH2 0x28C JUMPI DUP1 DUP3 SUB DUP1 MLOAD PUSH1 0x1 DUP4 PUSH1 0x20 SUB PUSH2 0x100 EXP SUB NOT AND DUP2 MSTORE PUSH1 0x20 ADD SWAP2 POP JUMPDEST POP SWAP3 POP POP POP PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x107 PUSH2 0xBDB JUMP JUMPDEST PUSH2 0x13E PUSH1 0x4 DUP1 CALLDATASIZE SUB PUSH1 0x20 DUP2 LT ISZERO PUSH2 0x2B8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP CALLDATALOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH2 0xBE1 JUMP JUMPDEST PUSH1 0x1 SLOAD PUSH1 0x0 SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER EQ PUSH2 0x35E JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x16 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x4F6E6C792063616C6C61626C65206279206F776E657200000000000000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH1 0x4 SLOAD PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x70A08231 ADDRESS PUSH1 0x40 MLOAD DUP3 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP2 POP POP PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 DUP7 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x3FE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS STATICCALL ISZERO DUP1 ISZERO PUSH2 0x412 JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x20 DUP2 LT ISZERO PUSH2 0x428 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP MLOAD LT ISZERO PUSH2 0x497 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x1A PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x4E6F7420656E6F756768204C494E4B20746F2070617920666565000000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x6 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD ISZERO PUSH2 0x529 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0xE PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x416C726561647920726F6C6C6564000000000000000000000000000000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH2 0x538 PUSH1 0x3 SLOAD PUSH1 0x4 SLOAD DUP6 PUSH2 0xCDE JUMP JUMPDEST PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x5 PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 DUP1 SLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFF0000000000000000000000000000000000000000 AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP9 AND SWAP1 DUP2 OR SWAP1 SWAP2 SSTORE DUP1 DUP5 MSTORE PUSH1 0x6 SWAP1 SWAP3 MSTORE DUP1 DUP4 KECCAK256 PUSH1 0x2A SWAP1 SSTORE MLOAD SWAP3 SWAP4 POP SWAP2 DUP4 SWAP2 PUSH32 0x923DE4FC4AECE24A78A9E4CA3009C571A742F81AC2C004A229224B0FD1883BDD SWAP2 LOG3 SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x3 SLOAD SWAP1 JUMP JUMPDEST PUSH1 0x1 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER EQ PUSH2 0x655 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x16 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x4F6E6C792063616C6C61626C65206279206F776E657200000000000000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH1 0x4 SSTORE JUMP JUMPDEST PUSH1 0x2 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER EQ PUSH2 0x6E0 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x16 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x4D7573742062652070726F706F736564206F776E657200000000000000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH1 0x1 DUP1 SLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFF0000000000000000000000000000000000000000 DUP1 DUP3 AND CALLER SWAP1 DUP2 OR SWAP1 SWAP4 SSTORE PUSH1 0x2 DUP1 SLOAD SWAP1 SWAP2 AND SWAP1 SSTORE PUSH1 0x40 MLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP1 SWAP2 AND SWAP2 SWAP1 DUP3 SWAP1 PUSH32 0x8BE0079C531659141344CD1FD0A4F28419497F9722A3DAAFE3B4186F6B6457E0 SWAP1 PUSH1 0x0 SWAP1 LOG3 POP JUMP JUMPDEST PUSH1 0x1 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF PUSH32 0x0 AND EQ PUSH2 0x820 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x1F PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x4F6E6C7920565246436F6F7264696E61746F722063616E2066756C66696C6C00 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH2 0x82A DUP3 DUP3 PUSH2 0xEC7 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x1 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER EQ PUSH2 0x8B4 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x16 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x4F6E6C792063616C6C61626C65206279206F776E657200000000000000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0xA9059CBB DUP4 DUP4 PUSH1 0x40 MLOAD DUP4 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD DUP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP2 MSTORE PUSH1 0x20 ADD SWAP3 POP POP POP PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0x95B JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0x96F JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x20 DUP2 LT ISZERO PUSH2 0x985 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP MLOAD PUSH2 0x82A JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0xF PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x4E6F7420656E6F756768204C494E4B0000000000000000000000000000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH1 0x1 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER EQ PUSH2 0xA78 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x16 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x4F6E6C792063616C6C61626C65206279206F776E657200000000000000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH1 0x3 SSTORE JUMP JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x6 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD PUSH1 0x60 SWAP1 PUSH2 0xB11 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0xF PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x44696365206E6F7420726F6C6C65640000000000000000000000000000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x6 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD PUSH1 0x2A EQ ISZERO PUSH2 0xBA6 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x10 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x526F6C6C20696E2070726F677265737300000000000000000000000000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x6 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD PUSH2 0xBD5 SWAP1 PUSH2 0xF50 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x4 SLOAD SWAP1 JUMP JUMPDEST PUSH1 0x1 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND CALLER EQ PUSH2 0xC67 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x16 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x4F6E6C792063616C6C61626C65206279206F776E657200000000000000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST PUSH1 0x2 DUP1 SLOAD PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFF0000000000000000000000000000000000000000 AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP4 DUP2 AND SWAP2 DUP3 OR SWAP1 SWAP3 SSTORE PUSH1 0x1 SLOAD PUSH1 0x40 MLOAD SWAP2 SWAP3 AND SWAP1 PUSH32 0xED8889F560326EB138920D842192F0EB3DD22B4F139C87A2C57538E05BAE1278 SWAP1 PUSH1 0x0 SWAP1 LOG3 POP JUMP JUMPDEST PUSH1 0x0 PUSH32 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH4 0x4000AEA0 PUSH32 0x0 DUP6 DUP8 DUP7 PUSH1 0x40 MLOAD PUSH1 0x20 ADD DUP1 DUP4 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP2 MSTORE PUSH1 0x20 ADD SWAP3 POP POP POP PUSH1 0x40 MLOAD PUSH1 0x20 DUP2 DUP4 SUB SUB DUP2 MSTORE SWAP1 PUSH1 0x40 MSTORE PUSH1 0x40 MLOAD DUP5 PUSH4 0xFFFFFFFF AND PUSH1 0xE0 SHL DUP2 MSTORE PUSH1 0x4 ADD DUP1 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD DUP4 DUP2 MSTORE PUSH1 0x20 ADD DUP1 PUSH1 0x20 ADD DUP3 DUP2 SUB DUP3 MSTORE DUP4 DUP2 DUP2 MLOAD DUP2 MSTORE PUSH1 0x20 ADD SWAP2 POP DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 DUP1 DUP4 DUP4 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0xDEA JUMPI DUP2 DUP2 ADD MLOAD DUP4 DUP3 ADD MSTORE PUSH1 0x20 ADD PUSH2 0xDD2 JUMP JUMPDEST POP POP POP POP SWAP1 POP SWAP1 DUP2 ADD SWAP1 PUSH1 0x1F AND DUP1 ISZERO PUSH2 0xE17 JUMPI DUP1 DUP3 SUB DUP1 MLOAD PUSH1 0x1 DUP4 PUSH1 0x20 SUB PUSH2 0x100 EXP SUB NOT AND DUP2 MSTORE PUSH1 0x20 ADD SWAP2 POP JUMPDEST POP SWAP5 POP POP POP POP POP PUSH1 0x20 PUSH1 0x40 MLOAD DUP1 DUP4 SUB DUP2 PUSH1 0x0 DUP8 DUP1 EXTCODESIZE ISZERO DUP1 ISZERO PUSH2 0xE38 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP GAS CALL ISZERO DUP1 ISZERO PUSH2 0xE4C JUMPI RETURNDATASIZE PUSH1 0x0 DUP1 RETURNDATACOPY RETURNDATASIZE PUSH1 0x0 REVERT JUMPDEST POP POP POP POP PUSH1 0x40 MLOAD RETURNDATASIZE PUSH1 0x20 DUP2 LT ISZERO PUSH2 0xE62 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP POP PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 SLOAD PUSH2 0xE82 SWAP1 DUP7 SWAP1 DUP6 SWAP1 ADDRESS SWAP1 PUSH2 0x13D4 JUMP JUMPDEST PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SLOAD SWAP1 SWAP2 POP PUSH2 0xEA5 SWAP1 PUSH1 0x1 PUSH4 0xFFFFFFFF PUSH2 0x1428 AND JUMP JUMPDEST PUSH1 0x0 DUP7 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 SSTORE PUSH2 0xEBE DUP6 DUP3 PUSH2 0x14A3 JUMP JUMPDEST SWAP6 SWAP5 POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0xEEB PUSH1 0x1 PUSH2 0xEDF DUP5 PUSH1 0x14 PUSH4 0xFFFFFFFF PUSH2 0x14CF AND JUMP JUMPDEST SWAP1 PUSH4 0xFFFFFFFF PUSH2 0x1428 AND JUMP JUMPDEST PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x5 PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 SLOAD PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP4 MSTORE PUSH1 0x6 SWAP1 SWAP2 MSTORE DUP1 DUP3 KECCAK256 DUP4 SWAP1 SSTORE MLOAD SWAP2 SWAP3 POP DUP3 SWAP2 DUP6 SWAP2 PUSH32 0x909DD726737B7FFA4AE9D137E9EDEBE8A74A9C2910A4B60E8112F93AB2170837 SWAP2 LOG3 POP POP POP JUMP JUMPDEST PUSH1 0x60 PUSH2 0xF5A PUSH2 0x15C5 JUMP JUMPDEST POP PUSH1 0x40 DUP1 MLOAD PUSH2 0x2C0 DUP2 ADD DUP3 MSTORE PUSH1 0x9 PUSH2 0x280 DUP3 ADD DUP2 DUP2 MSTORE PUSH32 0x54617267617279656E0000000000000000000000000000000000000000000000 PUSH2 0x2A0 DUP5 ADD MSTORE DUP3 MSTORE DUP3 MLOAD DUP1 DUP5 ADD DUP5 MSTORE DUP2 DUP2 MSTORE PUSH32 0x4C616E6E69737465720000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP1 DUP5 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP4 MLOAD DUP1 DUP6 ADD DUP6 MSTORE PUSH1 0x5 DUP1 DUP3 MSTORE PUSH32 0x537461726B000000000000000000000000000000000000000000000000000000 DUP3 DUP5 ADD MSTORE DUP5 DUP7 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP5 MLOAD DUP1 DUP7 ADD DUP7 MSTORE PUSH1 0x6 DUP1 DUP3 MSTORE PUSH32 0x547972656C6C0000000000000000000000000000000000000000000000000000 DUP3 DUP6 ADD MSTORE PUSH1 0x60 DUP7 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP6 MLOAD DUP1 DUP8 ADD DUP8 MSTORE SWAP4 DUP5 MSTORE PUSH32 0x426172617468656F6E0000000000000000000000000000000000000000000000 DUP5 DUP5 ADD MSTORE PUSH1 0x80 DUP6 ADD SWAP4 SWAP1 SWAP4 MSTORE DUP5 MLOAD DUP1 DUP7 ADD DUP7 MSTORE PUSH1 0x7 DUP1 DUP3 MSTORE PUSH32 0x4D617274656C6C00000000000000000000000000000000000000000000000000 DUP3 DUP6 ADD MSTORE PUSH1 0xA0 DUP7 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP6 MLOAD DUP1 DUP8 ADD DUP8 MSTORE DUP3 DUP2 MSTORE PUSH32 0x54756C6C79000000000000000000000000000000000000000000000000000000 DUP2 DUP6 ADD MSTORE PUSH1 0xC0 DUP7 ADD MSTORE DUP6 MLOAD DUP1 DUP8 ADD DUP8 MSTORE DUP5 DUP2 MSTORE PUSH32 0x426F6C746F6E0000000000000000000000000000000000000000000000000000 DUP2 DUP6 ADD MSTORE PUSH1 0xE0 DUP7 ADD MSTORE DUP6 MLOAD DUP1 DUP8 ADD DUP8 MSTORE DUP2 DUP2 MSTORE PUSH32 0x477265796A6F7900000000000000000000000000000000000000000000000000 DUP2 DUP6 ADD MSTORE PUSH2 0x100 DUP7 ADD MSTORE DUP6 MLOAD DUP1 DUP8 ADD DUP8 MSTORE DUP3 DUP2 MSTORE PUSH32 0x417272796E000000000000000000000000000000000000000000000000000000 DUP2 DUP6 ADD MSTORE PUSH2 0x120 DUP7 ADD MSTORE DUP6 MLOAD DUP1 DUP8 ADD DUP8 MSTORE PUSH1 0x4 DUP2 MSTORE PUSH32 0x4672657900000000000000000000000000000000000000000000000000000000 DUP2 DUP6 ADD MSTORE PUSH2 0x140 DUP7 ADD MSTORE DUP6 MLOAD DUP1 DUP8 ADD DUP8 MSTORE DUP2 DUP2 MSTORE PUSH32 0x4D6F726D6F6E7400000000000000000000000000000000000000000000000000 DUP2 DUP6 ADD MSTORE PUSH2 0x160 DUP7 ADD MSTORE DUP6 MLOAD DUP1 DUP8 ADD DUP8 MSTORE DUP5 DUP2 MSTORE PUSH32 0x5461726C65790000000000000000000000000000000000000000000000000000 DUP2 DUP6 ADD MSTORE PUSH2 0x180 DUP7 ADD MSTORE DUP6 MLOAD DUP1 DUP8 ADD DUP8 MSTORE DUP3 DUP2 MSTORE PUSH32 0x4461796E65000000000000000000000000000000000000000000000000000000 DUP2 DUP6 ADD MSTORE PUSH2 0x1A0 DUP7 ADD MSTORE DUP6 MLOAD DUP1 DUP8 ADD DUP8 MSTORE SWAP2 DUP3 MSTORE PUSH32 0x556D626572000000000000000000000000000000000000000000000000000000 DUP3 DUP5 ADD MSTORE PUSH2 0x1C0 DUP6 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP5 MLOAD DUP1 DUP7 ADD DUP7 MSTORE PUSH1 0x8 DUP1 DUP3 MSTORE PUSH32 0x56616C6572796F6E000000000000000000000000000000000000000000000000 DUP3 DUP6 ADD MSTORE PUSH2 0x1E0 DUP7 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP6 MLOAD DUP1 DUP8 ADD DUP8 MSTORE DUP2 DUP2 MSTORE PUSH32 0x4D616E6465726C79000000000000000000000000000000000000000000000000 DUP2 DUP6 ADD MSTORE PUSH2 0x200 DUP7 ADD MSTORE DUP6 MLOAD DUP1 DUP8 ADD DUP8 MSTORE SWAP2 DUP3 MSTORE PUSH32 0x436C6567616E6500000000000000000000000000000000000000000000000000 DUP3 DUP5 ADD MSTORE PUSH2 0x220 DUP6 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP5 MLOAD DUP1 DUP7 ADD DUP7 MSTORE SWAP3 DUP4 MSTORE PUSH32 0x476C6F7665720000000000000000000000000000000000000000000000000000 DUP4 DUP4 ADD MSTORE PUSH2 0x240 DUP5 ADD SWAP3 SWAP1 SWAP3 MSTORE DUP4 MLOAD DUP1 DUP6 ADD SWAP1 SWAP5 MSTORE SWAP1 DUP4 MSTORE PUSH32 0x4B6172737461726B000000000000000000000000000000000000000000000000 SWAP1 DUP4 ADD MSTORE PUSH2 0x260 DUP2 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP1 PUSH2 0x13BE DUP5 PUSH1 0x1 PUSH4 0xFFFFFFFF PUSH2 0x154E AND JUMP JUMPDEST PUSH1 0x14 DUP2 LT PUSH2 0x13C8 JUMPI INVALID JUMPDEST PUSH1 0x20 MUL ADD MLOAD SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x20 DUP1 DUP3 ADD SWAP7 SWAP1 SWAP7 MSTORE DUP1 DUP3 ADD SWAP5 SWAP1 SWAP5 MSTORE PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SWAP3 SWAP1 SWAP3 AND PUSH1 0x60 DUP5 ADD MSTORE PUSH1 0x80 DUP1 DUP5 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP2 MLOAD DUP1 DUP5 SUB SWAP1 SWAP2 ADD DUP2 MSTORE PUSH1 0xA0 SWAP1 SWAP3 ADD SWAP1 MSTORE DUP1 MLOAD SWAP2 ADD KECCAK256 SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 ADD DUP4 DUP2 LT ISZERO PUSH2 0x149C JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x1B PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x536166654D6174683A206164646974696F6E206F766572666C6F770000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x40 DUP1 MLOAD PUSH1 0x20 DUP1 DUP3 ADD SWAP5 SWAP1 SWAP5 MSTORE DUP1 DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE DUP1 MLOAD DUP1 DUP4 SUB DUP3 ADD DUP2 MSTORE PUSH1 0x60 SWAP1 SWAP3 ADD SWAP1 MSTORE DUP1 MLOAD SWAP2 ADD KECCAK256 SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH2 0x153D JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x18 PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x536166654D6174683A206D6F64756C6F206279207A65726F0000000000000000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST DUP2 DUP4 DUP2 PUSH2 0x1546 JUMPI INVALID JUMPDEST MOD SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 GT ISZERO PUSH2 0x15BF JUMPI PUSH1 0x40 DUP1 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x1E PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x536166654D6174683A207375627472616374696F6E206F766572666C6F770000 PUSH1 0x44 DUP3 ADD MSTORE SWAP1 MLOAD SWAP1 DUP2 SWAP1 SUB PUSH1 0x64 ADD SWAP1 REVERT JUMPDEST POP SWAP1 SUB SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH2 0x280 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x14 SWAP1 JUMPDEST PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x15D5 JUMPI SWAP1 POP POP SWAP1 JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xB5 0xEC DELEGATECALL SLOAD 0xCB 0x25 0xD6 PUSH25 0xB51DF1F9F74D18B4F13D55CDFC78E913B1776C4F2B2966864 PUSH20 0x6F6C634300060600330000000000000000000000 ",
   "sourceMap": "310:5735:26:-:0;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;310:5735:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12:1:-1;9;2:12;2096:462:26;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;-1:-1;2096:462:26;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;4865:82;;;:::i;5062:74::-;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;-1:-1;5062:74:26;;:::i;:::-;;806:254:13;;;:::i;179:20::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;;9268:207:22;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;-1:-1;9268:207:22;;;;;;;:::i;4442:135:26:-;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;-1:-1;4442:135:26;;;;;;;;;:::i;4683:90::-;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;-1:-1;4683:90:26;;:::i;3775:258::-;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;-1:-1;3775:258:26;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:100:-1;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;3775:258:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5223:74;;;:::i;567:150:13:-;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;-1:-1;567:150:13;;;;:::i;2096:462:26:-;1194:5:13;;2182:17:26;;1194:5:13;;1180:10;:19;1172:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2252:5:26::1;;2219:4;:14;;;2242:4;2219:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24::::0;17:12:::1;2:2;2219:29:26;;;;8:9:-1;5:2;;;45:16;42:1;39::::0;24:38:::1;77:16;74:1;67:27;5:2;2219:29:26;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28::::0;21:12:::1;4:2;-1:-1:::0;2219:29:26;:38:::1;;2211:77;;;::::0;;::::1;::::0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;::::1;;2306:17;::::0;::::1;;::::0;;;:9:::1;:17;::::0;;;;;:22;2298:49:::1;;;::::0;;::::1;::::0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;::::1;;2369:53;2387:9;;2398:5;;2405:16;2369:17;:53::i;:::-;2432:20;::::0;;;:9:::1;:20;::::0;;;;;;;:29;;;::::1;;::::0;::::1;::::0;;::::1;::::0;;;2471:17;;;:9:::1;:17:::0;;;;;;444:2:::1;2471:36:::0;;2522:29;2432:20;;-1:-1:-1;2432:29:26;:20;;2522:29:::1;::::0;::::1;2096:462:::0;;;;:::o;4865:82::-;4931:9;;4865:82;:::o;5062:74::-;1194:5:13;;;;1180:10;:19;1172:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5118:5:26::1;:11:::0;5062:74::o;806:254:13:-;876:12;;;;862:10;:26;854:61;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;941:5;;;952:18;;;;960:10;952:18;;;;;;976:12;:25;;;;;;;1013:42;;941:5;;;;;960:10;941:5;;1013:42;;922:16;;1013:42;806:254;:::o;179:20::-;;;;;;:::o;9268:207:22:-;9360:10;:28;9374:14;9360:28;;9352:72;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9430:40;9448:9;9459:10;9430:17;:40::i;:::-;9268:207;;:::o;4442:135:26:-;1194:5:13;;;;1180:10;:19;1172:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4526:4:26::1;:13;;;4540:2;4544:5;4526:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24::::0;17:12:::1;2:2;4526:24:26;;;;8:9:-1;5:2;;;45:16;42:1;39::::0;24:38:::1;77:16;74:1;67:27;5:2;4526:24:26;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28::::0;21:12:::1;4:2;-1:-1:::0;4526:24:26;4518:52:::1;;;::::0;;::::1;::::0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;::::1;4683:90:::0;1194:5:13;;;;1180:10;:19;1172:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4747:9:26::1;:19:::0;4683:90::o;3775:258::-;3860:17;;;;;;;:9;:17;;;;;;3827:13;;3852:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3920:17;;;;;;;:9;:17;;;;;;444:2;3920:37;;3912:66;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4008:17;;;;;;;:9;:17;;;;;;3995:31;;:12;:31::i;:::-;3988:38;3775:258;-1:-1:-1;;3775:258:26:o;5223:74::-;5285:5;;5223:74;:::o;567:150:13:-;1194:5;;;;1180:10;:19;1172:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;644:12:::1;:18:::0;;;::::1;;::::0;;::::1;::::0;;::::1;::::0;;;-1:-1:-1;701:5:13;674:38:::1;::::0;644:18;;701:5:::1;::::0;674:38:::1;::::0;-1:-1:-1;;674:38:13::1;567:150:::0;:::o;7428:1013:22:-;7524:17;7551:4;:20;;;7572:14;7588:4;7605:8;7615:5;7594:27;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;7594:27:22;;;7551:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;7551:71:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5:9:-1;2:2;;;27:1;24;17:12;2:2;7551:71:22;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7551:71:22;;;;;;;15:2:-1;10:3;7:11;4:2;;;31:1;28;21:12;4:2;-1:-1;;7853:15:22;7921:16;;;7551:71;7921:16;;;;;;;7872:66;;7889:8;;7899:5;;7914:4;;7872:16;:66::i;:::-;8368:6;:16;;;;;;;;;;;7853:85;;-1:-1:-1;8368:23:22;;8389:1;8368:23;:20;:23;:::i;:::-;8349:6;:16;;;;;;;;;;:42;8404:32;8356:8;8428:7;8404:13;:32::i;:::-;8397:39;7428:1013;-1:-1:-1;;;;;7428:1013:22:o;3368:243:26:-;3462:16;3481:25;3504:1;3481:18;:10;3496:2;3481:18;:14;:18;:::i;:::-;:22;:25;:22;:25;:::i;:::-;3516:31;3526:20;;;:9;:20;;;;;;;;;;;3516:31;;:9;:31;;;;;;:42;;;3573:31;3462:44;;-1:-1:-1;3462:44:26;;3536:9;;3573:31;;;3368:243;;;:::o;5424:619::-;5480:13;5505:28;;:::i;:::-;-1:-1:-1;5505:493:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;5505:493:26;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;5505:493:26;;;;;6026:9;:2;6033:1;6026:9;:6;:9;:::i;:::-;6015:21;;;;;;;;;;;;5424:619;-1:-1:-1;;;5424:619:26:o;797:231:24:-;970:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26:21:-1;;;22:32;;;6:49;;970:51:24;;;;;;960:62;;;;;;797:231::o;863:162:66:-;921:7;948:5;;;967:6;;;;959:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1019:1;863:162;-1:-1:-1;;;863:162:66:o;1408:171:24:-;1532:41;;;;;;;;;;;;;;;;;;;;26:21:-1;;;22:32;;6:49;;1532:41:24;;;;;;1522:52;;;;;;1408:171::o;3263:139:66:-;3321:7;3344:6;3336:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3396:1;3392;:5;;;;;;;3263:139;-1:-1:-1;;;3263:139:66:o;1277:165::-;1335:7;1363:1;1358;:6;;1350:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;1417:5:66;;;1277:165::o;310:5735:26:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o"
  },
  "methodIdentifiers": {
   "acceptOwnership()": "79ba5097",
   "fee()": "ddca3f43",
   "house(address)": "b1cad5e3",
   "keyHash()": "61728f39",
   "owner()": "8da5cb5b",
   "rawFulfillRandomness(bytes32,uint256)": "94985ddd",
   "rollDice(uint256,address)": "5e816740",
   "setFee(uint256)": "69fe0e2d",
   "setKeyHash(bytes32)": "98544710",
   "transferOwnership(address)": "f2fde38b",
   "withdrawLINK(address,uint256)": "983fbab2"
  }
 },
 "metadata": "{\"compiler\":{\"version\":\"0.6.6+commit.6c089d02\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"vrfCoordinator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"link\",\"type\":\"address\"},{\"internalType\":\"bytes32\",\"name\":\"keyHash\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"fee\",\"type\":\"uint256\"}],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"requestId\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"uint256\",\"name\":\"result\",\"type\":\"uint256\"}],\"name\":\"DiceLanded\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"requestId\",\"type\":\"bytes32\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"roller\",\"type\":\"address\"}],\"name\":\"DiceRolled\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"OwnershipTransferRequested\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\"},{\"indexed\":true,\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"}],\"name\":\"OwnershipTransferred\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"acceptOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"fee\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"player\",\"type\":\"address\"}],\"name\":\"house\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"keyHash\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"requestId\",\"type\":\"bytes32\"},{\"internalType\":\"uint256\",\"name\":\"randomness\",\"type\":\"uint256\"}],\"name\":\"rawFulfillRandomness\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"userProvidedSeed\",\"type\":\"uint256\"},{\"internalType\":\"address\",\"name\":\"roller\",\"type\":\"address\"}],\"name\":\"rollDice\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"requestId\",\"type\":\"bytes32\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"fee\",\"type\":\"uint256\"}],\"name\":\"setFee\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes32\",\"name\":\"keyHash\",\"type\":\"bytes32\"}],\"name\":\"setKeyHash\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"_to\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"withdrawLINK\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"details\":\"This is only an example implementation and not necessarily suitable for mainnet.\",\"methods\":{\"acceptOwnership()\":{\"details\":\"Allows an ownership transfer to be completed by the recipient.\"},\"constructor\":{\"details\":\"NETWORK: KOVANChainlink VRF Coordinator address: 0xdD3782915140c8f3b190B5D67eAc6dc5760C46E9LINK token address:                0xa36085F69e2889c224210F603D836748e7dC0088Key Hash:   0x6c3699283bda56ad74f6b855546325b68d482e983852a7a82979cc4807b641f4Fee:        0.1 LINK (100000000000000000)\",\"params\":{\"fee\":\"uint256 fee to pay the VRF oracle\",\"keyHash\":\"bytes32 representing the hash of the VRF job\",\"link\":\"address of the LINK token\",\"vrfCoordinator\":\"address of the VRF Coordinator\"}},\"house(address)\":{\"params\":{\"player\":\"address\"},\"returns\":{\"_0\":\"house as a string\"}},\"rollDice(uint256,address)\":{\"details\":\"Warning: if the VRF response is delayed, avoid calling requestRandomness repeatedly as that would give miners/VRF operators latitude about which VRF response arrives first.You must review your implementation details with extreme care.\",\"params\":{\"roller\":\"address of the roller\",\"userProvidedSeed\":\"uint256 unpredictable seed\"}},\"setFee(uint256)\":{\"params\":{\"fee\":\"uint256\"}},\"setKeyHash(bytes32)\":{\"params\":{\"keyHash\":\"bytes32\"}},\"transferOwnership(address)\":{\"details\":\"Allows an owner to begin transferring ownership to a new address, pending.\"},\"withdrawLINK(address,uint256)\":{\"details\":\"this is an example only, and in a real contract withdrawals should happen according to the established withdrawal pattern:  https://docs.soliditylang.org/en/v0.4.24/common-patterns.html#withdrawal-from-contracts\",\"params\":{\"to\":\"the address to withdraw LINK to\",\"value\":\"the amount of LINK to withdraw\"}}}},\"userdoc\":{\"methods\":{\"constructor\":\"Constructor inherits VRFConsumerBase\",\"fee()\":{\"notice\":\"Get the current fee\"},\"house(address)\":{\"notice\":\"Get the house assigned to the player once the address has rolled\"},\"keyHash()\":{\"notice\":\"Get the current key hash\"},\"rollDice(uint256,address)\":{\"notice\":\"Requests randomness from a user-provided seed\"},\"setFee(uint256)\":{\"notice\":\"Set the oracle fee for requesting randomness\"},\"setKeyHash(bytes32)\":{\"notice\":\"Set the key hash for the oracle\"},\"withdrawLINK(address,uint256)\":{\"notice\":\"Withdraw LINK from this contract.\"}},\"notice\":\"A Chainlink VRF consumer which uses randomness to mimic the rolling of a 20 sided die\"}},\"settings\":{\"compilationTarget\":{\"/Users/steve/workspace/chainlink/evm-contracts/src/v0.6/examples/VRFD20.sol\":\"VRFD20\"},\"evmVersion\":\"istanbul\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":1000000},\"remappings\":[]},\"sources\":{\"/Users/steve/workspace/chainlink/evm-contracts/src/v0.6/Owned.sol\":{\"keccak256\":\"0xd791ecc6095e7f3b0a49f036f1fd9011873e5c7c04d2b28292d11e15c0967b75\",\"urls\":[\"bzz-raw://1cc68291e0dc79fb6a140a2f4e667392fe71d0e7814bad3b56ae47dd13f69ba7\",\"dweb:/ipfs/QmQFTFFBjaJsb7sivr25R4XfNKW84nDjZWSGMY7Cc8eqqC\"]},\"/Users/steve/workspace/chainlink/evm-contracts/src/v0.6/VRFConsumerBase.sol\":{\"keccak256\":\"0xbb84a6411e071d5b04b36d7dda59eaf1cb5a28b3b289757a5ac849ddf9befac3\",\"urls\":[\"bzz-raw://6bc702d1ec269920a3f0cf371155b6c4800d36233949873144e95ce3c4427eb3\",\"dweb:/ipfs/QmUrYPpfh7TAcUBx3B5ugW2jCAeWThMssY5oyRgQXQRkbE\"]},\"/Users/steve/workspace/chainlink/evm-contracts/src/v0.6/VRFRequestIDBase.sol\":{\"keccak256\":\"0x0c3bd40c63dac8398a979b1228c8ecb1c269c157dd16f2dce2086d2270b65b22\",\"urls\":[\"bzz-raw://ed9db87be9dfb0f763a556d8d80356b08282b8ea48484838cdf470a5c3cd15d5\",\"dweb:/ipfs/QmPLhwDAS3TPDiEQmTyqXnWBqwEMBSbXtjEiQDSGejoiPt\"]},\"/Users/steve/workspace/chainlink/evm-contracts/src/v0.6/examples/VRFD20.sol\":{\"keccak256\":\"0xc6d139241d49a5458462d135efa670c707eac760b12722e370666e6748b793d6\",\"urls\":[\"bzz-raw://3d98a5df8e5076ce53baf6346862fd8f49fdfda59c16781920c292c44c607cfa\",\"dweb:/ipfs/QmeEDF9cMe2X5Gomis82Uczo2F1obLR9WuamSca4ecdbDY\"]},\"/Users/steve/workspace/chainlink/evm-contracts/src/v0.6/interfaces/LinkTokenInterface.sol\":{\"keccak256\":\"0xe245a7be950c94d87bb775ae9ee9fbd693fbe2987778e6ce0b04605ea44b7b68\",\"urls\":[\"bzz-raw://bd2c3165d949fc66fe407b96eb3dc2092c7e800f4c073b411bf7b96de3e156c9\",\"dweb:/ipfs/QmcfJhR1Np4GsLWnww2Duqks2wEzYk8VDTvCAYy7MisG1r\"]},\"/Users/steve/workspace/chainlink/evm-contracts/src/v0.6/vendor/SafeMathChainlink.sol\":{\"keccak256\":\"0x105f5e9491f3d0bbdd4f1c7627eb839d69b944bfd803028a01cc083597692c1f\",\"urls\":[\"bzz-raw://ec45a2748a024a947a921183d4102d5e206808588501d85ddc4f5668a009bc73\",\"dweb:/ipfs/QmRNAMpq7LdWFnJ7wWKGbUuAcURaGSS42PMxtQ4vjrHmp9\"]}},\"version\":1}"
})

if (process.env.NODE_ENV === 'test') {
  try {
    eval('VRFD20.setProvider(web3.currentProvider)')
  } catch (e) {}
}

exports.VRFD20 = VRFD20
