{
  "contractName": "EVMScriptRegistry",
  "abi": [
    {
      "constant": true,
      "inputs": [
        {
          "name": "_interfaceId",
          "type": "bytes4"
        }
      ],
      "name": "supportsInterface",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_script",
          "type": "bytes"
        }
      ],
      "name": "getScriptExecutor",
      "outputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "hasInitialized",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "REGISTRY_ADD_EXECUTOR_ROLE",
      "outputs": [
        {
          "name": "",
          "type": "bytes32"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_script",
          "type": "bytes"
        }
      ],
      "name": "getEVMScriptExecutor",
      "outputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "getRecoveryVault",
      "outputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_executorId",
          "type": "uint256"
        }
      ],
      "name": "disableScriptExecutor",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "token",
          "type": "address"
        }
      ],
      "name": "allowRecoverability",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "appId",
      "outputs": [
        {
          "name": "",
          "type": "bytes32"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [],
      "name": "initialize",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_executor",
          "type": "address"
        }
      ],
      "name": "addScriptExecutor",
      "outputs": [
        {
          "name": "id",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "getInitializationBlock",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_token",
          "type": "address"
        }
      ],
      "name": "transferToVault",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_sender",
          "type": "address"
        },
        {
          "name": "_role",
          "type": "bytes32"
        },
        {
          "name": "_params",
          "type": "uint256[]"
        }
      ],
      "name": "canPerform",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "getEVMScriptRegistry",
      "outputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "REGISTRY_MANAGER_ROLE",
      "outputs": [
        {
          "name": "",
          "type": "bytes32"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_executorId",
          "type": "uint256"
        }
      ],
      "name": "enableScriptExecutor",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "kernel",
      "outputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "isPetrified",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "name": "executors",
      "outputs": [
        {
          "name": "executor",
          "type": "address"
        },
        {
          "name": "enabled",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "executorId",
          "type": "uint256"
        },
        {
          "indexed": true,
          "name": "executorAddress",
          "type": "address"
        }
      ],
      "name": "EnableExecutor",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "executorId",
          "type": "uint256"
        },
        {
          "indexed": true,
          "name": "executorAddress",
          "type": "address"
        }
      ],
      "name": "DisableExecutor",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "executor",
          "type": "address"
        },
        {
          "indexed": false,
          "name": "script",
          "type": "bytes"
        },
        {
          "indexed": false,
          "name": "input",
          "type": "bytes"
        },
        {
          "indexed": false,
          "name": "returnData",
          "type": "bytes"
        }
      ],
      "name": "ScriptResult",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "vault",
          "type": "address"
        },
        {
          "indexed": true,
          "name": "token",
          "type": "address"
        },
        {
          "indexed": false,
          "name": "amount",
          "type": "uint256"
        }
      ],
      "name": "RecoverToVault",
      "type": "event"
    }
  ],
  "bytecode": "0x6080604052620000176401000000006200001d810204565b6200023b565b6200003064010000000062000125810204565b60408051808201909152601881527f494e49545f414c52454144595f494e495449414c495a45440000000000000000602082015290156200010c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015620000d0578181015183820152602001620000b6565b50505050905090810190601f168015620000fe5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b506200012360001964010000000062000154810204565b565b60006200014f6000805160206200180a833981519152640100000000620012246200023382021704565b905090565b6200016764010000000062000125810204565b60408051808201909152601881527f494e49545f414c52454144595f494e495449414c495a454400000000000000006020820152901562000206576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252838181518152602001915080519060200190808383600083811015620000d0578181015183820152602001620000b6565b50620002306000805160206200180a83398151915282640100000000620014886200023782021704565b50565b5490565b9055565b6115bf806200024b6000396000f3006080604052600436106100f85763ffffffff60e060020a60003504166301ffc9a781146100fd57806304bf2a7f146101335780630803fac0146101a857806319f3d10f146101bd5780632914b9bd146101e457806332f0a3b51461023d5780635ca4d4bb146102525780637e7db6e11461026c57806380afdea81461028d5780638129fc1c146102a257806387a16f12146102b75780638b3dd749146102d85780639d4941d8146102ed578063a1658fad1461030e578063a479e50814610375578063bd8fde1c1461038a578063cff606a01461039f578063d4aae0c4146103b7578063de4796ed146103cc578063f97a05df146103e1575b600080fd5b34801561010957600080fd5b5061011f600160e060020a03196004351661041c565b604080519115158252519081900360200190f35b34801561013f57600080fd5b506040805160206004803580820135601f810184900484028501840190955284845261018c94369492936024939284019190819084018382808284375094975061044b9650505050505050565b60408051600160a060020a039092168252519081900360200190f35b3480156101b457600080fd5b5061011f610568565b3480156101c957600080fd5b506101d2610591565b60408051918252519081900360200190f35b3480156101f057600080fd5b506040805160206004803580820135601f810184900484028501840190955284845261018c9436949293602493928401919081908401838280828437509497506105a39650505050505050565b34801561024957600080fd5b5061018c610689565b34801561025e57600080fd5b5061026a600435610701565b005b34801561027857600080fd5b5061011f600160a060020a0360043516610892565b34801561029957600080fd5b506101d2610898565b3480156102ae57600080fd5b5061026a6108c8565b3480156102c357600080fd5b506101d2600160a060020a0360043516610963565b3480156102e457600080fd5b506101d2610a93565b3480156102f957600080fd5b5061026a600160a060020a0360043516610aac565b34801561031a57600080fd5b50604080516020600460443581810135838102808601850190965280855261011f958335600160a060020a0316956024803596369695606495939492019291829185019084908082843750949750610d339650505050505050565b34801561038157600080fd5b5061018c610e83565b34801561039657600080fd5b506101d2610f22565b3480156103ab57600080fd5b5061026a600435610f34565b3480156103c357600080fd5b5061018c611151565b3480156103d857600080fd5b5061011f61117c565b3480156103ed57600080fd5b506103f960043561118f565b60408051600160a060020a03909316835290151560208301528051918290030190f35b6000610427826111b6565b806104455750600160e060020a0319821660e260020a6315014f9b02145b92915050565b60008060006004845110156040805190810160405280601e81526020017f45564d5245475f5343524950545f4c454e4754485f544f4f5f53484f5254000081525090151561051a5760405160e560020a62461bcd0281526004018080602001828103825283818151815260200191508051906020019080838360005b838110156104df5781810151838201526020016104c7565b50505050905090810190601f16801561050c5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50610524846111d2565b63ffffffff1660008181526001602052604090208054919350915060a060020a900460ff16610554576000610560565b8054600160a060020a03165b949350505050565b600080610573610a93565b9050801580159061058b5750806105886111df565b10155b91505090565b60008051602061155483398151915281565b60006105ad610e83565b600160a060020a03166304bf2a7f836040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561060b5781810151838201526020016105f3565b50505050905090810190601f1680156106385780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15801561065757600080fd5b505af115801561066b573d6000803e3d6000fd5b505050506040513d602081101561068157600080fd5b505192915050565b6000610693611151565b600160a060020a03166332f0a3b56040518163ffffffff1660e060020a028152600401602060405180830381600087803b1580156106d057600080fd5b505af11580156106e4573d6000803e3d6000fd5b505050506040513d60208110156106fa57600080fd5b5051905090565b600060008051602061153483398151915261071b836111e3565b610726338383610d33565b60408051808201909152600f8152608a60020a6e10541417d055551217d190525311510260208201529015156107a15760405160e560020a62461bcd028152600401808060200182810382528381815181526020019150805190602001908083836000838110156104df5781810151838201526020016104c7565b506000848152600160209081526040918290208054835180850190945260188452604260020a77115593549151d7d1561150d55513d497d11254d0509311510292840192909252945060a060020a900460ff1615156108455760405160e560020a62461bcd028152600401808060200182810382528381815181526020019150805190602001908083836000838110156104df5781810151838201526020016104c7565b50825460a060020a60ff021981168455604051600160a060020a039091169085907fc13cd9238f8ab1e5ab1f95cde77e89288fe5c328d04739adffd57b144b408fd190600090a350505050565b50600190565b60006108c37fd625496217aa6a3453eecb9c3489dc5a53e6c67b444329ea2b2cbc9ff547639b611224565b905090565b6108d0610a93565b6040805180820190915260188152604260020a771253925517d053149150511657d25392551250531256915102602082015290156109535760405160e560020a62461bcd028152600401808060200182810382528381815181526020019150805190602001908083836000838110156104df5781810151838201526020016104c7565b5061095c611228565b6001600055565b604080516000808252602082019092528190600080516020611554833981519152906109929033908390610d33565b60408051808201909152600f8152608a60020a6e10541417d055551217d19052531151026020820152901515610a0d5760405160e560020a62461bcd028152600401808060200182810382528381815181526020019150805190602001908083836000838110156104df5781810151838201526020016104c7565b506000805460018082018355604080518082018252600160a060020a03808a168083526020808401868152878952959052838720925183549551151560a060020a0260a060020a60ff021991909316600160a060020a03199096169590951794909416179055519194509184916000805160206115748339815191529190a35092915050565b60006108c3600080516020611514833981519152611224565b6000806000610aba84610892565b6040805180820190915260128152607260020a71149150d3d5915497d11254d0531313d5d151026020820152901515610b385760405160e560020a62461bcd028152600401808060200182810382528381815181526020019150805190602001908083836000838110156104df5781810151838201526020016104c7565b50610b41610689565b9250610b4c836112e0565b60408051808201909152601a81527f5245434f5645525f5641554c545f4e4f545f434f4e54524143540000000000006020820152901515610bd25760405160e560020a62461bcd028152600401808060200182810382528381815181526020019150805190602001908083836000838110156104df5781810151838201526020016104c7565b50600160a060020a0384161515610c235760405130319250600160a060020a0384169083156108fc029084906000818181858888f19350505050158015610c1d573d6000803e3d6000fd5b50610ce2565b5082610c3e600160a060020a0382163063ffffffff61130d16565b9150610c5a600160a060020a038216848463ffffffff6113f716565b60408051808201909152601d81527f5245434f5645525f544f4b454e5f5452414e534645525f4641494c45440000006020820152901515610ce05760405160e560020a62461bcd028152600401808060200182810382528381815181526020019150805190602001908083836000838110156104df5781810151838201526020016104c7565b505b83600160a060020a031683600160a060020a03167f596caf56044b55fb8c4ca640089bbc2b63cae3e978b851f5745cbb7c5b288e02846040518082815260200191505060405180910390a350505050565b600080610d3e610568565b1515610d4d5760009150610e7b565b610d55611151565b9050600160a060020a0381161515610d705760009150610e7b565b80600160a060020a031663fdef9106863087610d8b88611457565b60405160e060020a63ffffffff8716028152600160a060020a03808616600483019081529085166024830152604482018490526080606483019081528351608484015283519192909160a490910190602085019080838360005b83811015610dfd578181015183820152602001610de5565b50505050905090810190601f168015610e2a5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015610e4c57600080fd5b505af1158015610e60573d6000803e3d6000fd5b505050506040513d6020811015610e7657600080fd5b505191505b509392505050565b600080610e8e611151565b6040805160e360020a6317c0177b0281527fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb60048201527fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6160248201529051600160a060020a03929092169163be00bbd8916044808201926020929091908290030181600087803b15801561065757600080fd5b60008051602061153483398151915281565b6000600080516020611534833981519152610f4e836111e3565b610f59338383610d33565b60408051808201909152600f8152608a60020a6e10541417d055551217d19052531151026020820152901515610fd45760405160e560020a62461bcd028152600401808060200182810382528381815181526020019150805190602001908083836000838110156104df5781810151838201526020016104c7565b5083600081118015610fe7575060005481105b60408051808201909152601a81527f45564d5245475f494e4558495354454e545f4558454355544f52000000000000602082015290151561106d5760405160e560020a62461bcd028152600401808060200182810382528381815181526020019150805190602001908083836000838110156104df5781810151838201526020016104c7565b506000858152600160209081526040918290208054835180850190945260178452604a60020a76115593549151d7d1561150d55513d497d15390509311510292840192909252955060a060020a900460ff161561110f5760405160e560020a62461bcd028152600401808060200182810382528381815181526020019150805190602001908083836000838110156104df5781810151838201526020016104c7565b50835460a060020a60ff02191660a060020a17808555604051600160a060020a0390911690869060008051602061157483398151915290600090a35050505050565b60006108c37f4172f0f7d2289153072b0a6ca36959e0cbe2efc3afe50fc81636caa96338137b611224565b6000600019611189610a93565b14905090565b600160205260009081526040902054600160a060020a0381169060a060020a900460ff1682565b600160e060020a0319811660e060020a6301ffc9a70214919050565b6000610445826000611461565b4390565b604080516001808252818301909252606091602080830190803883390190505090508181600081518110151561121557fe5b60209081029091010152919050565b5490565b611230610a93565b6040805180820190915260188152604260020a771253925517d053149150511657d25392551250531256915102602082015290156112b35760405160e560020a62461bcd028152600401808060200182810382528381815181526020019150805190602001908083836000838110156104df5781810151838201526020016104c7565b506112da6112bf6111df565b6000805160206115148339815191529063ffffffff61148816565b565b5490565b600080600160a060020a03831615156112fc5760009150611307565b823b90506000811191505b50919050565b60408051600160a060020a038316602480830191909152825180830390910181526044909101909152602081018051600160e060020a031660e060020a6370a08231021790526000908180611362868461148c565b60408051808201909152601c81527f534146455f4552435f32305f42414c414e43455f524556455254454400000000602082015291935091508215156113ed5760405160e560020a62461bcd028152600401808060200182810382528381815181526020019150805190602001908083836000838110156104df5781810151838201526020016104c7565b5095945050505050565b60408051600160a060020a03841660248201526044808201849052825180830390910181526064909101909152602081018051600160e060020a031660e060020a63a9059cbb0217905260009061144e85826114bd565b95945050505050565b8051602002815290565b60008061146e848461150b565b60e060020a600160e060020a031990911604949350505050565b9055565b6000806000806040516020818751602089018a5afa925060008311156114b157805191505b50909590945092505050565b6000806040516020818551602087016000895af16000811115611501573d80156114ee57602081146114f7576114ff565b600193506114ff565b600183511493505b505b5090949350505050565b0160200151905600ebb05b386a8d34882b8711d156f463690983dc47815980fb82aeeff1aa43579ef7a450ef335e1892cb42c8ca72e7242359d7711924b75db5717410da3f614aa3c4e90f38eea8c4212a009ca7b8947943ba4d4a58d19b683417f65291d1cd9ed27697fa3288629310075a63816e294207c84f3cfc18ccf8e18eb917ec0bb56699a165627a7a723058201194c257e8a254727d2a94441b94a9f8a62844d973891a7a2e3d3315854c9a490029ebb05b386a8d34882b8711d156f463690983dc47815980fb82aeeff1aa43579e",
  "deployedBytecode": "0x6080604052600436106100f85763ffffffff60e060020a60003504166301ffc9a781146100fd57806304bf2a7f146101335780630803fac0146101a857806319f3d10f146101bd5780632914b9bd146101e457806332f0a3b51461023d5780635ca4d4bb146102525780637e7db6e11461026c57806380afdea81461028d5780638129fc1c146102a257806387a16f12146102b75780638b3dd749146102d85780639d4941d8146102ed578063a1658fad1461030e578063a479e50814610375578063bd8fde1c1461038a578063cff606a01461039f578063d4aae0c4146103b7578063de4796ed146103cc578063f97a05df146103e1575b600080fd5b34801561010957600080fd5b5061011f600160e060020a03196004351661041c565b604080519115158252519081900360200190f35b34801561013f57600080fd5b506040805160206004803580820135601f810184900484028501840190955284845261018c94369492936024939284019190819084018382808284375094975061044b9650505050505050565b60408051600160a060020a039092168252519081900360200190f35b3480156101b457600080fd5b5061011f610568565b3480156101c957600080fd5b506101d2610591565b60408051918252519081900360200190f35b3480156101f057600080fd5b506040805160206004803580820135601f810184900484028501840190955284845261018c9436949293602493928401919081908401838280828437509497506105a39650505050505050565b34801561024957600080fd5b5061018c610689565b34801561025e57600080fd5b5061026a600435610701565b005b34801561027857600080fd5b5061011f600160a060020a0360043516610892565b34801561029957600080fd5b506101d2610898565b3480156102ae57600080fd5b5061026a6108c8565b3480156102c357600080fd5b506101d2600160a060020a0360043516610963565b3480156102e457600080fd5b506101d2610a93565b3480156102f957600080fd5b5061026a600160a060020a0360043516610aac565b34801561031a57600080fd5b50604080516020600460443581810135838102808601850190965280855261011f958335600160a060020a0316956024803596369695606495939492019291829185019084908082843750949750610d339650505050505050565b34801561038157600080fd5b5061018c610e83565b34801561039657600080fd5b506101d2610f22565b3480156103ab57600080fd5b5061026a600435610f34565b3480156103c357600080fd5b5061018c611151565b3480156103d857600080fd5b5061011f61117c565b3480156103ed57600080fd5b506103f960043561118f565b60408051600160a060020a03909316835290151560208301528051918290030190f35b6000610427826111b6565b806104455750600160e060020a0319821660e260020a6315014f9b02145b92915050565b60008060006004845110156040805190810160405280601e81526020017f45564d5245475f5343524950545f4c454e4754485f544f4f5f53484f5254000081525090151561051a5760405160e560020a62461bcd0281526004018080602001828103825283818151815260200191508051906020019080838360005b838110156104df5781810151838201526020016104c7565b50505050905090810190601f16801561050c5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b50610524846111d2565b63ffffffff1660008181526001602052604090208054919350915060a060020a900460ff16610554576000610560565b8054600160a060020a03165b949350505050565b600080610573610a93565b9050801580159061058b5750806105886111df565b10155b91505090565b60008051602061155483398151915281565b60006105ad610e83565b600160a060020a03166304bf2a7f836040518263ffffffff1660e060020a0281526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561060b5781810151838201526020016105f3565b50505050905090810190601f1680156106385780820380516001836020036101000a031916815260200191505b5092505050602060405180830381600087803b15801561065757600080fd5b505af115801561066b573d6000803e3d6000fd5b505050506040513d602081101561068157600080fd5b505192915050565b6000610693611151565b600160a060020a03166332f0a3b56040518163ffffffff1660e060020a028152600401602060405180830381600087803b1580156106d057600080fd5b505af11580156106e4573d6000803e3d6000fd5b505050506040513d60208110156106fa57600080fd5b5051905090565b600060008051602061153483398151915261071b836111e3565b610726338383610d33565b60408051808201909152600f8152608a60020a6e10541417d055551217d190525311510260208201529015156107a15760405160e560020a62461bcd028152600401808060200182810382528381815181526020019150805190602001908083836000838110156104df5781810151838201526020016104c7565b506000848152600160209081526040918290208054835180850190945260188452604260020a77115593549151d7d1561150d55513d497d11254d0509311510292840192909252945060a060020a900460ff1615156108455760405160e560020a62461bcd028152600401808060200182810382528381815181526020019150805190602001908083836000838110156104df5781810151838201526020016104c7565b50825460a060020a60ff021981168455604051600160a060020a039091169085907fc13cd9238f8ab1e5ab1f95cde77e89288fe5c328d04739adffd57b144b408fd190600090a350505050565b50600190565b60006108c37fd625496217aa6a3453eecb9c3489dc5a53e6c67b444329ea2b2cbc9ff547639b611224565b905090565b6108d0610a93565b6040805180820190915260188152604260020a771253925517d053149150511657d25392551250531256915102602082015290156109535760405160e560020a62461bcd028152600401808060200182810382528381815181526020019150805190602001908083836000838110156104df5781810151838201526020016104c7565b5061095c611228565b6001600055565b604080516000808252602082019092528190600080516020611554833981519152906109929033908390610d33565b60408051808201909152600f8152608a60020a6e10541417d055551217d19052531151026020820152901515610a0d5760405160e560020a62461bcd028152600401808060200182810382528381815181526020019150805190602001908083836000838110156104df5781810151838201526020016104c7565b506000805460018082018355604080518082018252600160a060020a03808a168083526020808401868152878952959052838720925183549551151560a060020a0260a060020a60ff021991909316600160a060020a03199096169590951794909416179055519194509184916000805160206115748339815191529190a35092915050565b60006108c3600080516020611514833981519152611224565b6000806000610aba84610892565b6040805180820190915260128152607260020a71149150d3d5915497d11254d0531313d5d151026020820152901515610b385760405160e560020a62461bcd028152600401808060200182810382528381815181526020019150805190602001908083836000838110156104df5781810151838201526020016104c7565b50610b41610689565b9250610b4c836112e0565b60408051808201909152601a81527f5245434f5645525f5641554c545f4e4f545f434f4e54524143540000000000006020820152901515610bd25760405160e560020a62461bcd028152600401808060200182810382528381815181526020019150805190602001908083836000838110156104df5781810151838201526020016104c7565b50600160a060020a0384161515610c235760405130319250600160a060020a0384169083156108fc029084906000818181858888f19350505050158015610c1d573d6000803e3d6000fd5b50610ce2565b5082610c3e600160a060020a0382163063ffffffff61130d16565b9150610c5a600160a060020a038216848463ffffffff6113f716565b60408051808201909152601d81527f5245434f5645525f544f4b454e5f5452414e534645525f4641494c45440000006020820152901515610ce05760405160e560020a62461bcd028152600401808060200182810382528381815181526020019150805190602001908083836000838110156104df5781810151838201526020016104c7565b505b83600160a060020a031683600160a060020a03167f596caf56044b55fb8c4ca640089bbc2b63cae3e978b851f5745cbb7c5b288e02846040518082815260200191505060405180910390a350505050565b600080610d3e610568565b1515610d4d5760009150610e7b565b610d55611151565b9050600160a060020a0381161515610d705760009150610e7b565b80600160a060020a031663fdef9106863087610d8b88611457565b60405160e060020a63ffffffff8716028152600160a060020a03808616600483019081529085166024830152604482018490526080606483019081528351608484015283519192909160a490910190602085019080838360005b83811015610dfd578181015183820152602001610de5565b50505050905090810190601f168015610e2a5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015610e4c57600080fd5b505af1158015610e60573d6000803e3d6000fd5b505050506040513d6020811015610e7657600080fd5b505191505b509392505050565b600080610e8e611151565b6040805160e360020a6317c0177b0281527fd6f028ca0e8edb4a8c9757ca4fdccab25fa1e0317da1188108f7d2dee14902fb60048201527fddbcfd564f642ab5627cf68b9b7d374fb4f8a36e941a75d89c87998cef03bd6160248201529051600160a060020a03929092169163be00bbd8916044808201926020929091908290030181600087803b15801561065757600080fd5b60008051602061153483398151915281565b6000600080516020611534833981519152610f4e836111e3565b610f59338383610d33565b60408051808201909152600f8152608a60020a6e10541417d055551217d19052531151026020820152901515610fd45760405160e560020a62461bcd028152600401808060200182810382528381815181526020019150805190602001908083836000838110156104df5781810151838201526020016104c7565b5083600081118015610fe7575060005481105b60408051808201909152601a81527f45564d5245475f494e4558495354454e545f4558454355544f52000000000000602082015290151561106d5760405160e560020a62461bcd028152600401808060200182810382528381815181526020019150805190602001908083836000838110156104df5781810151838201526020016104c7565b506000858152600160209081526040918290208054835180850190945260178452604a60020a76115593549151d7d1561150d55513d497d15390509311510292840192909252955060a060020a900460ff161561110f5760405160e560020a62461bcd028152600401808060200182810382528381815181526020019150805190602001908083836000838110156104df5781810151838201526020016104c7565b50835460a060020a60ff02191660a060020a17808555604051600160a060020a0390911690869060008051602061157483398151915290600090a35050505050565b60006108c37f4172f0f7d2289153072b0a6ca36959e0cbe2efc3afe50fc81636caa96338137b611224565b6000600019611189610a93565b14905090565b600160205260009081526040902054600160a060020a0381169060a060020a900460ff1682565b600160e060020a0319811660e060020a6301ffc9a70214919050565b6000610445826000611461565b4390565b604080516001808252818301909252606091602080830190803883390190505090508181600081518110151561121557fe5b60209081029091010152919050565b5490565b611230610a93565b6040805180820190915260188152604260020a771253925517d053149150511657d25392551250531256915102602082015290156112b35760405160e560020a62461bcd028152600401808060200182810382528381815181526020019150805190602001908083836000838110156104df5781810151838201526020016104c7565b506112da6112bf6111df565b6000805160206115148339815191529063ffffffff61148816565b565b5490565b600080600160a060020a03831615156112fc5760009150611307565b823b90506000811191505b50919050565b60408051600160a060020a038316602480830191909152825180830390910181526044909101909152602081018051600160e060020a031660e060020a6370a08231021790526000908180611362868461148c565b60408051808201909152601c81527f534146455f4552435f32305f42414c414e43455f524556455254454400000000602082015291935091508215156113ed5760405160e560020a62461bcd028152600401808060200182810382528381815181526020019150805190602001908083836000838110156104df5781810151838201526020016104c7565b5095945050505050565b60408051600160a060020a03841660248201526044808201849052825180830390910181526064909101909152602081018051600160e060020a031660e060020a63a9059cbb0217905260009061144e85826114bd565b95945050505050565b8051602002815290565b60008061146e848461150b565b60e060020a600160e060020a031990911604949350505050565b9055565b6000806000806040516020818751602089018a5afa925060008311156114b157805191505b50909590945092505050565b6000806040516020818551602087016000895af16000811115611501573d80156114ee57602081146114f7576114ff565b600193506114ff565b600183511493505b505b5090949350505050565b0160200151905600ebb05b386a8d34882b8711d156f463690983dc47815980fb82aeeff1aa43579ef7a450ef335e1892cb42c8ca72e7242359d7711924b75db5717410da3f614aa3c4e90f38eea8c4212a009ca7b8947943ba4d4a58d19b683417f65291d1cd9ed27697fa3288629310075a63816e294207c84f3cfc18ccf8e18eb917ec0bb56699a165627a7a723058201194c257e8a254727d2a94441b94a9f8a62844d973891a7a2e3d3315854c9a490029",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
