{
    "contractName": "ERC20Short",
    "abi": [
        {
            "constant": false,
            "inputs": [
                {
                    "name": "_spender",
                    "type": "address"
                },
                {
                    "name": "_value",
                    "type": "uint256"
                }
            ],
            "name": "approve",
            "outputs": [
                {
                    "name": "",
                    "type": "bool"
                }
            ],
            "payable": false,
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "constant": true,
            "inputs": [],
            "name": "DYDX_MARGIN",
            "outputs": [
                {
                    "name": "",
                    "type": "address"
                }
            ],
            "payable": false,
            "stateMutability": "view",
            "type": "function"
        },
        {
            "constant": true,
            "inputs": [],
            "name": "totalSupply",
            "outputs": [
                {
                    "name": "",
                    "type": "uint256"
                }
            ],
            "payable": false,
            "stateMutability": "view",
            "type": "function"
        },
        {
            "constant": false,
            "inputs": [
                {
                    "name": "_from",
                    "type": "address"
                },
                {
                    "name": "_to",
                    "type": "address"
                },
                {
                    "name": "_value",
                    "type": "uint256"
                }
            ],
            "name": "transferFrom",
            "outputs": [
                {
                    "name": "",
                    "type": "bool"
                }
            ],
            "payable": false,
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "constant": false,
            "inputs": [
                {
                    "name": "closer",
                    "type": "address"
                },
                {
                    "name": "payoutRecipient",
                    "type": "address"
                },
                {
                    "name": "positionId",
                    "type": "bytes32"
                },
                {
                    "name": "requestedAmount",
                    "type": "uint256"
                }
            ],
            "name": "closeOnBehalfOf",
            "outputs": [
                {
                    "name": "",
                    "type": "address"
                },
                {
                    "name": "",
                    "type": "uint256"
                }
            ],
            "payable": false,
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "constant": true,
            "inputs": [
                {
                    "name": "positionId",
                    "type": "bytes32"
                }
            ],
            "name": "getPositionDeedHolder",
            "outputs": [
                {
                    "name": "",
                    "type": "address"
                }
            ],
            "payable": false,
            "stateMutability": "view",
            "type": "function"
        },
        {
            "constant": false,
            "inputs": [
                {
                    "name": "onBehalfOf",
                    "type": "address"
                }
            ],
            "name": "withdraw",
            "outputs": [
                {
                    "name": "",
                    "type": "uint256"
                }
            ],
            "payable": false,
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "constant": false,
            "inputs": [
                {
                    "name": "_spender",
                    "type": "address"
                },
                {
                    "name": "_subtractedValue",
                    "type": "uint256"
                }
            ],
            "name": "decreaseApproval",
            "outputs": [
                {
                    "name": "",
                    "type": "bool"
                }
            ],
            "payable": false,
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "constant": true,
            "inputs": [
                {
                    "name": "_owner",
                    "type": "address"
                }
            ],
            "name": "balanceOf",
            "outputs": [
                {
                    "name": "",
                    "type": "uint256"
                }
            ],
            "payable": false,
            "stateMutability": "view",
            "type": "function"
        },
        {
            "constant": true,
            "inputs": [
                {
                    "name": "",
                    "type": "address"
                }
            ],
            "name": "TRUSTED_RECIPIENTS",
            "outputs": [
                {
                    "name": "",
                    "type": "bool"
                }
            ],
            "payable": false,
            "stateMutability": "view",
            "type": "function"
        },
        {
            "constant": false,
            "inputs": [
                {
                    "name": "_to",
                    "type": "address"
                },
                {
                    "name": "_value",
                    "type": "uint256"
                }
            ],
            "name": "transfer",
            "outputs": [
                {
                    "name": "",
                    "type": "bool"
                }
            ],
            "payable": false,
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "constant": true,
            "inputs": [],
            "name": "closedUsingTrustedRecipient",
            "outputs": [
                {
                    "name": "",
                    "type": "bool"
                }
            ],
            "payable": false,
            "stateMutability": "view",
            "type": "function"
        },
        {
            "constant": true,
            "inputs": [],
            "name": "INITIAL_TOKEN_HOLDER",
            "outputs": [
                {
                    "name": "",
                    "type": "address"
                }
            ],
            "payable": false,
            "stateMutability": "view",
            "type": "function"
        },
        {
            "constant": true,
            "inputs": [
                {
                    "name": "",
                    "type": "address"
                }
            ],
            "name": "TRUSTED_WITHDRAWERS",
            "outputs": [
                {
                    "name": "",
                    "type": "bool"
                }
            ],
            "payable": false,
            "stateMutability": "view",
            "type": "function"
        },
        {
            "constant": true,
            "inputs": [],
            "name": "state",
            "outputs": [
                {
                    "name": "",
                    "type": "uint8"
                }
            ],
            "payable": false,
            "stateMutability": "view",
            "type": "function"
        },
        {
            "constant": false,
            "inputs": [
                {
                    "name": "_spender",
                    "type": "address"
                },
                {
                    "name": "_addedValue",
                    "type": "uint256"
                }
            ],
            "name": "increaseApproval",
            "outputs": [
                {
                    "name": "",
                    "type": "bool"
                }
            ],
            "payable": false,
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "constant": true,
            "inputs": [],
            "name": "POSITION_ID",
            "outputs": [
                {
                    "name": "",
                    "type": "bytes32"
                }
            ],
            "payable": false,
            "stateMutability": "view",
            "type": "function"
        },
        {
            "constant": false,
            "inputs": [
                {
                    "name": "trader",
                    "type": "address"
                },
                {
                    "name": "positionId",
                    "type": "bytes32"
                },
                {
                    "name": "principalAdded",
                    "type": "uint256"
                }
            ],
            "name": "increasePositionOnBehalfOf",
            "outputs": [
                {
                    "name": "",
                    "type": "address"
                }
            ],
            "payable": false,
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "constant": true,
            "inputs": [],
            "name": "heldToken",
            "outputs": [
                {
                    "name": "",
                    "type": "address"
                }
            ],
            "payable": false,
            "stateMutability": "view",
            "type": "function"
        },
        {
            "constant": true,
            "inputs": [
                {
                    "name": "_owner",
                    "type": "address"
                },
                {
                    "name": "_spender",
                    "type": "address"
                }
            ],
            "name": "allowance",
            "outputs": [
                {
                    "name": "",
                    "type": "uint256"
                }
            ],
            "payable": false,
            "stateMutability": "view",
            "type": "function"
        },
        {
            "constant": false,
            "inputs": [
                {
                    "name": "",
                    "type": "address"
                },
                {
                    "name": "positionId",
                    "type": "bytes32"
                }
            ],
            "name": "receivePositionOwnership",
            "outputs": [
                {
                    "name": "",
                    "type": "address"
                }
            ],
            "payable": false,
            "stateMutability": "nonpayable",
            "type": "function"
        },
        {
            "inputs": [
                {
                    "name": "positionId",
                    "type": "bytes32"
                },
                {
                    "name": "margin",
                    "type": "address"
                },
                {
                    "name": "initialTokenHolder",
                    "type": "address"
                },
                {
                    "name": "trustedRecipients",
                    "type": "address[]"
                },
                {
                    "name": "trustedWithdrawers",
                    "type": "address[]"
                }
            ],
            "payable": false,
            "stateMutability": "nonpayable",
            "type": "constructor"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "name": "positionId",
                    "type": "bytes32"
                },
                {
                    "indexed": false,
                    "name": "initialSupply",
                    "type": "uint256"
                }
            ],
            "name": "Initialized",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": false,
                    "name": "closer",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "name": "tokenAmount",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "name": "payoutRecipient",
                    "type": "address"
                }
            ],
            "name": "ClosedByTrustedParty",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [],
            "name": "CompletelyClosed",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": true,
                    "name": "redeemer",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "name": "tokensRedeemed",
                    "type": "uint256"
                },
                {
                    "indexed": false,
                    "name": "heldTokenPayout",
                    "type": "uint256"
                }
            ],
            "name": "Withdraw",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": true,
                    "name": "redeemer",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "name": "closeAmount",
                    "type": "uint256"
                }
            ],
            "name": "Close",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": true,
                    "name": "owner",
                    "type": "address"
                },
                {
                    "indexed": true,
                    "name": "spender",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "name": "value",
                    "type": "uint256"
                }
            ],
            "name": "Approval",
            "type": "event"
        },
        {
            "anonymous": false,
            "inputs": [
                {
                    "indexed": true,
                    "name": "from",
                    "type": "address"
                },
                {
                    "indexed": true,
                    "name": "to",
                    "type": "address"
                },
                {
                    "indexed": false,
                    "name": "value",
                    "type": "uint256"
                }
            ],
            "name": "Transfer",
            "type": "event"
        },
        {
            "constant": true,
            "inputs": [],
            "name": "decimals",
            "outputs": [
                {
                    "name": "",
                    "type": "uint8"
                }
            ],
            "payable": false,
            "stateMutability": "view",
            "type": "function"
        },
        {
            "constant": true,
            "inputs": [],
            "name": "symbol",
            "outputs": [
                {
                    "name": "",
                    "type": "string"
                }
            ],
            "payable": false,
            "stateMutability": "view",
            "type": "function"
        },
        {
            "constant": true,
            "inputs": [],
            "name": "name",
            "outputs": [
                {
                    "name": "",
                    "type": "string"
                }
            ],
            "payable": false,
            "stateMutability": "view",
            "type": "function"
        }
    ],
    "bytecode": "0x608060405260016000553480156200001657600080fd5b5060405162002f6d38038062002f6d83398101604090815281516020830151918301516060840151608085015160048054600160a060020a03808816600160a060020a03199283161790925560068690556009805460058054948816949093169390931790915560ff60a860020a60ff0201199091169055929491929082019101848484848460005b8251811015620000f9576001600760008584815181101515620000be57fe5b602090810291909101810151600160a060020a03168252810191909152604001600020805460ff19169115159190911790556001016200009f565b5060005b8151811015620001575760016008600084848151811015156200011c57fe5b602090810291909101810151600160a060020a03168252810191909152604001600020805460ff1916911515919091179055600101620000fd565b5050505050505050505050612dfb80620001726000396000f30060806040526004361061013d5763ffffffff7c010000000000000000000000000000000000000000000000000000000060003504166306fdde038114610142578063095ea7b3146101cc5780630dda60cc1461021157806318160ddd1461024f57806323b872dd14610276578063313ce567146102ad57806335ba1d0a146102d857806347369a7c1461034257806351cff8d91461035a578063661884631461038857806370a08231146103b9578063959ca8ab146103e757806395d89b4114610415578063a9059cbb1461042a578063ae08fa551461045b578063bcfa078614610470578063bd7456e314610485578063c19d93fb146104b3578063d73dd623146104ec578063d7ac71ff1461051d578063db4c528b14610532578063dd56898c14610566578063dd62ed3e1461057b578063e25bd409146105af575b600080fd5b34801561014e57600080fd5b506101576105e0565b6040805160208082528351818301528351919283929083019185019080838360005b83811015610191578181015183820152602001610179565b50505050905090810190601f1680156101be5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156101d857600080fd5b506101fd73ffffffffffffffffffffffffffffffffffffffff600435166024356106f2565b604080519115158252519081900360200190f35b34801561021d57600080fd5b50610226610766565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b34801561025b57600080fd5b50610264610782565b60408051918252519081900360200190f35b34801561028257600080fd5b506101fd73ffffffffffffffffffffffffffffffffffffffff60043581169060243516604435610788565b3480156102b957600080fd5b506102c261095a565b6040805160ff9092168252519081900360200190f35b3480156102e457600080fd5b5061031273ffffffffffffffffffffffffffffffffffffffff60043581169060243516604435606435610a9b565b6040805173ffffffffffffffffffffffffffffffffffffffff909316835260208301919091528051918290030190f35b34801561034e57600080fd5b50610226600435610e84565b34801561036657600080fd5b5061026473ffffffffffffffffffffffffffffffffffffffff60043516610f29565b34801561039457600080fd5b506101fd73ffffffffffffffffffffffffffffffffffffffff60043516602435611145565b3480156103c557600080fd5b5061026473ffffffffffffffffffffffffffffffffffffffff60043516611268565b3480156103f357600080fd5b506101fd73ffffffffffffffffffffffffffffffffffffffff60043516611290565b34801561042157600080fd5b506101576112a5565b34801561043657600080fd5b506101fd73ffffffffffffffffffffffffffffffffffffffff60043516602435611560565b34801561046757600080fd5b506101fd611668565b34801561047c57600080fd5b5061022661168a565b34801561049157600080fd5b506101fd73ffffffffffffffffffffffffffffffffffffffff600435166116a6565b3480156104bf57600080fd5b506104c86116bb565b604051808260028111156104d857fe5b60ff16815260200191505060405180910390f35b3480156104f857600080fd5b506101fd73ffffffffffffffffffffffffffffffffffffffff600435166024356116c4565b34801561052957600080fd5b50610264611777565b34801561053e57600080fd5b5061022673ffffffffffffffffffffffffffffffffffffffff6004351660243560443561177d565b34801561057257600080fd5b50610226611c39565b34801561058757600080fd5b5061026473ffffffffffffffffffffffffffffffffffffffff60043581169060243516611c5a565b3480156105bb57600080fd5b5061022673ffffffffffffffffffffffffffffffffffffffff60043516602435611c92565b6060600060095460ff1660028111156105f557fe5b141561063557506040805180820190915260208082527f645964582053686f727420546f6b656e205b554e494e495449414c495a45445d908201526106ef565b61064060065461202a565b60405160200180807f645964582053686f727420546f6b656e2000000000000000000000000000000081525060110182805190602001908083835b602083106106b857805182527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0909201916020918201910161067b565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405290505b90565b33600081815260036020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a35060015b92915050565b60045473ffffffffffffffffffffffffffffffffffffffff1681565b60025490565b73ffffffffffffffffffffffffffffffffffffffff83166000908152600160205260408120548211156107ba57600080fd5b73ffffffffffffffffffffffffffffffffffffffff841660009081526003602090815260408083203384529091529020548211156107f757600080fd5b73ffffffffffffffffffffffffffffffffffffffff8316151561081957600080fd5b73ffffffffffffffffffffffffffffffffffffffff841660009081526001602052604090205461084f908363ffffffff61226b16565b73ffffffffffffffffffffffffffffffffffffffff8086166000908152600160205260408082209390935590851681522054610891908363ffffffff61227d16565b73ffffffffffffffffffffffffffffffffffffffff80851660009081526001602090815260408083209490945591871681526003825282812033825290915220546108e2908363ffffffff61226b16565b73ffffffffffffffffffffffffffffffffffffffff808616600081815260036020908152604080832033845282529182902094909455805186815290519287169391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929181900390910190a35060019392505050565b60048054600654604080517f655c737c0000000000000000000000000000000000000000000000000000000081529384019190915251600092839273ffffffffffffffffffffffffffffffffffffffff169163655c737c91602480820192602092909190829003018186803b1580156109d257600080fd5b505afa1580156109e6573d6000803e3d6000fd5b505050506040513d60208110156109fc57600080fd5b5051604080517f313ce567000000000000000000000000000000000000000000000000000000008152905191925073ffffffffffffffffffffffffffffffffffffffff83169163313ce56791600480820192602092909190829003018186803b158015610a6857600080fd5b505afa158015610a7c573d6000803e3d6000fd5b505050506040513d6020811015610a9257600080fd5b505191505b5090565b60045460009081908190819073ffffffffffffffffffffffffffffffffffffffff163314610b5057604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4f6e6c794d617267696e236f6e6c794d617267696e3a204f6e6c79204d61726760448201527f696e2063616e2063616c6c000000000000000000000000000000000000000000606482015290519081900360840190fd5b600080546001908101918290558060095460ff166002811115610b6f57fe5b14610c0157604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602860248201527f4552433230506f736974696f6e236f6e6c7953746174653a20496e636f72726560448201527f6374205374617465000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b60065488908114610c9957604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f4552433230506f736974696f6e236f6e6c79506f736974696f6e3a20496e636f60448201527f727265637420706f736974696f6e000000000000000000000000000000000000606482015290519081900360840190fd5b60048054604080517f0e8a4ac70000000000000000000000000000000000000000000000000000000081529283018c90525173ffffffffffffffffffffffffffffffffffffffff90911691630e8a4ac7916024808301926020929190829003018186803b158015610d0957600080fd5b505afa158015610d1d573d6000803e3d6000fd5b505050506040513d6020811015610d3357600080fd5b5051945084881115610d4157fe5b73ffffffffffffffffffffffffffffffffffffffff8a1660009081526007602052604090205460ff1615610d8157610d7a8b8b8a61228a565b9350610d8f565b610d8c8b8987612359565b93505b60008411610d9957fe5b87841115610da357fe5b84841415610e0057600980547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660021790556040517fb147077378b3c0311f1c5a608d4cb621068096d16e8b1fdd1f1157ebc146306490600090a15b30849650965050506000548114610e7857604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f5265656e7472616e637920636865636b206661696c7572650000000000000000604482015290519081900360640190fd5b50505094509492505050565b60065460009082908114610f1f57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f4552433230506f736974696f6e236f6e6c79506f736974696f6e3a20496e636f60448201527f727265637420706f736974696f6e000000000000000000000000000000000000606482015290519081900360840190fd5b3091505b50919050565b60008054600101808255610f3b61249d565b600260095460ff166002811115610f4e57fe5b14610fe057604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152603860248201527f4552433230506f736974696f6e2377697468647261773a20506f736974696f6e60448201527f20686173206e6f7420796574206265656e20636c6f7365640000000000000000606482015290519081900360840190fd5b3373ffffffffffffffffffffffffffffffffffffffff8416146110c9573360009081526008602052604090205460ff1615156110c957604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152605160248201527f4552433230506f736974696f6e2377697468647261773a204f6e6c792074727560448201527f737465642077697468647261776572732063616e207769746864726177206f6e60648201527f20626568616c66206f66206f7468657273000000000000000000000000000000608482015290519081900360a40190fd5b6110d333846125b5565b91506000548114610f2357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f5265656e7472616e637920636865636b206661696c7572650000000000000000604482015290519081900360640190fd5b33600090815260036020908152604080832073ffffffffffffffffffffffffffffffffffffffff861684529091528120548083106111b35733600090815260036020908152604080832073ffffffffffffffffffffffffffffffffffffffff881684529091528120556111f5565b6111c3818463ffffffff61226b16565b33600090815260036020908152604080832073ffffffffffffffffffffffffffffffffffffffff891684529091529020555b33600081815260036020908152604080832073ffffffffffffffffffffffffffffffffffffffff89168085529083529281902054815190815290519293927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929181900390910190a35060019392505050565b73ffffffffffffffffffffffffffffffffffffffff1660009081526001602052604090205490565b60076020526000908152604090205460ff1681565b606060008060095460ff1660028111156112bb57fe5b14156112fc5760408051808201909152601081527f735b554e494e495449414c495a45445d0000000000000000000000000000000060208201529150610a97565b60048054600654604080517f655c737c000000000000000000000000000000000000000000000000000000008152938401919091525173ffffffffffffffffffffffffffffffffffffffff9091169163655c737c916024808301926020929190829003018186803b15801561137057600080fd5b505afa158015611384573d6000803e3d6000fd5b505050506040513d602081101561139a57600080fd5b5051604080517f95d89b41000000000000000000000000000000000000000000000000000000008152905191925073ffffffffffffffffffffffffffffffffffffffff8316916395d89b4191600480820192600092909190829003018186803b15801561140657600080fd5b505afa15801561141a573d6000803e3d6000fd5b505050506040513d6000823e601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0168201604052602081101561146157600080fd5b81019080805164010000000081111561147957600080fd5b8201602081018481111561148c57600080fd5b81516401000000008111828201871017156114a657600080fd5b505092919050505060405160200180807f730000000000000000000000000000000000000000000000000000000000000081525060010182805190602001908083835b6020831061152657805182527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe090920191602091820191016114e9565b6001836020036101000a03801982511681845116808217855250505050505090500191505060405160208183030381529060405291505090565b3360009081526001602052604081205482111561157c57600080fd5b73ffffffffffffffffffffffffffffffffffffffff8316151561159e57600080fd5b336000908152600160205260409020546115be908363ffffffff61226b16565b336000908152600160205260408082209290925573ffffffffffffffffffffffffffffffffffffffff8516815220546115fd908363ffffffff61227d16565b73ffffffffffffffffffffffffffffffffffffffff84166000818152600160209081526040918290209390935580518581529051919233927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a350600192915050565b6009547501000000000000000000000000000000000000000000900460ff1681565b60055473ffffffffffffffffffffffffffffffffffffffff1681565b60086020526000908152604090205460ff1681565b60095460ff1681565b33600090815260036020908152604080832073ffffffffffffffffffffffffffffffffffffffff86168452909152812054611705908363ffffffff61227d16565b33600081815260036020908152604080832073ffffffffffffffffffffffffffffffffffffffff89168085529083529281902085905580519485525191937f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925929081900390910190a350600192915050565b60065481565b600454600090819073ffffffffffffffffffffffffffffffffffffffff16331461182e57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4f6e6c794d617267696e236f6e6c794d617267696e3a204f6e6c79204d61726760448201527f696e2063616e2063616c6c000000000000000000000000000000000000000000606482015290519081900360840190fd5b600080546001908101918290558060095460ff16600281111561184d57fe5b146118df57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602860248201527f4552433230506f736974696f6e236f6e6c7953746174653a20496e636f72726560448201527f6374205374617465000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b6006548690811461197757604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f4552433230506f736974696f6e236f6e6c79506f736974696f6e3a20496e636f60448201527f727265637420706f736974696f6e000000000000000000000000000000000000606482015290519081900360840190fd5b60048054600654604080517f6e0cd415000000000000000000000000000000000000000000000000000000008152938401919091525173ffffffffffffffffffffffffffffffffffffffff90911691636e0cd415916024808301926020929190829003018186803b1580156119eb57600080fd5b505afa1580156119ff573d6000803e3d6000fd5b505050506040513d6020811015611a1557600080fd5b505115611acf57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152604360248201527f4552433230506f736974696f6e23696e637265617365506f736974696f6e4f6e60448201527f426568616c664f663a20506f736974696f6e206973206d617267696e2d63616c60648201527f6c65640000000000000000000000000000000000000000000000000000000000608482015290519081900360a40190fd5b6009547501000000000000000000000000000000000000000000900460ff1615611ba657604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152605160248201527f4552433230506f736974696f6e23696e637265617365506f736974696f6e4f6e60448201527f426568616c664f663a20506f736974696f6e20636c6f736564207573696e672060648201527f7472757374656420726563697069656e74000000000000000000000000000000608482015290519081900360a40190fd5b611baf866106ef565b9350611bbb888561269b565b30945050506000548114611c3057604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f5265656e7472616e637920636865636b206661696c7572650000000000000000604482015290519081900360640190fd5b50509392505050565b600954610100900473ffffffffffffffffffffffffffffffffffffffff1681565b73ffffffffffffffffffffffffffffffffffffffff918216600090815260036020908152604080832093909416825291909152205490565b6000611c9c612d12565b60045460009073ffffffffffffffffffffffffffffffffffffffff163314611d4b57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f4f6e6c794d617267696e236f6e6c794d617267696e3a204f6e6c79204d61726760448201527f696e2063616e2063616c6c000000000000000000000000000000000000000000606482015290519081900360840190fd5b60008054600101808255908060095460ff166002811115611d6857fe5b14611dfa57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602860248201527f4552433230506f736974696f6e236f6e6c7953746174653a20496e636f72726560448201527f6374205374617465000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b60065486908114611e9257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f4552433230506f736974696f6e236f6e6c79506f736974696f6e3a20496e636f60448201527f727265637420706f736974696f6e000000000000000000000000000000000000606482015290519081900360840190fd5b600454600654611eb89173ffffffffffffffffffffffffffffffffffffffff169061276b565b945060008560800151111515611eca57fe5b60098054602087015173ffffffffffffffffffffffffffffffffffffffff16610100027fffffffffffffffffffffff0000000000000000000000000000000000000000ff7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00909216600117919091161790556080850151611f4a906106ef565b600654604080519182526020820183905280519296507fc885ca8035bb269b79b1906eb7aaeeec6a4713b0976b175c25aa84b49acfa47392918290030190a1600554611fac9073ffffffffffffffffffffffffffffffffffffffff168561269b565b3095505050600054811461202157604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601860248201527f5265656e7472616e637920636865636b206661696c7572650000000000000000604482015290519081900360640190fd5b50505092915050565b60408051604280825260808201909252606091839183916000918291829182916020820161084080388339505081519196507f300000000000000000000000000000000000000000000000000000000000000091879150600090811061208c57fe5b9060200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535084517f780000000000000000000000000000000000000000000000000000000000000090869060019081106120ed57fe5b9060200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600093505b602084101561225f578360080260f80360020a8681151561213f57fe5b049250601060ff8416049150601060ff841606905060098260ff1611612166576030612169565b60575b8201915060098160ff161161217f576030612182565b60575b81019050817f01000000000000000000000000000000000000000000000000000000000000000285856002026002018151811015156121bd57fe5b9060200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350807f010000000000000000000000000000000000000000000000000000000000000002858560020260030181518110151561222457fe5b9060200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a905350600190930192612122565b50929695505050505050565b60008282111561227757fe5b50900390565b8181018281101561076057fe5b600080821161229557fe5b6009547501000000000000000000000000000000000000000000900460ff1615156122fb57600980547fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff1675010000000000000000000000000000000000000000001790555b6040805173ffffffffffffffffffffffffffffffffffffffff80871682526020820185905285168183015290517f2a73d58687443b7a81f739a2964d5cf5068b313c8756ae6726b20d09926f864b9181900360600190a15092915050565b73ffffffffffffffffffffffffffffffffffffffff8316600090815260016020526040812054818061238c8684876128f9565b915091506000821180156123a05750600081115b151561243357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f4552433230506f736974696f6e23636c6f73653a2043616e6e6f7420636c6f7360448201527f65203020616d6f756e7400000000000000000000000000000000000000000000606482015290519081900360840190fd5b8581111561243d57fe5b6124478783612922565b60408051838152905173ffffffffffffffffffffffffffffffffffffffff8916917f684222b0069d4a2e5e0d986611cc5182d543904c4e4264bf770d4e51faefc822919081900360200190a29695505050505050565b600160095460ff1660028111156124b057fe5b148015612559575060048054600654604080517f640075f3000000000000000000000000000000000000000000000000000000008152938401919091525173ffffffffffffffffffffffffffffffffffffffff9091169163640075f3916024808301926020929190829003018186803b15801561252c57600080fd5b505afa158015612540573d6000803e3d6000fd5b505050506040513d602081101561255657600080fd5b50515b156125b357600980547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660021790556040517fb147077378b3c0311f1c5a608d4cb621068096d16e8b1fdd1f1157ebc146306490600090a15b565b6000806000806125c485611268565b92508215156125d65760009350612021565b6009546125fe90610100900473ffffffffffffffffffffffffffffffffffffffff16306129f1565b915061260d8360025484612abf565b90506126198584612922565b6040805184815260208101839052815173ffffffffffffffffffffffffffffffffffffffff8816927ff279e6a1f5e320cca91135676d9cb6e44ca8a08c0b88342bcdb1144f6511b568928290030190a260095461269290610100900473ffffffffffffffffffffffffffffffffffffffff168783612ae9565b95945050505050565b73ffffffffffffffffffffffffffffffffffffffff821615156126ba57fe5b6002546126cd908263ffffffff61227d16565b60025573ffffffffffffffffffffffffffffffffffffffff8216600090815260016020526040902054612706908263ffffffff61227d16565b73ffffffffffffffffffffffffffffffffffffffff831660008181526001602090815260408083209490945583518581529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35050565b612773612d12565b61277b612d76565b612783612d95565b61278b612db0565b604080517f1928b3cb00000000000000000000000000000000000000000000000000000000815260048101879052905173ffffffffffffffffffffffffffffffffffffffff881691631928b3cb91602480830192610180929190829003018186803b1580156127f957600080fd5b505afa15801561280d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525061018081101561283357600080fd5b506040805161018081018252825173ffffffffffffffffffffffffffffffffffffffff908116825260208085015182169083015283830151811692820192909252606080840151909216918101919091526080808301519082015260a0808301519082015260c08083015163ffffffff9081169183019190915260e0808401518216908301526101008084015182169083015261012080840151821690830152610140808401518216908301526101609283015116918101919091529695505050505050565b6000806000600254841115151561290c57fe5b6129168587612c88565b96879650945050505050565b73ffffffffffffffffffffffffffffffffffffffff8216151561294157fe5b600254612954908263ffffffff61226b16565b60025573ffffffffffffffffffffffffffffffffffffffff821660009081526001602052604090205461298d908263ffffffff61226b16565b73ffffffffffffffffffffffffffffffffffffffff83166000818152600160209081526040808320949094558351858152935191937fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929081900390910190a35050565b60008273ffffffffffffffffffffffffffffffffffffffff166370a08231836040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015612a8c57600080fd5b505afa158015612aa0573d6000803e3d6000fd5b505050506040513d6020811015612ab657600080fd5b50519392505050565b6000612ae183612ad5868563ffffffff612ca016565b9063ffffffff612cc916565b949350505050565b30811580612b2257508273ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b15612b2c57612c82565b8373ffffffffffffffffffffffffffffffffffffffff1663a9059cbb84846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050600060405180830381600087803b158015612bcf57600080fd5b505af1158015612be3573d6000803e3d6000fd5b50505050612bef612cde565b1515612c8257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602760248201527f546f6b656e496e746572616374237472616e736665723a205472616e7366657260448201527f206661696c656400000000000000000000000000000000000000000000000000606482015290519081900360840190fd5b50505050565b6000818310612c975781612c99565b825b9392505050565b6000821515612cb157506000610760565b50818102818382811515612cc157fe5b041461076057fe5b60008183811515612cd657fe5b049392505050565b6000803d8015612cf55760208114612cfe57612d0a565b60019150612d0a565b60206000803e60005191505b501515919050565b6040805161018081018252600080825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e0810182905261010081018290526101208101829052610140810182905261016081019190915290565b6080604051908101604052806004906020820280388339509192915050565b60408051808201825290600290829080388339509192915050565b60c06040519081016040528060069060208202803883395091929150505600a165627a7a72305820d9691b8519a34d8da5421b2dbdda5d0f328bdc9c3be6cc3cb1a9622174d585c30029",
    "networks": {},
    "schemaVersion": "2.0.1"
}