forked from 88-mph/88mphlandingpage
-
Notifications
You must be signed in to change notification settings - Fork 1
/
34.70a22c434d9d064f4c57.js
1 lines (1 loc) · 432 KB
/
34.70a22c434d9d064f4c57.js
1
(window.webpackJsonp=window.webpackJsonp||[]).push([[34],{"1kdD":function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getEnsStartBlock=function(e){switch(e){case 1:case"1":return 3327417;case 3:case"3":return 25409;default:return 0}},t.validateName=f,t.isLabelValid=function(e){try{if(f(e),-1===e.indexOf("."))return!0}catch(t){return console.log(t),!1}},Object.defineProperty(t,"isEncodedLabelhash",{enumerable:!0,get:function(){return i.isEncodedLabelhash}}),Object.defineProperty(t,"isDecrypted",{enumerable:!0,get:function(){return i.isDecrypted}}),Object.defineProperty(t,"decodeLabelhash",{enumerable:!0,get:function(){return i.decodeLabelhash}}),Object.defineProperty(t,"encodeLabelhash",{enumerable:!0,get:function(){return i.encodeLabelhash}}),Object.defineProperty(t,"labelhash",{enumerable:!0,get:function(){return i.labelhash}}),Object.defineProperty(t,"encodeContenthash",{enumerable:!0,get:function(){return a.encodeContenthash}}),Object.defineProperty(t,"decodeContenthash",{enumerable:!0,get:function(){return a.decodeContenthash}}),Object.defineProperty(t,"isValidContenthash",{enumerable:!0,get:function(){return a.isValidContenthash}}),Object.defineProperty(t,"namehash",{enumerable:!0,get:function(){return o.namehash}}),t.parseSearchTerm=t.mergeLabels=t.checkLabels=t.emptyAddress=t.uniq=void 0;var r=n("4VAs"),i=n("2LwN"),a=n("sDqg"),s=n("LAvi"),o=n("vUID");function f(e){var t=e.split(".");if(t.filter(function(e){return e.length<1}).length>0)throw new Error("Domain cannot have empty labels");var n=t.map(function(e){return(0,i.isEncodedLabelhash)(e)?e:(0,s.normalize)(e)});try{return n.join(".")}catch(r){throw r}}t.uniq=function(e,t){return e.filter(function(n,r){return e.map(function(e){return e[t]}).indexOf(n[t])===r})},t.checkLabels=function(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return t.map(function(e){return null})},t.mergeLabels=function(e,t){return e.map(function(e,n){return e||t[n]})},t.parseSearchTerm=function(e,t){var n=/[^.]+$/;try{f(e)}catch(s){return"invalid"}if(-1!==e.indexOf(".")){var i=e.split("."),a=e.match(n)?e.match(n)[0]:"";return t?"eth"===a&&i[i.length-2].length<3?"short":"supported":"unsupported"}return r.ethers.utils.isAddress(e)?"address":t?"tld":"search"},t.emptyAddress="0x0000000000000000000000000000000000000000"},"2LwN":function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.encodeLabelhash=function(e){if(!e.startsWith("0x"))throw new Error("Expected label hash to start with 0x");if(66!==e.length)throw new Error("Expected label hash to have a length of 66");return"[".concat(e.slice(2),"]")},t.decodeLabelhash=a,t.isEncodedLabelhash=s,t.isDecrypted=function(e){return e.split(".").reduce(function(e,t){return!1!==e&&!s(t)},!0)},t.labelhash=function(e){return s(e)?"0x"+a(e):"0x"+i((0,r.normalize)(e))};var r=n("LAvi"),i=n("HFX+").keccak_256;function a(e){if(!e.startsWith("[")||!e.endsWith("]"))throw Error("Expected encoded labelhash to start and end with square brackets");if(66!==e.length)throw Error("Expected encoded labelhash to have a length of 66");return"".concat(e.slice(1,-1))}function s(e){return e.startsWith("[")&&e.endsWith("]")&&66===e.length}},J4zp:function(e,t,n){var r=n("wTVA"),i=n("m0LI"),a=n("ZhPi"),s=n("wkBT");e.exports=function(e,t){return r(e)||i(e,t)||a(e,t)||s()}},Vwf4:function(e){e.exports=JSON.parse('{"contractName":"ENS","abi":[{"anonymous":false,"inputs":[{"indexed":true,"name":"node","type":"bytes32"},{"indexed":true,"name":"label","type":"bytes32"},{"indexed":false,"name":"owner","type":"address"}],"name":"NewOwner","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"node","type":"bytes32"},{"indexed":false,"name":"owner","type":"address"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"node","type":"bytes32"},{"indexed":false,"name":"resolver","type":"address"}],"name":"NewResolver","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"node","type":"bytes32"},{"indexed":false,"name":"ttl","type":"uint64"}],"name":"NewTTL","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"owner","type":"address"},{"indexed":true,"name":"operator","type":"address"},{"indexed":false,"name":"approved","type":"bool"}],"name":"ApprovalForAll","type":"event"},{"constant":false,"inputs":[{"name":"node","type":"bytes32"},{"name":"owner","type":"address"},{"name":"resolver","type":"address"},{"name":"ttl","type":"uint64"}],"name":"setRecord","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"node","type":"bytes32"},{"name":"label","type":"bytes32"},{"name":"owner","type":"address"},{"name":"resolver","type":"address"},{"name":"ttl","type":"uint64"}],"name":"setSubnodeRecord","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"node","type":"bytes32"},{"name":"label","type":"bytes32"},{"name":"owner","type":"address"}],"name":"setSubnodeOwner","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"node","type":"bytes32"},{"name":"resolver","type":"address"}],"name":"setResolver","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"node","type":"bytes32"},{"name":"owner","type":"address"}],"name":"setOwner","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"node","type":"bytes32"},{"name":"ttl","type":"uint64"}],"name":"setTTL","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"operator","type":"address"},{"name":"approved","type":"bool"}],"name":"setApprovalForAll","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"node","type":"bytes32"}],"name":"owner","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"node","type":"bytes32"}],"name":"resolver","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"node","type":"bytes32"}],"name":"ttl","outputs":[{"name":"","type":"uint64"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"node","type":"bytes32"}],"name":"recordExists","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"owner","type":"address"},{"name":"operator","type":"address"}],"name":"isApprovedForAll","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"}],"bytecode":"0x","deployedBytecode":"0x","sourceMap":"","deployedSourceMap":"","source":"pragma solidity >=0.4.24;\\n\\ninterface ENS {\\n\\n // Logged when the owner of a node assigns a new owner to a subnode.\\n event NewOwner(bytes32 indexed node, bytes32 indexed label, address owner);\\n\\n // Logged when the owner of a node transfers ownership to a new account.\\n event Transfer(bytes32 indexed node, address owner);\\n\\n // Logged when the resolver for a node changes.\\n event NewResolver(bytes32 indexed node, address resolver);\\n\\n // Logged when the TTL of a node changes\\n event NewTTL(bytes32 indexed node, uint64 ttl);\\n\\n // Logged when an operator is added or removed.\\n event ApprovalForAll(address indexed owner, address indexed operator, bool approved);\\n\\n function setRecord(bytes32 node, address owner, address resolver, uint64 ttl) external;\\n function setSubnodeRecord(bytes32 node, bytes32 label, address owner, address resolver, uint64 ttl) external;\\n function setSubnodeOwner(bytes32 node, bytes32 label, address owner) external returns(bytes32);\\n function setResolver(bytes32 node, address resolver) external;\\n function setOwner(bytes32 node, address owner) external;\\n function setTTL(bytes32 node, uint64 ttl) external;\\n function setApprovalForAll(address operator, bool approved) external;\\n function owner(bytes32 node) external view returns (address);\\n function resolver(bytes32 node) external view returns (address);\\n function ttl(bytes32 node) external view returns (uint64);\\n function recordExists(bytes32 node) external view returns (bool);\\n function isApprovedForAll(address owner, address operator) external view returns (bool);\\n}\\n","sourcePath":"/Users/makoto/work/ens/ens/contracts/ENS.sol","ast":{"absolutePath":"/Users/makoto/work/ens/ens/contracts/ENS.sol","exportedSymbols":{"ENS":[436]},"id":437,"nodeType":"SourceUnit","nodes":[{"id":301,"literals":["solidity",">=","0.4",".24"],"nodeType":"PragmaDirective","src":"0:25:2"},{"baseContracts":[],"contractDependencies":[],"contractKind":"interface","documentation":null,"fullyImplemented":false,"id":436,"linearizedBaseContracts":[436],"name":"ENS","nodeType":"ContractDefinition","nodes":[{"anonymous":false,"documentation":null,"id":309,"name":"NewOwner","nodeType":"EventDefinition","parameters":{"id":308,"nodeType":"ParameterList","parameters":[{"constant":false,"id":303,"indexed":true,"name":"node","nodeType":"VariableDeclaration","scope":309,"src":"136:20:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":302,"name":"bytes32","nodeType":"ElementaryTypeName","src":"136:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":305,"indexed":true,"name":"label","nodeType":"VariableDeclaration","scope":309,"src":"158:21:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":304,"name":"bytes32","nodeType":"ElementaryTypeName","src":"158:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":307,"indexed":false,"name":"owner","nodeType":"VariableDeclaration","scope":309,"src":"181:13:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":306,"name":"address","nodeType":"ElementaryTypeName","src":"181:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"135:60:2"},"src":"121:75:2"},{"anonymous":false,"documentation":null,"id":315,"name":"Transfer","nodeType":"EventDefinition","parameters":{"id":314,"nodeType":"ParameterList","parameters":[{"constant":false,"id":311,"indexed":true,"name":"node","nodeType":"VariableDeclaration","scope":315,"src":"294:20:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":310,"name":"bytes32","nodeType":"ElementaryTypeName","src":"294:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":313,"indexed":false,"name":"owner","nodeType":"VariableDeclaration","scope":315,"src":"316:13:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":312,"name":"address","nodeType":"ElementaryTypeName","src":"316:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"293:37:2"},"src":"279:52:2"},{"anonymous":false,"documentation":null,"id":321,"name":"NewResolver","nodeType":"EventDefinition","parameters":{"id":320,"nodeType":"ParameterList","parameters":[{"constant":false,"id":317,"indexed":true,"name":"node","nodeType":"VariableDeclaration","scope":321,"src":"407:20:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":316,"name":"bytes32","nodeType":"ElementaryTypeName","src":"407:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":319,"indexed":false,"name":"resolver","nodeType":"VariableDeclaration","scope":321,"src":"429:16:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":318,"name":"address","nodeType":"ElementaryTypeName","src":"429:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"406:40:2"},"src":"389:58:2"},{"anonymous":false,"documentation":null,"id":327,"name":"NewTTL","nodeType":"EventDefinition","parameters":{"id":326,"nodeType":"ParameterList","parameters":[{"constant":false,"id":323,"indexed":true,"name":"node","nodeType":"VariableDeclaration","scope":327,"src":"511:20:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":322,"name":"bytes32","nodeType":"ElementaryTypeName","src":"511:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":325,"indexed":false,"name":"ttl","nodeType":"VariableDeclaration","scope":327,"src":"533:10:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":324,"name":"uint64","nodeType":"ElementaryTypeName","src":"533:6:2","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"value":null,"visibility":"internal"}],"src":"510:34:2"},"src":"498:47:2"},{"anonymous":false,"documentation":null,"id":335,"name":"ApprovalForAll","nodeType":"EventDefinition","parameters":{"id":334,"nodeType":"ParameterList","parameters":[{"constant":false,"id":329,"indexed":true,"name":"owner","nodeType":"VariableDeclaration","scope":335,"src":"624:21:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":328,"name":"address","nodeType":"ElementaryTypeName","src":"624:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"},{"constant":false,"id":331,"indexed":true,"name":"operator","nodeType":"VariableDeclaration","scope":335,"src":"647:24:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":330,"name":"address","nodeType":"ElementaryTypeName","src":"647:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"},{"constant":false,"id":333,"indexed":false,"name":"approved","nodeType":"VariableDeclaration","scope":335,"src":"673:13:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":332,"name":"bool","nodeType":"ElementaryTypeName","src":"673:4:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"value":null,"visibility":"internal"}],"src":"623:64:2"},"src":"603:85:2"},{"body":null,"documentation":null,"id":346,"implemented":false,"kind":"function","modifiers":[],"name":"setRecord","nodeType":"FunctionDefinition","parameters":{"id":344,"nodeType":"ParameterList","parameters":[{"constant":false,"id":337,"name":"node","nodeType":"VariableDeclaration","scope":346,"src":"713:12:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":336,"name":"bytes32","nodeType":"ElementaryTypeName","src":"713:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":339,"name":"owner","nodeType":"VariableDeclaration","scope":346,"src":"727:13:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":338,"name":"address","nodeType":"ElementaryTypeName","src":"727:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"},{"constant":false,"id":341,"name":"resolver","nodeType":"VariableDeclaration","scope":346,"src":"742:16:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":340,"name":"address","nodeType":"ElementaryTypeName","src":"742:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"},{"constant":false,"id":343,"name":"ttl","nodeType":"VariableDeclaration","scope":346,"src":"760:10:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":342,"name":"uint64","nodeType":"ElementaryTypeName","src":"760:6:2","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"value":null,"visibility":"internal"}],"src":"712:59:2"},"returnParameters":{"id":345,"nodeType":"ParameterList","parameters":[],"src":"780:0:2"},"scope":436,"src":"694:87:2","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":359,"implemented":false,"kind":"function","modifiers":[],"name":"setSubnodeRecord","nodeType":"FunctionDefinition","parameters":{"id":357,"nodeType":"ParameterList","parameters":[{"constant":false,"id":348,"name":"node","nodeType":"VariableDeclaration","scope":359,"src":"812:12:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":347,"name":"bytes32","nodeType":"ElementaryTypeName","src":"812:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":350,"name":"label","nodeType":"VariableDeclaration","scope":359,"src":"826:13:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":349,"name":"bytes32","nodeType":"ElementaryTypeName","src":"826:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":352,"name":"owner","nodeType":"VariableDeclaration","scope":359,"src":"841:13:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":351,"name":"address","nodeType":"ElementaryTypeName","src":"841:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"},{"constant":false,"id":354,"name":"resolver","nodeType":"VariableDeclaration","scope":359,"src":"856:16:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":353,"name":"address","nodeType":"ElementaryTypeName","src":"856:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"},{"constant":false,"id":356,"name":"ttl","nodeType":"VariableDeclaration","scope":359,"src":"874:10:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":355,"name":"uint64","nodeType":"ElementaryTypeName","src":"874:6:2","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"value":null,"visibility":"internal"}],"src":"811:74:2"},"returnParameters":{"id":358,"nodeType":"ParameterList","parameters":[],"src":"894:0:2"},"scope":436,"src":"786:109:2","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":370,"implemented":false,"kind":"function","modifiers":[],"name":"setSubnodeOwner","nodeType":"FunctionDefinition","parameters":{"id":366,"nodeType":"ParameterList","parameters":[{"constant":false,"id":361,"name":"node","nodeType":"VariableDeclaration","scope":370,"src":"925:12:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":360,"name":"bytes32","nodeType":"ElementaryTypeName","src":"925:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":363,"name":"label","nodeType":"VariableDeclaration","scope":370,"src":"939:13:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":362,"name":"bytes32","nodeType":"ElementaryTypeName","src":"939:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":365,"name":"owner","nodeType":"VariableDeclaration","scope":370,"src":"954:13:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":364,"name":"address","nodeType":"ElementaryTypeName","src":"954:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"924:44:2"},"returnParameters":{"id":369,"nodeType":"ParameterList","parameters":[{"constant":false,"id":368,"name":"","nodeType":"VariableDeclaration","scope":370,"src":"986:7:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":367,"name":"bytes32","nodeType":"ElementaryTypeName","src":"986:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"985:9:2"},"scope":436,"src":"900:95:2","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":377,"implemented":false,"kind":"function","modifiers":[],"name":"setResolver","nodeType":"FunctionDefinition","parameters":{"id":375,"nodeType":"ParameterList","parameters":[{"constant":false,"id":372,"name":"node","nodeType":"VariableDeclaration","scope":377,"src":"1021:12:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":371,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1021:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":374,"name":"resolver","nodeType":"VariableDeclaration","scope":377,"src":"1035:16:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":373,"name":"address","nodeType":"ElementaryTypeName","src":"1035:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"1020:32:2"},"returnParameters":{"id":376,"nodeType":"ParameterList","parameters":[],"src":"1061:0:2"},"scope":436,"src":"1000:62:2","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":384,"implemented":false,"kind":"function","modifiers":[],"name":"setOwner","nodeType":"FunctionDefinition","parameters":{"id":382,"nodeType":"ParameterList","parameters":[{"constant":false,"id":379,"name":"node","nodeType":"VariableDeclaration","scope":384,"src":"1085:12:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":378,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1085:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":381,"name":"owner","nodeType":"VariableDeclaration","scope":384,"src":"1099:13:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":380,"name":"address","nodeType":"ElementaryTypeName","src":"1099:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"1084:29:2"},"returnParameters":{"id":383,"nodeType":"ParameterList","parameters":[],"src":"1122:0:2"},"scope":436,"src":"1067:56:2","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":391,"implemented":false,"kind":"function","modifiers":[],"name":"setTTL","nodeType":"FunctionDefinition","parameters":{"id":389,"nodeType":"ParameterList","parameters":[{"constant":false,"id":386,"name":"node","nodeType":"VariableDeclaration","scope":391,"src":"1144:12:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":385,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1144:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":388,"name":"ttl","nodeType":"VariableDeclaration","scope":391,"src":"1158:10:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":387,"name":"uint64","nodeType":"ElementaryTypeName","src":"1158:6:2","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"value":null,"visibility":"internal"}],"src":"1143:26:2"},"returnParameters":{"id":390,"nodeType":"ParameterList","parameters":[],"src":"1178:0:2"},"scope":436,"src":"1128:51:2","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":398,"implemented":false,"kind":"function","modifiers":[],"name":"setApprovalForAll","nodeType":"FunctionDefinition","parameters":{"id":396,"nodeType":"ParameterList","parameters":[{"constant":false,"id":393,"name":"operator","nodeType":"VariableDeclaration","scope":398,"src":"1211:16:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":392,"name":"address","nodeType":"ElementaryTypeName","src":"1211:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"},{"constant":false,"id":395,"name":"approved","nodeType":"VariableDeclaration","scope":398,"src":"1229:13:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":394,"name":"bool","nodeType":"ElementaryTypeName","src":"1229:4:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"value":null,"visibility":"internal"}],"src":"1210:33:2"},"returnParameters":{"id":397,"nodeType":"ParameterList","parameters":[],"src":"1252:0:2"},"scope":436,"src":"1184:69:2","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":405,"implemented":false,"kind":"function","modifiers":[],"name":"owner","nodeType":"FunctionDefinition","parameters":{"id":401,"nodeType":"ParameterList","parameters":[{"constant":false,"id":400,"name":"node","nodeType":"VariableDeclaration","scope":405,"src":"1273:12:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":399,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1273:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"1272:14:2"},"returnParameters":{"id":404,"nodeType":"ParameterList","parameters":[{"constant":false,"id":403,"name":"","nodeType":"VariableDeclaration","scope":405,"src":"1310:7:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":402,"name":"address","nodeType":"ElementaryTypeName","src":"1310:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"1309:9:2"},"scope":436,"src":"1258:61:2","stateMutability":"view","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":412,"implemented":false,"kind":"function","modifiers":[],"name":"resolver","nodeType":"FunctionDefinition","parameters":{"id":408,"nodeType":"ParameterList","parameters":[{"constant":false,"id":407,"name":"node","nodeType":"VariableDeclaration","scope":412,"src":"1342:12:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":406,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1342:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"1341:14:2"},"returnParameters":{"id":411,"nodeType":"ParameterList","parameters":[{"constant":false,"id":410,"name":"","nodeType":"VariableDeclaration","scope":412,"src":"1379:7:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":409,"name":"address","nodeType":"ElementaryTypeName","src":"1379:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"1378:9:2"},"scope":436,"src":"1324:64:2","stateMutability":"view","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":419,"implemented":false,"kind":"function","modifiers":[],"name":"ttl","nodeType":"FunctionDefinition","parameters":{"id":415,"nodeType":"ParameterList","parameters":[{"constant":false,"id":414,"name":"node","nodeType":"VariableDeclaration","scope":419,"src":"1406:12:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":413,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1406:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"1405:14:2"},"returnParameters":{"id":418,"nodeType":"ParameterList","parameters":[{"constant":false,"id":417,"name":"","nodeType":"VariableDeclaration","scope":419,"src":"1443:6:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":416,"name":"uint64","nodeType":"ElementaryTypeName","src":"1443:6:2","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"value":null,"visibility":"internal"}],"src":"1442:8:2"},"scope":436,"src":"1393:58:2","stateMutability":"view","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":426,"implemented":false,"kind":"function","modifiers":[],"name":"recordExists","nodeType":"FunctionDefinition","parameters":{"id":422,"nodeType":"ParameterList","parameters":[{"constant":false,"id":421,"name":"node","nodeType":"VariableDeclaration","scope":426,"src":"1478:12:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":420,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1478:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"1477:14:2"},"returnParameters":{"id":425,"nodeType":"ParameterList","parameters":[{"constant":false,"id":424,"name":"","nodeType":"VariableDeclaration","scope":426,"src":"1515:4:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":423,"name":"bool","nodeType":"ElementaryTypeName","src":"1515:4:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"value":null,"visibility":"internal"}],"src":"1514:6:2"},"scope":436,"src":"1456:65:2","stateMutability":"view","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":435,"implemented":false,"kind":"function","modifiers":[],"name":"isApprovedForAll","nodeType":"FunctionDefinition","parameters":{"id":431,"nodeType":"ParameterList","parameters":[{"constant":false,"id":428,"name":"owner","nodeType":"VariableDeclaration","scope":435,"src":"1552:13:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":427,"name":"address","nodeType":"ElementaryTypeName","src":"1552:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"},{"constant":false,"id":430,"name":"operator","nodeType":"VariableDeclaration","scope":435,"src":"1567:16:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":429,"name":"address","nodeType":"ElementaryTypeName","src":"1567:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"1551:33:2"},"returnParameters":{"id":434,"nodeType":"ParameterList","parameters":[{"constant":false,"id":433,"name":"","nodeType":"VariableDeclaration","scope":435,"src":"1608:4:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":432,"name":"bool","nodeType":"ElementaryTypeName","src":"1608:4:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"value":null,"visibility":"internal"}],"src":"1607:6:2"},"scope":436,"src":"1526:88:2","stateMutability":"view","superFunction":null,"visibility":"external"}],"scope":437,"src":"27:1589:2"}],"src":"0:1617:2"},"legacyAST":{"absolutePath":"/Users/makoto/work/ens/ens/contracts/ENS.sol","exportedSymbols":{"ENS":[436]},"id":437,"nodeType":"SourceUnit","nodes":[{"id":301,"literals":["solidity",">=","0.4",".24"],"nodeType":"PragmaDirective","src":"0:25:2"},{"baseContracts":[],"contractDependencies":[],"contractKind":"interface","documentation":null,"fullyImplemented":false,"id":436,"linearizedBaseContracts":[436],"name":"ENS","nodeType":"ContractDefinition","nodes":[{"anonymous":false,"documentation":null,"id":309,"name":"NewOwner","nodeType":"EventDefinition","parameters":{"id":308,"nodeType":"ParameterList","parameters":[{"constant":false,"id":303,"indexed":true,"name":"node","nodeType":"VariableDeclaration","scope":309,"src":"136:20:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":302,"name":"bytes32","nodeType":"ElementaryTypeName","src":"136:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":305,"indexed":true,"name":"label","nodeType":"VariableDeclaration","scope":309,"src":"158:21:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":304,"name":"bytes32","nodeType":"ElementaryTypeName","src":"158:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":307,"indexed":false,"name":"owner","nodeType":"VariableDeclaration","scope":309,"src":"181:13:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":306,"name":"address","nodeType":"ElementaryTypeName","src":"181:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"135:60:2"},"src":"121:75:2"},{"anonymous":false,"documentation":null,"id":315,"name":"Transfer","nodeType":"EventDefinition","parameters":{"id":314,"nodeType":"ParameterList","parameters":[{"constant":false,"id":311,"indexed":true,"name":"node","nodeType":"VariableDeclaration","scope":315,"src":"294:20:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":310,"name":"bytes32","nodeType":"ElementaryTypeName","src":"294:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":313,"indexed":false,"name":"owner","nodeType":"VariableDeclaration","scope":315,"src":"316:13:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":312,"name":"address","nodeType":"ElementaryTypeName","src":"316:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"293:37:2"},"src":"279:52:2"},{"anonymous":false,"documentation":null,"id":321,"name":"NewResolver","nodeType":"EventDefinition","parameters":{"id":320,"nodeType":"ParameterList","parameters":[{"constant":false,"id":317,"indexed":true,"name":"node","nodeType":"VariableDeclaration","scope":321,"src":"407:20:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":316,"name":"bytes32","nodeType":"ElementaryTypeName","src":"407:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":319,"indexed":false,"name":"resolver","nodeType":"VariableDeclaration","scope":321,"src":"429:16:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":318,"name":"address","nodeType":"ElementaryTypeName","src":"429:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"406:40:2"},"src":"389:58:2"},{"anonymous":false,"documentation":null,"id":327,"name":"NewTTL","nodeType":"EventDefinition","parameters":{"id":326,"nodeType":"ParameterList","parameters":[{"constant":false,"id":323,"indexed":true,"name":"node","nodeType":"VariableDeclaration","scope":327,"src":"511:20:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":322,"name":"bytes32","nodeType":"ElementaryTypeName","src":"511:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":325,"indexed":false,"name":"ttl","nodeType":"VariableDeclaration","scope":327,"src":"533:10:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":324,"name":"uint64","nodeType":"ElementaryTypeName","src":"533:6:2","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"value":null,"visibility":"internal"}],"src":"510:34:2"},"src":"498:47:2"},{"anonymous":false,"documentation":null,"id":335,"name":"ApprovalForAll","nodeType":"EventDefinition","parameters":{"id":334,"nodeType":"ParameterList","parameters":[{"constant":false,"id":329,"indexed":true,"name":"owner","nodeType":"VariableDeclaration","scope":335,"src":"624:21:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":328,"name":"address","nodeType":"ElementaryTypeName","src":"624:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"},{"constant":false,"id":331,"indexed":true,"name":"operator","nodeType":"VariableDeclaration","scope":335,"src":"647:24:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":330,"name":"address","nodeType":"ElementaryTypeName","src":"647:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"},{"constant":false,"id":333,"indexed":false,"name":"approved","nodeType":"VariableDeclaration","scope":335,"src":"673:13:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":332,"name":"bool","nodeType":"ElementaryTypeName","src":"673:4:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"value":null,"visibility":"internal"}],"src":"623:64:2"},"src":"603:85:2"},{"body":null,"documentation":null,"id":346,"implemented":false,"kind":"function","modifiers":[],"name":"setRecord","nodeType":"FunctionDefinition","parameters":{"id":344,"nodeType":"ParameterList","parameters":[{"constant":false,"id":337,"name":"node","nodeType":"VariableDeclaration","scope":346,"src":"713:12:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":336,"name":"bytes32","nodeType":"ElementaryTypeName","src":"713:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":339,"name":"owner","nodeType":"VariableDeclaration","scope":346,"src":"727:13:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":338,"name":"address","nodeType":"ElementaryTypeName","src":"727:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"},{"constant":false,"id":341,"name":"resolver","nodeType":"VariableDeclaration","scope":346,"src":"742:16:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":340,"name":"address","nodeType":"ElementaryTypeName","src":"742:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"},{"constant":false,"id":343,"name":"ttl","nodeType":"VariableDeclaration","scope":346,"src":"760:10:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":342,"name":"uint64","nodeType":"ElementaryTypeName","src":"760:6:2","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"value":null,"visibility":"internal"}],"src":"712:59:2"},"returnParameters":{"id":345,"nodeType":"ParameterList","parameters":[],"src":"780:0:2"},"scope":436,"src":"694:87:2","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":359,"implemented":false,"kind":"function","modifiers":[],"name":"setSubnodeRecord","nodeType":"FunctionDefinition","parameters":{"id":357,"nodeType":"ParameterList","parameters":[{"constant":false,"id":348,"name":"node","nodeType":"VariableDeclaration","scope":359,"src":"812:12:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":347,"name":"bytes32","nodeType":"ElementaryTypeName","src":"812:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":350,"name":"label","nodeType":"VariableDeclaration","scope":359,"src":"826:13:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":349,"name":"bytes32","nodeType":"ElementaryTypeName","src":"826:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":352,"name":"owner","nodeType":"VariableDeclaration","scope":359,"src":"841:13:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":351,"name":"address","nodeType":"ElementaryTypeName","src":"841:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"},{"constant":false,"id":354,"name":"resolver","nodeType":"VariableDeclaration","scope":359,"src":"856:16:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":353,"name":"address","nodeType":"ElementaryTypeName","src":"856:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"},{"constant":false,"id":356,"name":"ttl","nodeType":"VariableDeclaration","scope":359,"src":"874:10:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":355,"name":"uint64","nodeType":"ElementaryTypeName","src":"874:6:2","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"value":null,"visibility":"internal"}],"src":"811:74:2"},"returnParameters":{"id":358,"nodeType":"ParameterList","parameters":[],"src":"894:0:2"},"scope":436,"src":"786:109:2","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":370,"implemented":false,"kind":"function","modifiers":[],"name":"setSubnodeOwner","nodeType":"FunctionDefinition","parameters":{"id":366,"nodeType":"ParameterList","parameters":[{"constant":false,"id":361,"name":"node","nodeType":"VariableDeclaration","scope":370,"src":"925:12:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":360,"name":"bytes32","nodeType":"ElementaryTypeName","src":"925:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":363,"name":"label","nodeType":"VariableDeclaration","scope":370,"src":"939:13:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":362,"name":"bytes32","nodeType":"ElementaryTypeName","src":"939:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":365,"name":"owner","nodeType":"VariableDeclaration","scope":370,"src":"954:13:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":364,"name":"address","nodeType":"ElementaryTypeName","src":"954:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"924:44:2"},"returnParameters":{"id":369,"nodeType":"ParameterList","parameters":[{"constant":false,"id":368,"name":"","nodeType":"VariableDeclaration","scope":370,"src":"986:7:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":367,"name":"bytes32","nodeType":"ElementaryTypeName","src":"986:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"985:9:2"},"scope":436,"src":"900:95:2","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":377,"implemented":false,"kind":"function","modifiers":[],"name":"setResolver","nodeType":"FunctionDefinition","parameters":{"id":375,"nodeType":"ParameterList","parameters":[{"constant":false,"id":372,"name":"node","nodeType":"VariableDeclaration","scope":377,"src":"1021:12:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":371,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1021:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":374,"name":"resolver","nodeType":"VariableDeclaration","scope":377,"src":"1035:16:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":373,"name":"address","nodeType":"ElementaryTypeName","src":"1035:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"1020:32:2"},"returnParameters":{"id":376,"nodeType":"ParameterList","parameters":[],"src":"1061:0:2"},"scope":436,"src":"1000:62:2","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":384,"implemented":false,"kind":"function","modifiers":[],"name":"setOwner","nodeType":"FunctionDefinition","parameters":{"id":382,"nodeType":"ParameterList","parameters":[{"constant":false,"id":379,"name":"node","nodeType":"VariableDeclaration","scope":384,"src":"1085:12:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":378,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1085:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":381,"name":"owner","nodeType":"VariableDeclaration","scope":384,"src":"1099:13:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":380,"name":"address","nodeType":"ElementaryTypeName","src":"1099:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"1084:29:2"},"returnParameters":{"id":383,"nodeType":"ParameterList","parameters":[],"src":"1122:0:2"},"scope":436,"src":"1067:56:2","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":391,"implemented":false,"kind":"function","modifiers":[],"name":"setTTL","nodeType":"FunctionDefinition","parameters":{"id":389,"nodeType":"ParameterList","parameters":[{"constant":false,"id":386,"name":"node","nodeType":"VariableDeclaration","scope":391,"src":"1144:12:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":385,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1144:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":388,"name":"ttl","nodeType":"VariableDeclaration","scope":391,"src":"1158:10:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":387,"name":"uint64","nodeType":"ElementaryTypeName","src":"1158:6:2","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"value":null,"visibility":"internal"}],"src":"1143:26:2"},"returnParameters":{"id":390,"nodeType":"ParameterList","parameters":[],"src":"1178:0:2"},"scope":436,"src":"1128:51:2","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":398,"implemented":false,"kind":"function","modifiers":[],"name":"setApprovalForAll","nodeType":"FunctionDefinition","parameters":{"id":396,"nodeType":"ParameterList","parameters":[{"constant":false,"id":393,"name":"operator","nodeType":"VariableDeclaration","scope":398,"src":"1211:16:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":392,"name":"address","nodeType":"ElementaryTypeName","src":"1211:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"},{"constant":false,"id":395,"name":"approved","nodeType":"VariableDeclaration","scope":398,"src":"1229:13:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":394,"name":"bool","nodeType":"ElementaryTypeName","src":"1229:4:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"value":null,"visibility":"internal"}],"src":"1210:33:2"},"returnParameters":{"id":397,"nodeType":"ParameterList","parameters":[],"src":"1252:0:2"},"scope":436,"src":"1184:69:2","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":405,"implemented":false,"kind":"function","modifiers":[],"name":"owner","nodeType":"FunctionDefinition","parameters":{"id":401,"nodeType":"ParameterList","parameters":[{"constant":false,"id":400,"name":"node","nodeType":"VariableDeclaration","scope":405,"src":"1273:12:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":399,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1273:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"1272:14:2"},"returnParameters":{"id":404,"nodeType":"ParameterList","parameters":[{"constant":false,"id":403,"name":"","nodeType":"VariableDeclaration","scope":405,"src":"1310:7:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":402,"name":"address","nodeType":"ElementaryTypeName","src":"1310:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"1309:9:2"},"scope":436,"src":"1258:61:2","stateMutability":"view","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":412,"implemented":false,"kind":"function","modifiers":[],"name":"resolver","nodeType":"FunctionDefinition","parameters":{"id":408,"nodeType":"ParameterList","parameters":[{"constant":false,"id":407,"name":"node","nodeType":"VariableDeclaration","scope":412,"src":"1342:12:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":406,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1342:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"1341:14:2"},"returnParameters":{"id":411,"nodeType":"ParameterList","parameters":[{"constant":false,"id":410,"name":"","nodeType":"VariableDeclaration","scope":412,"src":"1379:7:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":409,"name":"address","nodeType":"ElementaryTypeName","src":"1379:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"1378:9:2"},"scope":436,"src":"1324:64:2","stateMutability":"view","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":419,"implemented":false,"kind":"function","modifiers":[],"name":"ttl","nodeType":"FunctionDefinition","parameters":{"id":415,"nodeType":"ParameterList","parameters":[{"constant":false,"id":414,"name":"node","nodeType":"VariableDeclaration","scope":419,"src":"1406:12:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":413,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1406:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"1405:14:2"},"returnParameters":{"id":418,"nodeType":"ParameterList","parameters":[{"constant":false,"id":417,"name":"","nodeType":"VariableDeclaration","scope":419,"src":"1443:6:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"},"typeName":{"id":416,"name":"uint64","nodeType":"ElementaryTypeName","src":"1443:6:2","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"value":null,"visibility":"internal"}],"src":"1442:8:2"},"scope":436,"src":"1393:58:2","stateMutability":"view","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":426,"implemented":false,"kind":"function","modifiers":[],"name":"recordExists","nodeType":"FunctionDefinition","parameters":{"id":422,"nodeType":"ParameterList","parameters":[{"constant":false,"id":421,"name":"node","nodeType":"VariableDeclaration","scope":426,"src":"1478:12:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":420,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1478:7:2","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"1477:14:2"},"returnParameters":{"id":425,"nodeType":"ParameterList","parameters":[{"constant":false,"id":424,"name":"","nodeType":"VariableDeclaration","scope":426,"src":"1515:4:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":423,"name":"bool","nodeType":"ElementaryTypeName","src":"1515:4:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"value":null,"visibility":"internal"}],"src":"1514:6:2"},"scope":436,"src":"1456:65:2","stateMutability":"view","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":435,"implemented":false,"kind":"function","modifiers":[],"name":"isApprovedForAll","nodeType":"FunctionDefinition","parameters":{"id":431,"nodeType":"ParameterList","parameters":[{"constant":false,"id":428,"name":"owner","nodeType":"VariableDeclaration","scope":435,"src":"1552:13:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":427,"name":"address","nodeType":"ElementaryTypeName","src":"1552:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"},{"constant":false,"id":430,"name":"operator","nodeType":"VariableDeclaration","scope":435,"src":"1567:16:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":429,"name":"address","nodeType":"ElementaryTypeName","src":"1567:7:2","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"1551:33:2"},"returnParameters":{"id":434,"nodeType":"ParameterList","parameters":[{"constant":false,"id":433,"name":"","nodeType":"VariableDeclaration","scope":435,"src":"1608:4:2","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":432,"name":"bool","nodeType":"ElementaryTypeName","src":"1608:4:2","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"value":null,"visibility":"internal"}],"src":"1607:6:2"},"scope":436,"src":"1526:88:2","stateMutability":"view","superFunction":null,"visibility":"external"}],"scope":437,"src":"27:1589:2"}],"src":"0:1617:2"},"compiler":{"name":"solc","version":"0.5.0+commit.1d4f565a.Emscripten.clang"},"networks":{},"schemaVersion":"3.0.0","updatedAt":"2020-02-10T20:00:51.340Z","devdoc":{"methods":{}},"userdoc":{"methods":{}}}')},XcY9:function(e,t,n){"use strict";(function(e){var r=n("TqRt");Object.defineProperty(t,"__esModule",{value:!0}),t.getENSContract=v,t.getResolverContract=h,t.getEnsAddress=function(e){if([1,3,4,5].includes(parseInt(e)))return"0x00000000000C2E074eC69A0dFb2997BA6C7d2e1e"},Object.defineProperty(t,"namehash",{enumerable:!0,get:function(){return u.namehash}}),Object.defineProperty(t,"labelhash",{enumerable:!0,get:function(){return u.labelhash}}),t.default=void 0;var i=r(n("J4zp")),a=r(n("o0o1")),s=r(n("lwsE")),o=r(n("W8MJ")),f=r(n("yXPU")),l=n("4VAs"),p=n("fgtH"),d=n("Vwf4"),y=n("Y5vh"),c=n("Xcxd"),u=n("1kdD"),m=n("sDqg"),b=l.ethers.providers.Provider,g=l.ethers.utils;function h(e){return new l.ethers.Contract(e.address,y.abi,e.provider)}function v(e){return new l.ethers.Contract(e.address,d.abi,e.provider)}function T(e){return _.apply(this,arguments)}function _(){return(_=(0,f.default)(a.default.mark(function t(n){var r,i,s,o,f,l,d,y,c;return a.default.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return r=n.key,i=n.resolverAddr,s=n.provider,o=(0,u.namehash)(n.name),t.prev=2,f=h({address:i,provider:s}),d=(l=p.formatsByName[r]).coinType,y=l.encoder,t.next=7,f["addr(bytes32,uint256)"](o,d);case 7:if("0x"!==(c=t.sent)){t.next=10;break}return t.abrupt("return",u.emptyAddress);case 10:return t.abrupt("return",y(e.from(c.slice(2),"hex")));case 13:return t.prev=13,t.t0=t.catch(2),console.log(t.t0),console.warn("Error getting addr on the resolver contract, are you sure the resolver address is a resolver contract?"),t.abrupt("return",u.emptyAddress);case 18:case"end":return t.stop()}},t,null,[[2,13]])}))).apply(this,arguments)}function D(e){return S.apply(this,arguments)}function S(){return(S=(0,f.default)(a.default.mark(function t(n){var r,i,s,o,f,l,d,y,c,m;return a.default.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return r=n.key,i=n.address,s=n.resolverAddr,o=n.signer,f=(0,u.namehash)(n.name),l=h({address:s,provider:o}),y=(d=p.formatsByName[r]).decoder,c=d.coinType,m=i&&""!==i?y(i):e.from(""),t.abrupt("return",l["setAddr(bytes32,uint256,bytes)"](f,c,m));case 6:case"end":return t.stop()}},t)}))).apply(this,arguments)}function I(e){return w.apply(this,arguments)}function w(){return(w=(0,f.default)(a.default.mark(function e(t){var n,r,i,s,o,f,l,p,d,y;return a.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(n=t.resolverAddr,r=t.provider,i=(0,u.namehash)(t.name),0!==parseInt(n,16)){e.next=4;break}return e.abrupt("return",u.emptyAddress);case 4:return e.prev=4,s=h({address:n,provider:r}),o=g.solidityKeccak256(["string"],["contenthash(bytes32)"]).slice(0,10),e.next=9,s.supportsInterface(o);case 9:if(!e.sent){e.next=25;break}return e.t0=m.decodeContenthash,e.next=14,s.contenthash(i);case 14:if(e.t1=e.sent,f=(0,e.t0)(e.t1),l=f.protocolType,p=f.decoded,!(d=f.error)){e.next=22;break}return console.log("error decoding",d),e.abrupt("return",{value:u.emptyAddress,contentType:"contenthash"});case 22:return e.abrupt("return",{value:"".concat(l,"://").concat(p),contentType:"contenthash"});case 25:return e.next=27,s.content(i);case 27:return e.abrupt("return",{value:e.sent,contentType:"oldcontent"});case 29:e.next=36;break;case 31:return e.prev=31,e.t2=e.catch(4),y="Error getting content on the resolver contract, are you sure the resolver address is a resolver contract?",console.warn(y,e.t2),e.abrupt("return",{value:y,contentType:"error"});case 36:case"end":return e.stop()}},e,null,[[4,31]])}))).apply(this,arguments)}function E(e){return N.apply(this,arguments)}function N(){return(N=(0,f.default)(a.default.mark(function e(t){var n,r,i,s,o,f;return a.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.name,i=t.resolverAddr,s=t.signer,o=r=t.content,0!==parseInt(r,16)&&(o=(0,m.encodeContenthash)(r)),f=h({address:i,provider:s}),e.abrupt("return",f.setContenthash((0,u.namehash)(n),o));case 5:case"end":return e.stop()}},e)}))).apply(this,arguments)}function V(e){return x.apply(this,arguments)}function x(){return(x=(0,f.default)(a.default.mark(function e(t){var n,r,i,s,o;return a.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(n=t.key,r=t.resolverAddr,i=t.provider,s=(0,u.namehash)(t.name),0!==parseInt(r,16)){e.next=4;break}return e.abrupt("return","");case 4:return e.prev=4,o=h({address:r,provider:i}),e.next=8,o.text(s,n);case 8:return e.abrupt("return",e.sent);case 12:return e.prev=12,e.t0=e.catch(4),console.warn("Error getting text record on the resolver contract, are you sure the resolver address is a resolver contract?"),e.abrupt("return","");case 16:case"end":return e.stop()}},e,null,[[4,12]])}))).apply(this,arguments)}function L(e){return R.apply(this,arguments)}function R(){return(R=(0,f.default)(a.default.mark(function e(t){var n,r,i,s,o;return a.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.key,r=t.recordValue,i=t.resolverAddr,s=t.signer,o=(0,u.namehash)(t.name),e.abrupt("return",h({address:i,provider:s}).setText(o,n,r));case 3:case"end":return e.stop()}},e)}))).apply(this,arguments)}var P=function(){function e(t){var n=t.address,r=t.ens;(0,s.default)(this,e),this.address=n,this.ens=r}return(0,o.default)(e,[{key:"name",value:function(e){return new A({name:e,ens:this.ens,provider:this.provider,signer:this.signer,resolver:this.address})}}]),e}(),A=function(){function e(t){(0,s.default)(this,e);var n=t.name,r=t.ens,i=t.provider,a=t.signer,o=t.resolver;t.namehash&&(this.namehash=t.namehash),this.ens=r,this.ensWithSigner=this.ens.connect(a),this.name=n,this.namehash=(0,u.namehash)(n),this.provider=i,this.signer=a,this.resolver=o}var t,n,r,l,p,d,y,c,m,b,g,v,_,S,w,N;return(0,o.default)(e,[{key:"getOwner",value:(N=(0,f.default)(a.default.mark(function e(){return a.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.ens.owner(this.namehash));case 1:case"end":return e.stop()}},e,this)})),function(){return N.apply(this,arguments)})},{key:"setOwner",value:(w=(0,f.default)(a.default.mark(function e(t){return a.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(t){e.next=2;break}throw new Error("No newOwner address provided!");case 2:return e.abrupt("return",this.ensWithSigner.setOwner(this.namehash,t));case 3:case"end":return e.stop()}},e,this)})),function(e){return w.apply(this,arguments)})},{key:"getResolver",value:(S=(0,f.default)(a.default.mark(function e(){return a.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.ens.resolver(this.namehash));case 1:case"end":return e.stop()}},e,this)})),function(){return S.apply(this,arguments)})},{key:"setResolver",value:(_=(0,f.default)(a.default.mark(function e(t){return a.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(t){e.next=2;break}throw new Error("No resolver address provided!");case 2:return e.abrupt("return",this.ensWithSigner.setResolver(this.namehash,t));case 3:case"end":return e.stop()}},e,this)})),function(e){return _.apply(this,arguments)})},{key:"getTTL",value:(v=(0,f.default)(a.default.mark(function e(){return a.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.ens.ttl(this.namehash));case 1:case"end":return e.stop()}},e,this)})),function(){return v.apply(this,arguments)})},{key:"getResolverAddr",value:(g=(0,f.default)(a.default.mark(function e(){return a.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(!this.resolver){e.next=4;break}return e.abrupt("return",this.resolver);case 4:return e.abrupt("return",this.getResolver());case 5:case"end":return e.stop()}},e,this)})),function(){return g.apply(this,arguments)})},{key:"getAddress",value:(b=(0,f.default)(a.default.mark(function e(t){var n,r;return a.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getResolverAddr();case 2:if(n=e.sent,0!==parseInt(n,16)){e.next=5;break}return e.abrupt("return",u.emptyAddress);case 5:if(r=h({address:n,provider:this.provider}),t){e.next=8;break}return e.abrupt("return",r["addr(bytes32)"](this.namehash));case 8:return e.abrupt("return",T({name:this.name,key:t,resolverAddr:n,provider:this.provider}));case 9:case"end":return e.stop()}},e,this)})),function(e){return b.apply(this,arguments)})},{key:"setAddress",value:(m=(0,f.default)(a.default.mark(function e(t,n){return a.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(t){e.next=2;break}throw new Error("No coinId provided");case 2:if(n){e.next=4;break}throw new Error("No address provided");case 4:return e.next=6,this.getResolverAddr();case 6:return e.abrupt("return",D({name:this.name,key:t,address:n,resolverAddr:e.sent,signer:this.signer}));case 8:case"end":return e.stop()}},e,this)})),function(e,t){return m.apply(this,arguments)})},{key:"getContent",value:(c=(0,f.default)(a.default.mark(function e(){return a.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getResolverAddr();case 2:return e.abrupt("return",I({name:this.name,resolverAddr:e.sent,provider:this.provider}));case 4:case"end":return e.stop()}},e,this)})),function(){return c.apply(this,arguments)})},{key:"setContenthash",value:(y=(0,f.default)(a.default.mark(function e(t){var n;return a.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getResolverAddr();case 2:return n=e.sent,console.log(t),e.abrupt("return",E({name:this.name,content:t,resolverAddr:n,signer:this.signer}));case 5:case"end":return e.stop()}},e,this)})),function(e){return y.apply(this,arguments)})},{key:"getText",value:(d=(0,f.default)(a.default.mark(function e(t){return a.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getResolverAddr();case 2:return e.abrupt("return",V({name:this.name,key:t,resolverAddr:e.sent,provider:this.provider}));case 4:case"end":return e.stop()}},e,this)})),function(e){return d.apply(this,arguments)})},{key:"setText",value:(p=(0,f.default)(a.default.mark(function e(t,n){return a.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.getResolverAddr();case 2:return e.abrupt("return",L({name:this.name,key:t,recordValue:n,resolverAddr:e.sent,signer:this.signer}));case 4:case"end":return e.stop()}},e,this)})),function(e,t){return p.apply(this,arguments)})},{key:"setSubnodeOwner",value:(l=(0,f.default)(a.default.mark(function e(t,n){var r;return a.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return r=(0,u.labelhash)(t),e.abrupt("return",this.ensWithSigner.setSubnodeOwner(this.namehash,r,n));case 2:case"end":return e.stop()}},e,this)})),function(e,t){return l.apply(this,arguments)})},{key:"setSubnodeRecord",value:(r=(0,f.default)(a.default.mark(function e(t,n,r){var i,s,o=arguments;return a.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return i=o.length>3&&void 0!==o[3]?o[3]:0,s=(0,u.labelhash)(t),e.abrupt("return",this.ensWithSigner.setSubnodeRecord(this.namehash,s,n,r,i));case 3:case"end":return e.stop()}},e,this)})),function(e,t,n){return r.apply(this,arguments)})},{key:"createSubdomain",value:(n=(0,f.default)(a.default.mark(function e(t){var n,r,s;return a.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n=this.getResolver(),r=this.getOwner(),e.next=4,Promise.all([n,r]);case 4:return s=(0,i.default)(e.sent,2),e.abrupt("return",this.setSubnodeRecord(t,s[1],s[0]));case 9:case"end":return e.stop()}},e,this)})),function(e){return n.apply(this,arguments)})},{key:"deleteSubdomain",value:(t=(0,f.default)(a.default.mark(function e(t){return a.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",this.setSubnodeRecord(t,u.emptyAddress,u.emptyAddress));case 1:case"end":return e.stop()}},e,this)})),function(e){return t.apply(this,arguments)})}]),e}();t.default=function(){function e(t){(0,s.default)(this,e);var n,r=t.networkId,i=t.provider,a=t.ensAddress;n=b.isProvider(i)?i:new l.ethers.providers.Web3Provider(i),this.provider=n,this.signer=n.getSigner(),this.ens=v({address:a||registries[r],provider:n})}var t,n,r;return(0,o.default)(e,[{key:"name",value:function(e){return new A({name:e,ens:this.ens,provider:this.provider,signer:this.signer})}},{key:"resolver",value:function(e){return new P({ens:this.ens,provider:this.provider,address:e})}},{key:"getName",value:(r=(0,f.default)(a.default.mark(function e(t){var n;return a.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n="".concat(t.slice(2),".addr.reverse"),e.next=3,this.ens.resolver((0,u.namehash)(n));case 3:return e.abrupt("return",this.getNameWithResolver(t,e.sent));case 5:case"end":return e.stop()}},e,this)})),function(e){return r.apply(this,arguments)})},{key:"getNameWithResolver",value:(n=(0,f.default)(a.default.mark(function e(t,n){var r,i,s;return a.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(r="".concat(t.slice(2),".addr.reverse"),i=(0,u.namehash)(r),0!==parseInt(n,16)){e.next=4;break}return e.abrupt("return",{name:null});case 4:return e.prev=4,s=h({address:n,provider:this.provider}),e.next=8,s.name(i);case 8:return e.abrupt("return",{name:e.sent});case 12:e.prev=12,e.t0=e.catch(4),console.log("Error getting name for reverse record of ".concat(t),e.t0);case 15:case"end":return e.stop()}},e,this,[[4,12]])})),function(e,t){return n.apply(this,arguments)})},{key:"setReverseRecord",value:(t=(0,f.default)(a.default.mark(function e(t,n){var r;return a.default.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.name("addr.reverse").getOwner("addr.reverse");case 2:return r=new l.ethers.Contract((n={address:e.sent,provider:this.signer}).address,c.abi,n.provider),e.abrupt("return",r.setName(t));case 5:case"end":return e.stop()}var n},e,this)})),function(e,n){return t.apply(this,arguments)})}]),e}()}).call(this,n("tjlA").Buffer)},Xcxd:function(e){e.exports=JSON.parse('{"contractName":"ReverseRegistrar","abi":[{"constant":true,"inputs":[],"name":"ens","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"ADDR_REVERSE_NODE","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"defaultResolver","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"ensAddr","type":"address"},{"name":"resolverAddr","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"constant":false,"inputs":[{"name":"owner","type":"address"}],"name":"claim","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"owner","type":"address"},{"name":"resolver","type":"address"}],"name":"claimWithResolver","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"name","type":"string"}],"name":"setName","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"addr","type":"address"}],"name":"node","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"pure","type":"function"}],"bytecode":"0x608060405234801561001057600080fd5b50604051604080610f4c8339810180604052604081101561003057600080fd5b810190808051906020019092919080519060200190929190505050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166302571be37f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e26001026040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018082815260200191505060206040518083038186803b15801561017f57600080fd5b505afa158015610193573d6000803e3d6000fd5b505050506040513d60208110156101a957600080fd5b81019080805190602001909291905050509050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415156102ca578073ffffffffffffffffffffffffffffffffffffffff16631e83409a336040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b15801561028d57600080fd5b505af11580156102a1573d6000803e3d6000fd5b505050506040513d60208110156102b757600080fd5b8101908080519060200190929190505050505b505050610c70806102dc6000396000f3fe608060405260043610610083576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630f5a5466146100885780631e83409a1461010d5780633f15457f146101725780637cf8a2eb146101c9578063828eab0e146101f4578063bffbe61c1461024b578063c47f0027146102b0575b600080fd5b34801561009457600080fd5b506100f7600480360360408110156100ab57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061038c565b6040518082815260200191505060405180910390f35b34801561011957600080fd5b5061015c6004803603602081101561013057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506109a1565b6040518082815260200191505060405180910390f35b34801561017e57600080fd5b506101876109b5565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101d557600080fd5b506101de6109da565b6040518082815260200191505060405180910390f35b34801561020057600080fd5b50610209610a01565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561025757600080fd5b5061029a6004803603602081101561026e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610a27565b6040518082815260200191505060405180910390f35b3480156102bc57600080fd5b50610376600480360360208110156102d357600080fd5b81019080803590602001906401000000008111156102f057600080fd5b82018360208201111561030257600080fd5b8035906020019184600183028401116401000000008311171561032457600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610a8a565b6040518082815260200191505060405180910390f35b60008061039833610bda565b905060007f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260010282604051602001808381526020018281526020019250505060405160208183030381529060405280519060200120905060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166302571be3836040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018082815260200191505060206040518083038186803b15801561048057600080fd5b505afa158015610494573d6000803e3d6000fd5b505050506040513d60208110156104aa57600080fd5b81019080805190602001909291905050509050600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16141580156105ee57506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630178b8bf836040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018082815260200191505060206040518083038186803b15801561058357600080fd5b505afa158015610597573d6000803e3d6000fd5b505050506040513d60208110156105ad57600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b15610834573073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515610757576000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166306ab59237f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260010285306040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808481526020018381526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019350505050602060405180830381600087803b15801561071757600080fd5b505af115801561072b573d6000803e3d6000fd5b505050506040513d602081101561074157600080fd5b8101908080519060200190929190505050503090505b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631896f70a83876040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200192505050600060405180830381600087803b15801561081b57600080fd5b505af115801561082f573d6000803e3d6000fd5b505050505b8573ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515610995576000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166306ab59237f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260010285896040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808481526020018381526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019350505050602060405180830381600087803b15801561095857600080fd5b505af115801561096c573d6000803e3d6000fd5b505050506040513d602081101561098257600080fd5b8101908080519060200190929190505050505b81935050505092915050565b60006109ae82600061038c565b9050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b7f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260010281565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60007f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2600102610a5683610bda565b6040516020018083815260200182815260200192505050604051602081830303815290604052805190602001209050919050565b600080610ab930600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1661038c565b9050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637737221382856040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610b6c578082015181840152602081019050610b51565b50505050905090810190601f168015610b995780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b158015610bb957600080fd5b505af1158015610bcd573d6000803e3d6000fd5b5050505080915050919050565b60007f303132333435363738396162636465660000000000000000000000000000000060285b6000811115610c365760018103905081600f85161a815360108404935060018103905081600f85161a8153601084049350610c00565b50602860002091505091905056fea165627a7a72305820e6313e7a4e2df43a1f5b7da522763dc6a86c5cd20f813441bb72230d11cef23d0029","deployedBytecode":"0x608060405260043610610083576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630f5a5466146100885780631e83409a1461010d5780633f15457f146101725780637cf8a2eb146101c9578063828eab0e146101f4578063bffbe61c1461024b578063c47f0027146102b0575b600080fd5b34801561009457600080fd5b506100f7600480360360408110156100ab57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061038c565b6040518082815260200191505060405180910390f35b34801561011957600080fd5b5061015c6004803603602081101561013057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506109a1565b6040518082815260200191505060405180910390f35b34801561017e57600080fd5b506101876109b5565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156101d557600080fd5b506101de6109da565b6040518082815260200191505060405180910390f35b34801561020057600080fd5b50610209610a01565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561025757600080fd5b5061029a6004803603602081101561026e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610a27565b6040518082815260200191505060405180910390f35b3480156102bc57600080fd5b50610376600480360360208110156102d357600080fd5b81019080803590602001906401000000008111156102f057600080fd5b82018360208201111561030257600080fd5b8035906020019184600183028401116401000000008311171561032457600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050509192919290505050610a8a565b6040518082815260200191505060405180910390f35b60008061039833610bda565b905060007f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260010282604051602001808381526020018281526020019250505060405160208183030381529060405280519060200120905060008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166302571be3836040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018082815260200191505060206040518083038186803b15801561048057600080fd5b505afa158015610494573d6000803e3d6000fd5b505050506040513d60208110156104aa57600080fd5b81019080805190602001909291905050509050600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff16141580156105ee57506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16630178b8bf836040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018082815260200191505060206040518083038186803b15801561058357600080fd5b505afa158015610597573d6000803e3d6000fd5b505050506040513d60208110156105ad57600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b15610834573073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515610757576000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166306ab59237f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260010285306040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808481526020018381526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019350505050602060405180830381600087803b15801561071757600080fd5b505af115801561072b573d6000803e3d6000fd5b505050506040513d602081101561074157600080fd5b8101908080519060200190929190505050503090505b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16631896f70a83876040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200192505050600060405180830381600087803b15801561081b57600080fd5b505af115801561082f573d6000803e3d6000fd5b505050505b8573ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515610995576000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166306ab59237f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260010285896040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808481526020018381526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019350505050602060405180830381600087803b15801561095857600080fd5b505af115801561096c573d6000803e3d6000fd5b505050506040513d602081101561098257600080fd5b8101908080519060200190929190505050505b81935050505092915050565b60006109ae82600061038c565b9050919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b7f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e260010281565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60007f91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2600102610a5683610bda565b6040516020018083815260200182815260200192505050604051602081830303815290604052805190602001209050919050565b600080610ab930600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1661038c565b9050600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16637737221382856040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610b6c578082015181840152602081019050610b51565b50505050905090810190601f168015610b995780820380516001836020036101000a031916815260200191505b509350505050600060405180830381600087803b158015610bb957600080fd5b505af1158015610bcd573d6000803e3d6000fd5b5050505080915050919050565b60007f303132333435363738396162636465660000000000000000000000000000000060285b6000811115610c365760018103905081600f85161a815360108404935060018103905081600f85161a8153601084049350610c00565b50602860002091505091905056fea165627a7a72305820e6313e7a4e2df43a1f5b7da522763dc6a86c5cd20f813441bb72230d11cef23d0029","sourceMap":"136:4188:9:-;;;546:391;8:9:-1;5:2;;;30:1;27;20:12;5:2;546:391:9;;;;;;;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;546:391:9;;;;;;;;;;;;;;;;;;;;;;;;;621:7;615:3;;:13;;;;;;;;;;;;;;;;;;656:12;638:15;;:30;;;;;;;;;;;;;;;;;;745:29;794:3;;;;;;;;;;;:9;;;244:66;804:17;;794:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;794:28:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;794:28:9;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;794:28:9;;;;;;;;;;;;;;;;745:78;;870:3;837:37;;845:12;837:37;;;;833:98;;;890:12;:18;;;909:10;890:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;890:30:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;890:30:9;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;890:30:9;;;;;;;;;;;;;;;;;833:98;546:391;;;136:4188;;;;;;","deployedSourceMap":"136:4188:9:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1669:871;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1669:871:9;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1669:871:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1204:117;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1204:117:9;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1204:117:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;317:14;;8:9:-1;5:2;;;30:1;27;20:12;5:2;317:14:9;;;;;;;;;;;;;;;;;;;;;;;;;;;200:110;;8:9:-1;5:2;;;30:1;27;20:12;5:2;200:110:9;;;;;;;;;;;;;;;;;;;;;;;337:35;;8:9:-1;5:2;;;30:1;27;20:12;5:2;337:35:9;;;;;;;;;;;;;;;;;;;;;;;;;;;3245:150;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3245:150:9;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3245:150:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2859:218;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2859:218:9;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2859:218:9;;;;;;;;;;21:11:-1;8;5:28;2:2;;;46:1;43;36:12;2:2;2859:218:9;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;2859:218:9;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;39:11;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;2859:218:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;93:3;85:6;81:16;74:27;137:4;133:9;126:4;121:3;117:14;113:30;106:37;;169:3;161:6;157:16;147:26;;2859:218:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1669:871;1745:7;1764:13;1780:26;1795:10;1780:14;:26::i;:::-;1764:42;;1816:12;244:66;1858:17;;1877:5;1841:42;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;1841:42:9;;;1831:53;;;;;;1816:68;;1894:20;1917:3;;;;;;;;;;;:9;;;1927:4;1917:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1917:15:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1917:15:9;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1917:15:9;;;;;;;;;;;;;;;;1894:38;;2010:3;1990:24;;:8;:24;;;;:58;;;;;2030:3;;;;;;;;;;;:12;;;2043:4;2030:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2030:18:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2030:18:9;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2030:18:9;;;;;;;;;;;;;;;;2018:30;;:8;:30;;;;1990:58;1986:372;;;2157:4;2133:29;;:12;:29;;;;2129:174;;;2182:3;;;;;;;;;;;:19;;;244:66;2202:17;;2221:5;2236:4;2182:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2182:60:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2182:60:9;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2182:60:9;;;;;;;;;;;;;;;;;2283:4;2260:28;;2129:174;2316:3;;;;;;;;;;;:15;;;2332:4;2338:8;2316:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2316:31:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2316:31:9;;;;1986:372;2428:5;2412:21;;:12;:21;;;;2408:104;;;2449:3;;;;;;;;;;;:19;;;244:66;2469:17;;2488:5;2495;2449:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2449:52:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2449:52:9;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2449:52:9;;;;;;;;;;;;;;;;;2408:104;2529:4;2522:11;;;;;1669:871;;;;:::o;1204:117::-;1250:7;1276:38;1294:5;1309:3;1276:17;:38::i;:::-;1269:45;;1204:117;;;:::o;317:14::-;;;;;;;;;;;;;:::o;200:110::-;244:66;200:110;;;:::o;337:35::-;;;;;;;;;;;;;:::o;3245:150::-;3294:7;244:66;3347:17;;3366:20;3381:4;3366:14;:20::i;:::-;3330:57;;;;;;;;;;;;;;;;;;;;;49:4:-1;39:7;30;26:21;22:32;13:7;6:49;3330:57:9;;;3320:68;;;;;;3313:75;;3245:150;;;:::o;2859:218::-;2912:7;2931:12;2946:58;2972:4;2987:15;;;;;;;;;;;2946:17;:58::i;:::-;2931:73;;3014:15;;;;;;;;;;;:23;;;3038:4;3044;3014:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;3014:35:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3014:35:9;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3014:35:9;;;;3066:4;3059:11;;;2859:218;;;:::o;3696:626::-;3756:11;3885:66;3980:2;3965:304;3991:1;3988;3985:8;3965:304;;;4028:1;4025;4021:9;4016:14;;4079:6;4073:3;4067:4;4063:14;4058:28;4055:1;4047:40;4122:4;4116;4112:15;4104:23;;4156:1;4153;4149:9;4144:14;;4207:6;4201:3;4195:4;4191:14;4186:28;4183:1;4175:40;4250:4;4244;4240:15;4232:23;;3965:304;;;3969:15;4303:2;4300:1;4290:16;4283:23;;3857:459;;;;:::o","source":"pragma solidity ^0.5.0;\\n\\nimport \\"./ENS.sol\\";\\n\\ncontract NameResolver {\\n function setName(bytes32 node, string memory name) public;\\n}\\n\\ncontract ReverseRegistrar {\\n // namehash(\'addr.reverse\')\\n bytes32 public constant ADDR_REVERSE_NODE = 0x91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2;\\n\\n ENS public ens;\\n NameResolver public defaultResolver;\\n\\n /**\\n * @dev Constructor\\n * @param ensAddr The address of the ENS registry.\\n * @param resolverAddr The address of the default reverse resolver.\\n */\\n constructor(ENS ensAddr, NameResolver resolverAddr) public {\\n ens = ensAddr;\\n defaultResolver = resolverAddr;\\n\\n // Assign ownership of the reverse record to our deployer\\n ReverseRegistrar oldRegistrar = ReverseRegistrar(ens.owner(ADDR_REVERSE_NODE));\\n if (address(oldRegistrar) != address(0x0)) {\\n oldRegistrar.claim(msg.sender);\\n }\\n }\\n\\n /**\\n * @dev Transfers ownership of the reverse ENS record associated with the\\n * calling account.\\n * @param owner The address to set as the owner of the reverse record in ENS.\\n * @return The ENS node hash of the reverse record.\\n */\\n function claim(address owner) public returns (bytes32) {\\n return claimWithResolver(owner, address(0x0));\\n }\\n\\n /**\\n * @dev Transfers ownership of the reverse ENS record associated with the\\n * calling account.\\n * @param owner The address to set as the owner of the reverse record in ENS.\\n * @param resolver The address of the resolver to set; 0 to leave unchanged.\\n * @return The ENS node hash of the reverse record.\\n */\\n function claimWithResolver(address owner, address resolver) public returns (bytes32) {\\n bytes32 label = sha3HexAddress(msg.sender);\\n bytes32 node = keccak256(abi.encodePacked(ADDR_REVERSE_NODE, label));\\n address currentOwner = ens.owner(node);\\n\\n // Update the resolver if required\\n if (resolver != address(0x0) && resolver != ens.resolver(node)) {\\n // Transfer the name to us first if it\'s not already\\n if (currentOwner != address(this)) {\\n ens.setSubnodeOwner(ADDR_REVERSE_NODE, label, address(this));\\n currentOwner = address(this);\\n }\\n ens.setResolver(node, resolver);\\n }\\n\\n // Update the owner if required\\n if (currentOwner != owner) {\\n ens.setSubnodeOwner(ADDR_REVERSE_NODE, label, owner);\\n }\\n\\n return node;\\n }\\n\\n /**\\n * @dev Sets the `name()` record for the reverse ENS record associated with\\n * the calling account. First updates the resolver to the default reverse\\n * resolver if necessary.\\n * @param name The name to set for this address.\\n * @return The ENS node hash of the reverse record.\\n */\\n function setName(string memory name) public returns (bytes32) {\\n bytes32 node = claimWithResolver(address(this), address(defaultResolver));\\n defaultResolver.setName(node, name);\\n return node;\\n }\\n\\n /**\\n * @dev Returns the node hash for a given account\'s reverse records.\\n * @param addr The address to hash\\n * @return The ENS node hash.\\n */\\n function node(address addr) public pure returns (bytes32) {\\n return keccak256(abi.encodePacked(ADDR_REVERSE_NODE, sha3HexAddress(addr)));\\n }\\n\\n /**\\n * @dev An optimised function to compute the sha3 of the lower-case\\n * hexadecimal representation of an Ethereum address.\\n * @param addr The address to hash\\n * @return The SHA3 hash of the lower-case hexadecimal encoding of the\\n * input address.\\n */\\n function sha3HexAddress(address addr) private pure returns (bytes32 ret) {\\n addr;\\n ret; // Stop warning us about unused variables\\n assembly {\\n let lookup := 0x3031323334353637383961626364656600000000000000000000000000000000\\n\\n for { let i := 40 } gt(i, 0) { } {\\n i := sub(i, 1)\\n mstore8(i, byte(and(addr, 0xf), lookup))\\n addr := div(addr, 0x10)\\n i := sub(i, 1)\\n mstore8(i, byte(and(addr, 0xf), lookup))\\n addr := div(addr, 0x10)\\n }\\n\\n ret := keccak256(0, 40)\\n }\\n }\\n}\\n","sourcePath":"/Users/makoto/work/ens/ens/contracts/ReverseRegistrar.sol","ast":{"absolutePath":"/Users/makoto/work/ens/ens/contracts/ReverseRegistrar.sol","exportedSymbols":{"NameResolver":[2738],"ReverseRegistrar":[2954]},"id":2955,"nodeType":"SourceUnit","nodes":[{"id":2729,"literals":["solidity","^","0.5",".0"],"nodeType":"PragmaDirective","src":"0:23:9"},{"absolutePath":"/Users/makoto/work/ens/ens/contracts/ENS.sol","file":"./ENS.sol","id":2730,"nodeType":"ImportDirective","scope":2955,"sourceUnit":437,"src":"25:19:9","symbolAliases":[],"unitAlias":""},{"baseContracts":[],"contractDependencies":[],"contractKind":"contract","documentation":null,"fullyImplemented":false,"id":2738,"linearizedBaseContracts":[2738],"name":"NameResolver","nodeType":"ContractDefinition","nodes":[{"body":null,"documentation":null,"id":2737,"implemented":false,"kind":"function","modifiers":[],"name":"setName","nodeType":"FunctionDefinition","parameters":{"id":2735,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2732,"name":"node","nodeType":"VariableDeclaration","scope":2737,"src":"91:12:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2731,"name":"bytes32","nodeType":"ElementaryTypeName","src":"91:7:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":2734,"name":"name","nodeType":"VariableDeclaration","scope":2737,"src":"105:18:9","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":2733,"name":"string","nodeType":"ElementaryTypeName","src":"105:6:9","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":null,"visibility":"internal"}],"src":"90:34:9"},"returnParameters":{"id":2736,"nodeType":"ParameterList","parameters":[],"src":"131:0:9"},"scope":2738,"src":"74:58:9","stateMutability":"nonpayable","superFunction":null,"visibility":"public"}],"scope":2955,"src":"46:88:9"},{"baseContracts":[],"contractDependencies":[],"contractKind":"contract","documentation":null,"fullyImplemented":true,"id":2954,"linearizedBaseContracts":[2954],"name":"ReverseRegistrar","nodeType":"ContractDefinition","nodes":[{"constant":true,"id":2741,"name":"ADDR_REVERSE_NODE","nodeType":"VariableDeclaration","scope":2954,"src":"200:110:9","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2739,"name":"bytes32","nodeType":"ElementaryTypeName","src":"200:7:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":{"argumentTypes":null,"hexValue":"307839316431373737373831383834643033613637353761383033393936653338646532613432393637666233376565616361373237323932373130323561396532","id":2740,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"244:66:9","subdenomination":null,"typeDescriptions":{"typeIdentifier":"t_rational_65955458610802586644366824307633271870356699036341805474246458084352783133154_by_1","typeString":"int_const 6595...(69 digits omitted)...3154"},"value":"0x91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2"},"visibility":"public"},{"constant":false,"id":2743,"name":"ens","nodeType":"VariableDeclaration","scope":2954,"src":"317:14:9","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ENS_$436","typeString":"contract ENS"},"typeName":{"contractScope":null,"id":2742,"name":"ENS","nodeType":"UserDefinedTypeName","referencedDeclaration":436,"src":"317:3:9","typeDescriptions":{"typeIdentifier":"t_contract$_ENS_$436","typeString":"contract ENS"}},"value":null,"visibility":"public"},{"constant":false,"id":2745,"name":"defaultResolver","nodeType":"VariableDeclaration","scope":2954,"src":"337:35:9","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_NameResolver_$2738","typeString":"contract NameResolver"},"typeName":{"contractScope":null,"id":2744,"name":"NameResolver","nodeType":"UserDefinedTypeName","referencedDeclaration":2738,"src":"337:12:9","typeDescriptions":{"typeIdentifier":"t_contract$_NameResolver_$2738","typeString":"contract NameResolver"}},"value":null,"visibility":"public"},{"body":{"id":2785,"nodeType":"Block","src":"605:332:9","statements":[{"expression":{"argumentTypes":null,"id":2754,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"argumentTypes":null,"id":2752,"name":"ens","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2743,"src":"615:3:9","typeDescriptions":{"typeIdentifier":"t_contract$_ENS_$436","typeString":"contract ENS"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"argumentTypes":null,"id":2753,"name":"ensAddr","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2747,"src":"621:7:9","typeDescriptions":{"typeIdentifier":"t_contract$_ENS_$436","typeString":"contract ENS"}},"src":"615:13:9","typeDescriptions":{"typeIdentifier":"t_contract$_ENS_$436","typeString":"contract ENS"}},"id":2755,"nodeType":"ExpressionStatement","src":"615:13:9"},{"expression":{"argumentTypes":null,"id":2758,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"argumentTypes":null,"id":2756,"name":"defaultResolver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2745,"src":"638:15:9","typeDescriptions":{"typeIdentifier":"t_contract$_NameResolver_$2738","typeString":"contract NameResolver"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"argumentTypes":null,"id":2757,"name":"resolverAddr","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2749,"src":"656:12:9","typeDescriptions":{"typeIdentifier":"t_contract$_NameResolver_$2738","typeString":"contract NameResolver"}},"src":"638:30:9","typeDescriptions":{"typeIdentifier":"t_contract$_NameResolver_$2738","typeString":"contract NameResolver"}},"id":2759,"nodeType":"ExpressionStatement","src":"638:30:9"},{"assignments":[2761],"declarations":[{"constant":false,"id":2761,"name":"oldRegistrar","nodeType":"VariableDeclaration","scope":2785,"src":"745:29:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ReverseRegistrar_$2954","typeString":"contract ReverseRegistrar"},"typeName":{"contractScope":null,"id":2760,"name":"ReverseRegistrar","nodeType":"UserDefinedTypeName","referencedDeclaration":2954,"src":"745:16:9","typeDescriptions":{"typeIdentifier":"t_contract$_ReverseRegistrar_$2954","typeString":"contract ReverseRegistrar"}},"value":null,"visibility":"internal"}],"id":2768,"initialValue":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":2765,"name":"ADDR_REVERSE_NODE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2741,"src":"804:17:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"expression":{"argumentTypes":null,"id":2763,"name":"ens","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2743,"src":"794:3:9","typeDescriptions":{"typeIdentifier":"t_contract$_ENS_$436","typeString":"contract ENS"}},"id":2764,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"owner","nodeType":"MemberAccess","referencedDeclaration":405,"src":"794:9:9","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$returns$_t_address_$","typeString":"function (bytes32) view external returns (address)"}},"id":2766,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"794:28:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":2762,"name":"ReverseRegistrar","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2954,"src":"777:16:9","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ReverseRegistrar_$2954_$","typeString":"type(contract ReverseRegistrar)"}},"id":2767,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"777:46:9","typeDescriptions":{"typeIdentifier":"t_contract$_ReverseRegistrar_$2954","typeString":"contract ReverseRegistrar"}},"nodeType":"VariableDeclarationStatement","src":"745:78:9"},{"condition":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":2775,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":2770,"name":"oldRegistrar","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2761,"src":"845:12:9","typeDescriptions":{"typeIdentifier":"t_contract$_ReverseRegistrar_$2954","typeString":"contract ReverseRegistrar"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ReverseRegistrar_$2954","typeString":"contract ReverseRegistrar"}],"id":2769,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"837:7:9","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":"address"},"id":2771,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"837:21:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"hexValue":"307830","id":2773,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"870:3:9","subdenomination":null,"typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0x0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":2772,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"862:7:9","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":"address"},"id":2774,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"862:12:9","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"src":"837:37:9","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":null,"id":2784,"nodeType":"IfStatement","src":"833:98:9","trueBody":{"id":2783,"nodeType":"Block","src":"876:55:9","statements":[{"expression":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"expression":{"argumentTypes":null,"id":2779,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3032,"src":"909:3:9","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":2780,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","referencedDeclaration":null,"src":"909:10:9","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"expression":{"argumentTypes":null,"id":2776,"name":"oldRegistrar","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2761,"src":"890:12:9","typeDescriptions":{"typeIdentifier":"t_contract$_ReverseRegistrar_$2954","typeString":"contract ReverseRegistrar"}},"id":2778,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"claim","nodeType":"MemberAccess","referencedDeclaration":2801,"src":"890:18:9","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$_t_bytes32_$","typeString":"function (address) external returns (bytes32)"}},"id":2781,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"890:30:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":2782,"nodeType":"ExpressionStatement","src":"890:30:9"}]}}]},"documentation":"@dev Constructor\\n@param ensAddr The address of the ENS registry.\\n@param resolverAddr The address of the default reverse resolver.","id":2786,"implemented":true,"kind":"constructor","modifiers":[],"name":"","nodeType":"FunctionDefinition","parameters":{"id":2750,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2747,"name":"ensAddr","nodeType":"VariableDeclaration","scope":2786,"src":"558:11:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ENS_$436","typeString":"contract ENS"},"typeName":{"contractScope":null,"id":2746,"name":"ENS","nodeType":"UserDefinedTypeName","referencedDeclaration":436,"src":"558:3:9","typeDescriptions":{"typeIdentifier":"t_contract$_ENS_$436","typeString":"contract ENS"}},"value":null,"visibility":"internal"},{"constant":false,"id":2749,"name":"resolverAddr","nodeType":"VariableDeclaration","scope":2786,"src":"571:25:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_NameResolver_$2738","typeString":"contract NameResolver"},"typeName":{"contractScope":null,"id":2748,"name":"NameResolver","nodeType":"UserDefinedTypeName","referencedDeclaration":2738,"src":"571:12:9","typeDescriptions":{"typeIdentifier":"t_contract$_NameResolver_$2738","typeString":"contract NameResolver"}},"value":null,"visibility":"internal"}],"src":"557:40:9"},"returnParameters":{"id":2751,"nodeType":"ParameterList","parameters":[],"src":"605:0:9"},"scope":2954,"src":"546:391:9","stateMutability":"nonpayable","superFunction":null,"visibility":"public"},{"body":{"id":2800,"nodeType":"Block","src":"1259:62:9","statements":[{"expression":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":2794,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2788,"src":"1294:5:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"argumentTypes":null,"arguments":[{"argumentTypes":null,"hexValue":"307830","id":2796,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1309:3:9","subdenomination":null,"typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0x0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":2795,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1301:7:9","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":"address"},"id":2797,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1301:12:9","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":2793,"name":"claimWithResolver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2894,"src":"1276:17:9","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$returns$_t_bytes32_$","typeString":"function (address,address) returns (bytes32)"}},"id":2798,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1276:38:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":2792,"id":2799,"nodeType":"Return","src":"1269:45:9"}]},"documentation":"@dev Transfers ownership of the reverse ENS record associated with the\\n calling account.\\n@param owner The address to set as the owner of the reverse record in ENS.\\n@return The ENS node hash of the reverse record.","id":2801,"implemented":true,"kind":"function","modifiers":[],"name":"claim","nodeType":"FunctionDefinition","parameters":{"id":2789,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2788,"name":"owner","nodeType":"VariableDeclaration","scope":2801,"src":"1219:13:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2787,"name":"address","nodeType":"ElementaryTypeName","src":"1219:7:9","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"1218:15:9"},"returnParameters":{"id":2792,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2791,"name":"","nodeType":"VariableDeclaration","scope":2801,"src":"1250:7:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2790,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1250:7:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"1249:9:9"},"scope":2954,"src":"1204:117:9","stateMutability":"nonpayable","superFunction":null,"visibility":"public"},{"body":{"id":2893,"nodeType":"Block","src":"1754:786:9","statements":[{"assignments":[2811],"declarations":[{"constant":false,"id":2811,"name":"label","nodeType":"VariableDeclaration","scope":2893,"src":"1764:13:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2810,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1764:7:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"id":2816,"initialValue":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"expression":{"argumentTypes":null,"id":2813,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3032,"src":"1795:3:9","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":2814,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","referencedDeclaration":null,"src":"1795:10:9","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":2812,"name":"sha3HexAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2953,"src":"1780:14:9","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$_t_bytes32_$","typeString":"function (address) pure returns (bytes32)"}},"id":2815,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1780:26:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"1764:42:9"},{"assignments":[2818],"declarations":[{"constant":false,"id":2818,"name":"node","nodeType":"VariableDeclaration","scope":2893,"src":"1816:12:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2817,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1816:7:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"id":2826,"initialValue":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":2822,"name":"ADDR_REVERSE_NODE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2741,"src":"1858:17:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"argumentTypes":null,"id":2823,"name":"label","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2811,"src":"1877:5:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"expression":{"argumentTypes":null,"id":2820,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3019,"src":"1841:3:9","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":2821,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"encodePacked","nodeType":"MemberAccess","referencedDeclaration":null,"src":"1841:16:9","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":2824,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1841:42:9","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":2819,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3026,"src":"1831:9:9","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":2825,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1831:53:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"1816:68:9"},{"assignments":[2828],"declarations":[{"constant":false,"id":2828,"name":"currentOwner","nodeType":"VariableDeclaration","scope":2893,"src":"1894:20:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2827,"name":"address","nodeType":"ElementaryTypeName","src":"1894:7:9","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"id":2833,"initialValue":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":2831,"name":"node","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2818,"src":"1927:4:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"expression":{"argumentTypes":null,"id":2829,"name":"ens","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2743,"src":"1917:3:9","typeDescriptions":{"typeIdentifier":"t_contract$_ENS_$436","typeString":"contract ENS"}},"id":2830,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"owner","nodeType":"MemberAccess","referencedDeclaration":405,"src":"1917:9:9","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$returns$_t_address_$","typeString":"function (bytes32) view external returns (address)"}},"id":2832,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1917:15:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"1894:38:9"},{"condition":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":2845,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":2838,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"argumentTypes":null,"id":2834,"name":"resolver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2805,"src":"1990:8:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"hexValue":"307830","id":2836,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2010:3:9","subdenomination":null,"typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0x0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":2835,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2002:7:9","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":"address"},"id":2837,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2002:12:9","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"src":"1990:24:9","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":2844,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"argumentTypes":null,"id":2839,"name":"resolver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2805,"src":"2018:8:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":2842,"name":"node","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2818,"src":"2043:4:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"expression":{"argumentTypes":null,"id":2840,"name":"ens","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2743,"src":"2030:3:9","typeDescriptions":{"typeIdentifier":"t_contract$_ENS_$436","typeString":"contract ENS"}},"id":2841,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"resolver","nodeType":"MemberAccess","referencedDeclaration":412,"src":"2030:12:9","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$returns$_t_address_$","typeString":"function (bytes32) view external returns (address)"}},"id":2843,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2030:18:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2018:30:9","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"1990:58:9","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":null,"id":2877,"nodeType":"IfStatement","src":"1986:372:9","trueBody":{"id":2876,"nodeType":"Block","src":"2050:308:9","statements":[{"condition":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":2850,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"argumentTypes":null,"id":2846,"name":"currentOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2828,"src":"2133:12:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":2848,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3065,"src":"2157:4:9","typeDescriptions":{"typeIdentifier":"t_contract$_ReverseRegistrar_$2954","typeString":"contract ReverseRegistrar"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ReverseRegistrar_$2954","typeString":"contract ReverseRegistrar"}],"id":2847,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2149:7:9","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":"address"},"id":2849,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2149:13:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2133:29:9","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":null,"id":2868,"nodeType":"IfStatement","src":"2129:174:9","trueBody":{"id":2867,"nodeType":"Block","src":"2164:139:9","statements":[{"expression":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":2854,"name":"ADDR_REVERSE_NODE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2741,"src":"2202:17:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"argumentTypes":null,"id":2855,"name":"label","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2811,"src":"2221:5:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":2857,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3065,"src":"2236:4:9","typeDescriptions":{"typeIdentifier":"t_contract$_ReverseRegistrar_$2954","typeString":"contract ReverseRegistrar"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ReverseRegistrar_$2954","typeString":"contract ReverseRegistrar"}],"id":2856,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2228:7:9","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":"address"},"id":2858,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2228:13:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"argumentTypes":null,"id":2851,"name":"ens","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2743,"src":"2182:3:9","typeDescriptions":{"typeIdentifier":"t_contract$_ENS_$436","typeString":"contract ENS"}},"id":2853,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"setSubnodeOwner","nodeType":"MemberAccess","referencedDeclaration":370,"src":"2182:19:9","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes32_$_t_bytes32_$_t_address_$returns$_t_bytes32_$","typeString":"function (bytes32,bytes32,address) external returns (bytes32)"}},"id":2859,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2182:60:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":2860,"nodeType":"ExpressionStatement","src":"2182:60:9"},{"expression":{"argumentTypes":null,"id":2865,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"argumentTypes":null,"id":2861,"name":"currentOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2828,"src":"2260:12:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":2863,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3065,"src":"2283:4:9","typeDescriptions":{"typeIdentifier":"t_contract$_ReverseRegistrar_$2954","typeString":"contract ReverseRegistrar"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ReverseRegistrar_$2954","typeString":"contract ReverseRegistrar"}],"id":2862,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2275:7:9","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":"address"},"id":2864,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2275:13:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2260:28:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":2866,"nodeType":"ExpressionStatement","src":"2260:28:9"}]}},{"expression":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":2872,"name":"node","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2818,"src":"2332:4:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"argumentTypes":null,"id":2873,"name":"resolver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2805,"src":"2338:8:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"argumentTypes":null,"id":2869,"name":"ens","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2743,"src":"2316:3:9","typeDescriptions":{"typeIdentifier":"t_contract$_ENS_$436","typeString":"contract ENS"}},"id":2871,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"setResolver","nodeType":"MemberAccess","referencedDeclaration":377,"src":"2316:15:9","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address) external"}},"id":2874,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2316:31:9","typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2875,"nodeType":"ExpressionStatement","src":"2316:31:9"}]}},{"condition":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":2880,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"argumentTypes":null,"id":2878,"name":"currentOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2828,"src":"2412:12:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"argumentTypes":null,"id":2879,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2803,"src":"2428:5:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2412:21:9","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":null,"id":2890,"nodeType":"IfStatement","src":"2408:104:9","trueBody":{"id":2889,"nodeType":"Block","src":"2435:77:9","statements":[{"expression":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":2884,"name":"ADDR_REVERSE_NODE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2741,"src":"2469:17:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"argumentTypes":null,"id":2885,"name":"label","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2811,"src":"2488:5:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"argumentTypes":null,"id":2886,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2803,"src":"2495:5:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"argumentTypes":null,"id":2881,"name":"ens","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2743,"src":"2449:3:9","typeDescriptions":{"typeIdentifier":"t_contract$_ENS_$436","typeString":"contract ENS"}},"id":2883,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"setSubnodeOwner","nodeType":"MemberAccess","referencedDeclaration":370,"src":"2449:19:9","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes32_$_t_bytes32_$_t_address_$returns$_t_bytes32_$","typeString":"function (bytes32,bytes32,address) external returns (bytes32)"}},"id":2887,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2449:52:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":2888,"nodeType":"ExpressionStatement","src":"2449:52:9"}]}},{"expression":{"argumentTypes":null,"id":2891,"name":"node","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2818,"src":"2529:4:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":2809,"id":2892,"nodeType":"Return","src":"2522:11:9"}]},"documentation":"@dev Transfers ownership of the reverse ENS record associated with the\\n calling account.\\n@param owner The address to set as the owner of the reverse record in ENS.\\n@param resolver The address of the resolver to set; 0 to leave unchanged.\\n@return The ENS node hash of the reverse record.","id":2894,"implemented":true,"kind":"function","modifiers":[],"name":"claimWithResolver","nodeType":"FunctionDefinition","parameters":{"id":2806,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2803,"name":"owner","nodeType":"VariableDeclaration","scope":2894,"src":"1696:13:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2802,"name":"address","nodeType":"ElementaryTypeName","src":"1696:7:9","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"},{"constant":false,"id":2805,"name":"resolver","nodeType":"VariableDeclaration","scope":2894,"src":"1711:16:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2804,"name":"address","nodeType":"ElementaryTypeName","src":"1711:7:9","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"1695:33:9"},"returnParameters":{"id":2809,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2808,"name":"","nodeType":"VariableDeclaration","scope":2894,"src":"1745:7:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2807,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1745:7:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"1744:9:9"},"scope":2954,"src":"1669:871:9","stateMutability":"nonpayable","superFunction":null,"visibility":"public"},{"body":{"id":2921,"nodeType":"Block","src":"2921:156:9","statements":[{"assignments":[2902],"declarations":[{"constant":false,"id":2902,"name":"node","nodeType":"VariableDeclaration","scope":2921,"src":"2931:12:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2901,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2931:7:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"id":2911,"initialValue":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":2905,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3065,"src":"2972:4:9","typeDescriptions":{"typeIdentifier":"t_contract$_ReverseRegistrar_$2954","typeString":"contract ReverseRegistrar"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ReverseRegistrar_$2954","typeString":"contract ReverseRegistrar"}],"id":2904,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2964:7:9","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":"address"},"id":2906,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2964:13:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":2908,"name":"defaultResolver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2745,"src":"2987:15:9","typeDescriptions":{"typeIdentifier":"t_contract$_NameResolver_$2738","typeString":"contract NameResolver"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_NameResolver_$2738","typeString":"contract NameResolver"}],"id":2907,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2979:7:9","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":"address"},"id":2909,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2979:24:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":2903,"name":"claimWithResolver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2894,"src":"2946:17:9","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$returns$_t_bytes32_$","typeString":"function (address,address) returns (bytes32)"}},"id":2910,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2946:58:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"2931:73:9"},{"expression":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":2915,"name":"node","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2902,"src":"3038:4:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"argumentTypes":null,"id":2916,"name":"name","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2896,"src":"3044:4:9","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"expression":{"argumentTypes":null,"id":2912,"name":"defaultResolver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2745,"src":"3014:15:9","typeDescriptions":{"typeIdentifier":"t_contract$_NameResolver_$2738","typeString":"contract NameResolver"}},"id":2914,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"setName","nodeType":"MemberAccess","referencedDeclaration":2737,"src":"3014:23:9","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes32_$_t_string_memory_ptr_$returns$__$","typeString":"function (bytes32,string memory) external"}},"id":2917,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3014:35:9","typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2918,"nodeType":"ExpressionStatement","src":"3014:35:9"},{"expression":{"argumentTypes":null,"id":2919,"name":"node","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2902,"src":"3066:4:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":2900,"id":2920,"nodeType":"Return","src":"3059:11:9"}]},"documentation":"@dev Sets the `name()` record for the reverse ENS record associated with\\nthe calling account. First updates the resolver to the default reverse\\nresolver if necessary.\\n@param name The name to set for this address.\\n@return The ENS node hash of the reverse record.","id":2922,"implemented":true,"kind":"function","modifiers":[],"name":"setName","nodeType":"FunctionDefinition","parameters":{"id":2897,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2896,"name":"name","nodeType":"VariableDeclaration","scope":2922,"src":"2876:18:9","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":2895,"name":"string","nodeType":"ElementaryTypeName","src":"2876:6:9","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":null,"visibility":"internal"}],"src":"2875:20:9"},"returnParameters":{"id":2900,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2899,"name":"","nodeType":"VariableDeclaration","scope":2922,"src":"2912:7:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2898,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2912:7:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"2911:9:9"},"scope":2954,"src":"2859:218:9","stateMutability":"nonpayable","superFunction":null,"visibility":"public"},{"body":{"id":2939,"nodeType":"Block","src":"3303:92:9","statements":[{"expression":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":2932,"name":"ADDR_REVERSE_NODE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2741,"src":"3347:17:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":2934,"name":"addr","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2924,"src":"3381:4:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":2933,"name":"sha3HexAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2953,"src":"3366:14:9","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$_t_bytes32_$","typeString":"function (address) pure returns (bytes32)"}},"id":2935,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3366:20:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"expression":{"argumentTypes":null,"id":2930,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3019,"src":"3330:3:9","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":2931,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"encodePacked","nodeType":"MemberAccess","referencedDeclaration":null,"src":"3330:16:9","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":2936,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3330:57:9","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":2929,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3026,"src":"3320:9:9","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":2937,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3320:68:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":2928,"id":2938,"nodeType":"Return","src":"3313:75:9"}]},"documentation":"@dev Returns the node hash for a given account\'s reverse records.\\n@param addr The address to hash\\n@return The ENS node hash.","id":2940,"implemented":true,"kind":"function","modifiers":[],"name":"node","nodeType":"FunctionDefinition","parameters":{"id":2925,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2924,"name":"addr","nodeType":"VariableDeclaration","scope":2940,"src":"3259:12:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2923,"name":"address","nodeType":"ElementaryTypeName","src":"3259:7:9","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"3258:14:9"},"returnParameters":{"id":2928,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2927,"name":"","nodeType":"VariableDeclaration","scope":2940,"src":"3294:7:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2926,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3294:7:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"3293:9:9"},"scope":2954,"src":"3245:150:9","stateMutability":"pure","superFunction":null,"visibility":"public"},{"body":{"id":2952,"nodeType":"Block","src":"3769:553:9","statements":[{"expression":{"argumentTypes":null,"id":2947,"name":"addr","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2942,"src":"3779:4:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":2948,"nodeType":"ExpressionStatement","src":"3779:4:9"},{"expression":{"argumentTypes":null,"id":2949,"name":"ret","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2945,"src":"3793:3:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":2950,"nodeType":"ExpressionStatement","src":"3793:3:9"},{"externalReferences":[{"addr":{"declaration":2942,"isOffset":false,"isSlot":false,"src":"4104:4:9","valueSize":1}},{"addr":{"declaration":2942,"isOffset":false,"isSlot":false,"src":"4067:4:9","valueSize":1}},{"addr":{"declaration":2942,"isOffset":false,"isSlot":false,"src":"4116:4:9","valueSize":1}},{"addr":{"declaration":2942,"isOffset":false,"isSlot":false,"src":"4244:4:9","valueSize":1}},{"addr":{"declaration":2942,"isOffset":false,"isSlot":false,"src":"4232:4:9","valueSize":1}},{"ret":{"declaration":2945,"isOffset":false,"isSlot":false,"src":"4283:3:9","valueSize":1}},{"addr":{"declaration":2942,"isOffset":false,"isSlot":false,"src":"4195:4:9","valueSize":1}}],"id":2951,"nodeType":"InlineAssembly","operations":"{\\n let lookup := 0x3031323334353637383961626364656600000000000000000000000000000000\\n for {\\n let i := 40\\n }\\n gt(i, 0)\\n {\\n }\\n {\\n i := sub(i, 1)\\n mstore8(i, byte(and(addr, 0xf), lookup))\\n addr := div(addr, 0x10)\\n i := sub(i, 1)\\n mstore8(i, byte(and(addr, 0xf), lookup))\\n addr := div(addr, 0x10)\\n }\\n ret := keccak256(0, 40)\\n}","src":"3848:474:9"}]},"documentation":"@dev An optimised function to compute the sha3 of the lower-case\\n hexadecimal representation of an Ethereum address.\\n@param addr The address to hash\\n@return The SHA3 hash of the lower-case hexadecimal encoding of the\\n input address.","id":2953,"implemented":true,"kind":"function","modifiers":[],"name":"sha3HexAddress","nodeType":"FunctionDefinition","parameters":{"id":2943,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2942,"name":"addr","nodeType":"VariableDeclaration","scope":2953,"src":"3720:12:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2941,"name":"address","nodeType":"ElementaryTypeName","src":"3720:7:9","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"3719:14:9"},"returnParameters":{"id":2946,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2945,"name":"ret","nodeType":"VariableDeclaration","scope":2953,"src":"3756:11:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2944,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3756:7:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"3755:13:9"},"scope":2954,"src":"3696:626:9","stateMutability":"pure","superFunction":null,"visibility":"private"}],"scope":2955,"src":"136:4188:9"}],"src":"0:4325:9"},"legacyAST":{"absolutePath":"/Users/makoto/work/ens/ens/contracts/ReverseRegistrar.sol","exportedSymbols":{"NameResolver":[2738],"ReverseRegistrar":[2954]},"id":2955,"nodeType":"SourceUnit","nodes":[{"id":2729,"literals":["solidity","^","0.5",".0"],"nodeType":"PragmaDirective","src":"0:23:9"},{"absolutePath":"/Users/makoto/work/ens/ens/contracts/ENS.sol","file":"./ENS.sol","id":2730,"nodeType":"ImportDirective","scope":2955,"sourceUnit":437,"src":"25:19:9","symbolAliases":[],"unitAlias":""},{"baseContracts":[],"contractDependencies":[],"contractKind":"contract","documentation":null,"fullyImplemented":false,"id":2738,"linearizedBaseContracts":[2738],"name":"NameResolver","nodeType":"ContractDefinition","nodes":[{"body":null,"documentation":null,"id":2737,"implemented":false,"kind":"function","modifiers":[],"name":"setName","nodeType":"FunctionDefinition","parameters":{"id":2735,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2732,"name":"node","nodeType":"VariableDeclaration","scope":2737,"src":"91:12:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2731,"name":"bytes32","nodeType":"ElementaryTypeName","src":"91:7:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":2734,"name":"name","nodeType":"VariableDeclaration","scope":2737,"src":"105:18:9","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":2733,"name":"string","nodeType":"ElementaryTypeName","src":"105:6:9","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":null,"visibility":"internal"}],"src":"90:34:9"},"returnParameters":{"id":2736,"nodeType":"ParameterList","parameters":[],"src":"131:0:9"},"scope":2738,"src":"74:58:9","stateMutability":"nonpayable","superFunction":null,"visibility":"public"}],"scope":2955,"src":"46:88:9"},{"baseContracts":[],"contractDependencies":[],"contractKind":"contract","documentation":null,"fullyImplemented":true,"id":2954,"linearizedBaseContracts":[2954],"name":"ReverseRegistrar","nodeType":"ContractDefinition","nodes":[{"constant":true,"id":2741,"name":"ADDR_REVERSE_NODE","nodeType":"VariableDeclaration","scope":2954,"src":"200:110:9","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2739,"name":"bytes32","nodeType":"ElementaryTypeName","src":"200:7:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":{"argumentTypes":null,"hexValue":"307839316431373737373831383834643033613637353761383033393936653338646532613432393637666233376565616361373237323932373130323561396532","id":2740,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"244:66:9","subdenomination":null,"typeDescriptions":{"typeIdentifier":"t_rational_65955458610802586644366824307633271870356699036341805474246458084352783133154_by_1","typeString":"int_const 6595...(69 digits omitted)...3154"},"value":"0x91d1777781884d03a6757a803996e38de2a42967fb37eeaca72729271025a9e2"},"visibility":"public"},{"constant":false,"id":2743,"name":"ens","nodeType":"VariableDeclaration","scope":2954,"src":"317:14:9","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ENS_$436","typeString":"contract ENS"},"typeName":{"contractScope":null,"id":2742,"name":"ENS","nodeType":"UserDefinedTypeName","referencedDeclaration":436,"src":"317:3:9","typeDescriptions":{"typeIdentifier":"t_contract$_ENS_$436","typeString":"contract ENS"}},"value":null,"visibility":"public"},{"constant":false,"id":2745,"name":"defaultResolver","nodeType":"VariableDeclaration","scope":2954,"src":"337:35:9","stateVariable":true,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_NameResolver_$2738","typeString":"contract NameResolver"},"typeName":{"contractScope":null,"id":2744,"name":"NameResolver","nodeType":"UserDefinedTypeName","referencedDeclaration":2738,"src":"337:12:9","typeDescriptions":{"typeIdentifier":"t_contract$_NameResolver_$2738","typeString":"contract NameResolver"}},"value":null,"visibility":"public"},{"body":{"id":2785,"nodeType":"Block","src":"605:332:9","statements":[{"expression":{"argumentTypes":null,"id":2754,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"argumentTypes":null,"id":2752,"name":"ens","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2743,"src":"615:3:9","typeDescriptions":{"typeIdentifier":"t_contract$_ENS_$436","typeString":"contract ENS"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"argumentTypes":null,"id":2753,"name":"ensAddr","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2747,"src":"621:7:9","typeDescriptions":{"typeIdentifier":"t_contract$_ENS_$436","typeString":"contract ENS"}},"src":"615:13:9","typeDescriptions":{"typeIdentifier":"t_contract$_ENS_$436","typeString":"contract ENS"}},"id":2755,"nodeType":"ExpressionStatement","src":"615:13:9"},{"expression":{"argumentTypes":null,"id":2758,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"argumentTypes":null,"id":2756,"name":"defaultResolver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2745,"src":"638:15:9","typeDescriptions":{"typeIdentifier":"t_contract$_NameResolver_$2738","typeString":"contract NameResolver"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"argumentTypes":null,"id":2757,"name":"resolverAddr","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2749,"src":"656:12:9","typeDescriptions":{"typeIdentifier":"t_contract$_NameResolver_$2738","typeString":"contract NameResolver"}},"src":"638:30:9","typeDescriptions":{"typeIdentifier":"t_contract$_NameResolver_$2738","typeString":"contract NameResolver"}},"id":2759,"nodeType":"ExpressionStatement","src":"638:30:9"},{"assignments":[2761],"declarations":[{"constant":false,"id":2761,"name":"oldRegistrar","nodeType":"VariableDeclaration","scope":2785,"src":"745:29:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ReverseRegistrar_$2954","typeString":"contract ReverseRegistrar"},"typeName":{"contractScope":null,"id":2760,"name":"ReverseRegistrar","nodeType":"UserDefinedTypeName","referencedDeclaration":2954,"src":"745:16:9","typeDescriptions":{"typeIdentifier":"t_contract$_ReverseRegistrar_$2954","typeString":"contract ReverseRegistrar"}},"value":null,"visibility":"internal"}],"id":2768,"initialValue":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":2765,"name":"ADDR_REVERSE_NODE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2741,"src":"804:17:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"expression":{"argumentTypes":null,"id":2763,"name":"ens","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2743,"src":"794:3:9","typeDescriptions":{"typeIdentifier":"t_contract$_ENS_$436","typeString":"contract ENS"}},"id":2764,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"owner","nodeType":"MemberAccess","referencedDeclaration":405,"src":"794:9:9","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$returns$_t_address_$","typeString":"function (bytes32) view external returns (address)"}},"id":2766,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"794:28:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":2762,"name":"ReverseRegistrar","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2954,"src":"777:16:9","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_ReverseRegistrar_$2954_$","typeString":"type(contract ReverseRegistrar)"}},"id":2767,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"777:46:9","typeDescriptions":{"typeIdentifier":"t_contract$_ReverseRegistrar_$2954","typeString":"contract ReverseRegistrar"}},"nodeType":"VariableDeclarationStatement","src":"745:78:9"},{"condition":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":2775,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":2770,"name":"oldRegistrar","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2761,"src":"845:12:9","typeDescriptions":{"typeIdentifier":"t_contract$_ReverseRegistrar_$2954","typeString":"contract ReverseRegistrar"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ReverseRegistrar_$2954","typeString":"contract ReverseRegistrar"}],"id":2769,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"837:7:9","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":"address"},"id":2771,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"837:21:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"hexValue":"307830","id":2773,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"870:3:9","subdenomination":null,"typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0x0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":2772,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"862:7:9","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":"address"},"id":2774,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"862:12:9","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"src":"837:37:9","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":null,"id":2784,"nodeType":"IfStatement","src":"833:98:9","trueBody":{"id":2783,"nodeType":"Block","src":"876:55:9","statements":[{"expression":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"expression":{"argumentTypes":null,"id":2779,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3032,"src":"909:3:9","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":2780,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","referencedDeclaration":null,"src":"909:10:9","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"expression":{"argumentTypes":null,"id":2776,"name":"oldRegistrar","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2761,"src":"890:12:9","typeDescriptions":{"typeIdentifier":"t_contract$_ReverseRegistrar_$2954","typeString":"contract ReverseRegistrar"}},"id":2778,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"claim","nodeType":"MemberAccess","referencedDeclaration":2801,"src":"890:18:9","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_address_$returns$_t_bytes32_$","typeString":"function (address) external returns (bytes32)"}},"id":2781,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"890:30:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":2782,"nodeType":"ExpressionStatement","src":"890:30:9"}]}}]},"documentation":"@dev Constructor\\n@param ensAddr The address of the ENS registry.\\n@param resolverAddr The address of the default reverse resolver.","id":2786,"implemented":true,"kind":"constructor","modifiers":[],"name":"","nodeType":"FunctionDefinition","parameters":{"id":2750,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2747,"name":"ensAddr","nodeType":"VariableDeclaration","scope":2786,"src":"558:11:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_ENS_$436","typeString":"contract ENS"},"typeName":{"contractScope":null,"id":2746,"name":"ENS","nodeType":"UserDefinedTypeName","referencedDeclaration":436,"src":"558:3:9","typeDescriptions":{"typeIdentifier":"t_contract$_ENS_$436","typeString":"contract ENS"}},"value":null,"visibility":"internal"},{"constant":false,"id":2749,"name":"resolverAddr","nodeType":"VariableDeclaration","scope":2786,"src":"571:25:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_contract$_NameResolver_$2738","typeString":"contract NameResolver"},"typeName":{"contractScope":null,"id":2748,"name":"NameResolver","nodeType":"UserDefinedTypeName","referencedDeclaration":2738,"src":"571:12:9","typeDescriptions":{"typeIdentifier":"t_contract$_NameResolver_$2738","typeString":"contract NameResolver"}},"value":null,"visibility":"internal"}],"src":"557:40:9"},"returnParameters":{"id":2751,"nodeType":"ParameterList","parameters":[],"src":"605:0:9"},"scope":2954,"src":"546:391:9","stateMutability":"nonpayable","superFunction":null,"visibility":"public"},{"body":{"id":2800,"nodeType":"Block","src":"1259:62:9","statements":[{"expression":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":2794,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2788,"src":"1294:5:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"argumentTypes":null,"arguments":[{"argumentTypes":null,"hexValue":"307830","id":2796,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1309:3:9","subdenomination":null,"typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0x0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":2795,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"1301:7:9","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":"address"},"id":2797,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1301:12:9","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":2793,"name":"claimWithResolver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2894,"src":"1276:17:9","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$returns$_t_bytes32_$","typeString":"function (address,address) returns (bytes32)"}},"id":2798,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1276:38:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":2792,"id":2799,"nodeType":"Return","src":"1269:45:9"}]},"documentation":"@dev Transfers ownership of the reverse ENS record associated with the\\n calling account.\\n@param owner The address to set as the owner of the reverse record in ENS.\\n@return The ENS node hash of the reverse record.","id":2801,"implemented":true,"kind":"function","modifiers":[],"name":"claim","nodeType":"FunctionDefinition","parameters":{"id":2789,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2788,"name":"owner","nodeType":"VariableDeclaration","scope":2801,"src":"1219:13:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2787,"name":"address","nodeType":"ElementaryTypeName","src":"1219:7:9","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"1218:15:9"},"returnParameters":{"id":2792,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2791,"name":"","nodeType":"VariableDeclaration","scope":2801,"src":"1250:7:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2790,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1250:7:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"1249:9:9"},"scope":2954,"src":"1204:117:9","stateMutability":"nonpayable","superFunction":null,"visibility":"public"},{"body":{"id":2893,"nodeType":"Block","src":"1754:786:9","statements":[{"assignments":[2811],"declarations":[{"constant":false,"id":2811,"name":"label","nodeType":"VariableDeclaration","scope":2893,"src":"1764:13:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2810,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1764:7:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"id":2816,"initialValue":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"expression":{"argumentTypes":null,"id":2813,"name":"msg","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3032,"src":"1795:3:9","typeDescriptions":{"typeIdentifier":"t_magic_message","typeString":"msg"}},"id":2814,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"sender","nodeType":"MemberAccess","referencedDeclaration":null,"src":"1795:10:9","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address_payable","typeString":"address payable"}],"id":2812,"name":"sha3HexAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2953,"src":"1780:14:9","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$_t_bytes32_$","typeString":"function (address) pure returns (bytes32)"}},"id":2815,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1780:26:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"1764:42:9"},{"assignments":[2818],"declarations":[{"constant":false,"id":2818,"name":"node","nodeType":"VariableDeclaration","scope":2893,"src":"1816:12:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2817,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1816:7:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"id":2826,"initialValue":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":2822,"name":"ADDR_REVERSE_NODE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2741,"src":"1858:17:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"argumentTypes":null,"id":2823,"name":"label","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2811,"src":"1877:5:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"expression":{"argumentTypes":null,"id":2820,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3019,"src":"1841:3:9","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":2821,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"encodePacked","nodeType":"MemberAccess","referencedDeclaration":null,"src":"1841:16:9","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":2824,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1841:42:9","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":2819,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3026,"src":"1831:9:9","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":2825,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1831:53:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"1816:68:9"},{"assignments":[2828],"declarations":[{"constant":false,"id":2828,"name":"currentOwner","nodeType":"VariableDeclaration","scope":2893,"src":"1894:20:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2827,"name":"address","nodeType":"ElementaryTypeName","src":"1894:7:9","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"id":2833,"initialValue":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":2831,"name":"node","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2818,"src":"1927:4:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"expression":{"argumentTypes":null,"id":2829,"name":"ens","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2743,"src":"1917:3:9","typeDescriptions":{"typeIdentifier":"t_contract$_ENS_$436","typeString":"contract ENS"}},"id":2830,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"owner","nodeType":"MemberAccess","referencedDeclaration":405,"src":"1917:9:9","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$returns$_t_address_$","typeString":"function (bytes32) view external returns (address)"}},"id":2832,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"1917:15:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"VariableDeclarationStatement","src":"1894:38:9"},{"condition":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_bool","typeString":"bool"},"id":2845,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":2838,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"argumentTypes":null,"id":2834,"name":"resolver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2805,"src":"1990:8:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"hexValue":"307830","id":2836,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2010:3:9","subdenomination":null,"typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0x0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"id":2835,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2002:7:9","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":"address"},"id":2837,"isConstant":false,"isLValue":false,"isPure":true,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2002:12:9","typeDescriptions":{"typeIdentifier":"t_address_payable","typeString":"address payable"}},"src":"1990:24:9","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"nodeType":"BinaryOperation","operator":"&&","rightExpression":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":2844,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"argumentTypes":null,"id":2839,"name":"resolver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2805,"src":"2018:8:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":2842,"name":"node","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2818,"src":"2043:4:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"expression":{"argumentTypes":null,"id":2840,"name":"ens","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2743,"src":"2030:3:9","typeDescriptions":{"typeIdentifier":"t_contract$_ENS_$436","typeString":"contract ENS"}},"id":2841,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"resolver","nodeType":"MemberAccess","referencedDeclaration":412,"src":"2030:12:9","typeDescriptions":{"typeIdentifier":"t_function_external_view$_t_bytes32_$returns$_t_address_$","typeString":"function (bytes32) view external returns (address)"}},"id":2843,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2030:18:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2018:30:9","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"src":"1990:58:9","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":null,"id":2877,"nodeType":"IfStatement","src":"1986:372:9","trueBody":{"id":2876,"nodeType":"Block","src":"2050:308:9","statements":[{"condition":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":2850,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"argumentTypes":null,"id":2846,"name":"currentOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2828,"src":"2133:12:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":2848,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3065,"src":"2157:4:9","typeDescriptions":{"typeIdentifier":"t_contract$_ReverseRegistrar_$2954","typeString":"contract ReverseRegistrar"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ReverseRegistrar_$2954","typeString":"contract ReverseRegistrar"}],"id":2847,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2149:7:9","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":"address"},"id":2849,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2149:13:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2133:29:9","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":null,"id":2868,"nodeType":"IfStatement","src":"2129:174:9","trueBody":{"id":2867,"nodeType":"Block","src":"2164:139:9","statements":[{"expression":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":2854,"name":"ADDR_REVERSE_NODE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2741,"src":"2202:17:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"argumentTypes":null,"id":2855,"name":"label","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2811,"src":"2221:5:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":2857,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3065,"src":"2236:4:9","typeDescriptions":{"typeIdentifier":"t_contract$_ReverseRegistrar_$2954","typeString":"contract ReverseRegistrar"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ReverseRegistrar_$2954","typeString":"contract ReverseRegistrar"}],"id":2856,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2228:7:9","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":"address"},"id":2858,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2228:13:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"argumentTypes":null,"id":2851,"name":"ens","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2743,"src":"2182:3:9","typeDescriptions":{"typeIdentifier":"t_contract$_ENS_$436","typeString":"contract ENS"}},"id":2853,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"setSubnodeOwner","nodeType":"MemberAccess","referencedDeclaration":370,"src":"2182:19:9","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes32_$_t_bytes32_$_t_address_$returns$_t_bytes32_$","typeString":"function (bytes32,bytes32,address) external returns (bytes32)"}},"id":2859,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2182:60:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":2860,"nodeType":"ExpressionStatement","src":"2182:60:9"},{"expression":{"argumentTypes":null,"id":2865,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftHandSide":{"argumentTypes":null,"id":2861,"name":"currentOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2828,"src":"2260:12:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"Assignment","operator":"=","rightHandSide":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":2863,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3065,"src":"2283:4:9","typeDescriptions":{"typeIdentifier":"t_contract$_ReverseRegistrar_$2954","typeString":"contract ReverseRegistrar"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ReverseRegistrar_$2954","typeString":"contract ReverseRegistrar"}],"id":2862,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2275:7:9","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":"address"},"id":2864,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2275:13:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2260:28:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":2866,"nodeType":"ExpressionStatement","src":"2260:28:9"}]}},{"expression":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":2872,"name":"node","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2818,"src":"2332:4:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"argumentTypes":null,"id":2873,"name":"resolver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2805,"src":"2338:8:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"argumentTypes":null,"id":2869,"name":"ens","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2743,"src":"2316:3:9","typeDescriptions":{"typeIdentifier":"t_contract$_ENS_$436","typeString":"contract ENS"}},"id":2871,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"setResolver","nodeType":"MemberAccess","referencedDeclaration":377,"src":"2316:15:9","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes32_$_t_address_$returns$__$","typeString":"function (bytes32,address) external"}},"id":2874,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2316:31:9","typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2875,"nodeType":"ExpressionStatement","src":"2316:31:9"}]}},{"condition":{"argumentTypes":null,"commonType":{"typeIdentifier":"t_address","typeString":"address"},"id":2880,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"leftExpression":{"argumentTypes":null,"id":2878,"name":"currentOwner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2828,"src":"2412:12:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"nodeType":"BinaryOperation","operator":"!=","rightExpression":{"argumentTypes":null,"id":2879,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2803,"src":"2428:5:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"src":"2412:21:9","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"falseBody":null,"id":2890,"nodeType":"IfStatement","src":"2408:104:9","trueBody":{"id":2889,"nodeType":"Block","src":"2435:77:9","statements":[{"expression":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":2884,"name":"ADDR_REVERSE_NODE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2741,"src":"2469:17:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"argumentTypes":null,"id":2885,"name":"label","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2811,"src":"2488:5:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"argumentTypes":null,"id":2886,"name":"owner","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2803,"src":"2495:5:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_address","typeString":"address"}],"expression":{"argumentTypes":null,"id":2881,"name":"ens","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2743,"src":"2449:3:9","typeDescriptions":{"typeIdentifier":"t_contract$_ENS_$436","typeString":"contract ENS"}},"id":2883,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"setSubnodeOwner","nodeType":"MemberAccess","referencedDeclaration":370,"src":"2449:19:9","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes32_$_t_bytes32_$_t_address_$returns$_t_bytes32_$","typeString":"function (bytes32,bytes32,address) external returns (bytes32)"}},"id":2887,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2449:52:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":2888,"nodeType":"ExpressionStatement","src":"2449:52:9"}]}},{"expression":{"argumentTypes":null,"id":2891,"name":"node","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2818,"src":"2529:4:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":2809,"id":2892,"nodeType":"Return","src":"2522:11:9"}]},"documentation":"@dev Transfers ownership of the reverse ENS record associated with the\\n calling account.\\n@param owner The address to set as the owner of the reverse record in ENS.\\n@param resolver The address of the resolver to set; 0 to leave unchanged.\\n@return The ENS node hash of the reverse record.","id":2894,"implemented":true,"kind":"function","modifiers":[],"name":"claimWithResolver","nodeType":"FunctionDefinition","parameters":{"id":2806,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2803,"name":"owner","nodeType":"VariableDeclaration","scope":2894,"src":"1696:13:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2802,"name":"address","nodeType":"ElementaryTypeName","src":"1696:7:9","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"},{"constant":false,"id":2805,"name":"resolver","nodeType":"VariableDeclaration","scope":2894,"src":"1711:16:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2804,"name":"address","nodeType":"ElementaryTypeName","src":"1711:7:9","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"1695:33:9"},"returnParameters":{"id":2809,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2808,"name":"","nodeType":"VariableDeclaration","scope":2894,"src":"1745:7:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2807,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1745:7:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"1744:9:9"},"scope":2954,"src":"1669:871:9","stateMutability":"nonpayable","superFunction":null,"visibility":"public"},{"body":{"id":2921,"nodeType":"Block","src":"2921:156:9","statements":[{"assignments":[2902],"declarations":[{"constant":false,"id":2902,"name":"node","nodeType":"VariableDeclaration","scope":2921,"src":"2931:12:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2901,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2931:7:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"id":2911,"initialValue":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":2905,"name":"this","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3065,"src":"2972:4:9","typeDescriptions":{"typeIdentifier":"t_contract$_ReverseRegistrar_$2954","typeString":"contract ReverseRegistrar"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_ReverseRegistrar_$2954","typeString":"contract ReverseRegistrar"}],"id":2904,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2964:7:9","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":"address"},"id":2906,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2964:13:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":2908,"name":"defaultResolver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2745,"src":"2987:15:9","typeDescriptions":{"typeIdentifier":"t_contract$_NameResolver_$2738","typeString":"contract NameResolver"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_contract$_NameResolver_$2738","typeString":"contract NameResolver"}],"id":2907,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"nodeType":"ElementaryTypeNameExpression","src":"2979:7:9","typeDescriptions":{"typeIdentifier":"t_type$_t_address_$","typeString":"type(address)"},"typeName":"address"},"id":2909,"isConstant":false,"isLValue":false,"isPure":false,"kind":"typeConversion","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2979:24:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"},{"typeIdentifier":"t_address","typeString":"address"}],"id":2903,"name":"claimWithResolver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2894,"src":"2946:17:9","typeDescriptions":{"typeIdentifier":"t_function_internal_nonpayable$_t_address_$_t_address_$returns$_t_bytes32_$","typeString":"function (address,address) returns (bytes32)"}},"id":2910,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"2946:58:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"nodeType":"VariableDeclarationStatement","src":"2931:73:9"},{"expression":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":2915,"name":"node","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2902,"src":"3038:4:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"argumentTypes":null,"id":2916,"name":"name","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2896,"src":"3044:4:9","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_string_memory_ptr","typeString":"string memory"}],"expression":{"argumentTypes":null,"id":2912,"name":"defaultResolver","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2745,"src":"3014:15:9","typeDescriptions":{"typeIdentifier":"t_contract$_NameResolver_$2738","typeString":"contract NameResolver"}},"id":2914,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberName":"setName","nodeType":"MemberAccess","referencedDeclaration":2737,"src":"3014:23:9","typeDescriptions":{"typeIdentifier":"t_function_external_nonpayable$_t_bytes32_$_t_string_memory_ptr_$returns$__$","typeString":"function (bytes32,string memory) external"}},"id":2917,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3014:35:9","typeDescriptions":{"typeIdentifier":"t_tuple$__$","typeString":"tuple()"}},"id":2918,"nodeType":"ExpressionStatement","src":"3014:35:9"},{"expression":{"argumentTypes":null,"id":2919,"name":"node","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2902,"src":"3066:4:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":2900,"id":2920,"nodeType":"Return","src":"3059:11:9"}]},"documentation":"@dev Sets the `name()` record for the reverse ENS record associated with\\nthe calling account. First updates the resolver to the default reverse\\nresolver if necessary.\\n@param name The name to set for this address.\\n@return The ENS node hash of the reverse record.","id":2922,"implemented":true,"kind":"function","modifiers":[],"name":"setName","nodeType":"FunctionDefinition","parameters":{"id":2897,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2896,"name":"name","nodeType":"VariableDeclaration","scope":2922,"src":"2876:18:9","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":2895,"name":"string","nodeType":"ElementaryTypeName","src":"2876:6:9","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":null,"visibility":"internal"}],"src":"2875:20:9"},"returnParameters":{"id":2900,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2899,"name":"","nodeType":"VariableDeclaration","scope":2922,"src":"2912:7:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2898,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2912:7:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"2911:9:9"},"scope":2954,"src":"2859:218:9","stateMutability":"nonpayable","superFunction":null,"visibility":"public"},{"body":{"id":2939,"nodeType":"Block","src":"3303:92:9","statements":[{"expression":{"argumentTypes":null,"arguments":[{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":2932,"name":"ADDR_REVERSE_NODE","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2741,"src":"3347:17:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},{"argumentTypes":null,"arguments":[{"argumentTypes":null,"id":2934,"name":"addr","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2924,"src":"3381:4:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_address","typeString":"address"}],"id":2933,"name":"sha3HexAddress","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2953,"src":"3366:14:9","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_address_$returns$_t_bytes32_$","typeString":"function (address) pure returns (bytes32)"}},"id":2935,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3366:20:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes32","typeString":"bytes32"},{"typeIdentifier":"t_bytes32","typeString":"bytes32"}],"expression":{"argumentTypes":null,"id":2930,"name":"abi","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3019,"src":"3330:3:9","typeDescriptions":{"typeIdentifier":"t_magic_abi","typeString":"abi"}},"id":2931,"isConstant":false,"isLValue":false,"isPure":true,"lValueRequested":false,"memberName":"encodePacked","nodeType":"MemberAccess","referencedDeclaration":null,"src":"3330:16:9","typeDescriptions":{"typeIdentifier":"t_function_abiencodepacked_pure$__$returns$_t_bytes_memory_ptr_$","typeString":"function () pure returns (bytes memory)"}},"id":2936,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3330:57:9","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}}],"expression":{"argumentTypes":[{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes memory"}],"id":2929,"name":"keccak256","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":3026,"src":"3320:9:9","typeDescriptions":{"typeIdentifier":"t_function_keccak256_pure$_t_bytes_memory_ptr_$returns$_t_bytes32_$","typeString":"function (bytes memory) pure returns (bytes32)"}},"id":2937,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"names":[],"nodeType":"FunctionCall","src":"3320:68:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"functionReturnParameters":2928,"id":2938,"nodeType":"Return","src":"3313:75:9"}]},"documentation":"@dev Returns the node hash for a given account\'s reverse records.\\n@param addr The address to hash\\n@return The ENS node hash.","id":2940,"implemented":true,"kind":"function","modifiers":[],"name":"node","nodeType":"FunctionDefinition","parameters":{"id":2925,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2924,"name":"addr","nodeType":"VariableDeclaration","scope":2940,"src":"3259:12:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2923,"name":"address","nodeType":"ElementaryTypeName","src":"3259:7:9","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"3258:14:9"},"returnParameters":{"id":2928,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2927,"name":"","nodeType":"VariableDeclaration","scope":2940,"src":"3294:7:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2926,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3294:7:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"3293:9:9"},"scope":2954,"src":"3245:150:9","stateMutability":"pure","superFunction":null,"visibility":"public"},{"body":{"id":2952,"nodeType":"Block","src":"3769:553:9","statements":[{"expression":{"argumentTypes":null,"id":2947,"name":"addr","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2942,"src":"3779:4:9","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":2948,"nodeType":"ExpressionStatement","src":"3779:4:9"},{"expression":{"argumentTypes":null,"id":2949,"name":"ret","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":2945,"src":"3793:3:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":2950,"nodeType":"ExpressionStatement","src":"3793:3:9"},{"externalReferences":[{"addr":{"declaration":2942,"isOffset":false,"isSlot":false,"src":"4104:4:9","valueSize":1}},{"addr":{"declaration":2942,"isOffset":false,"isSlot":false,"src":"4067:4:9","valueSize":1}},{"addr":{"declaration":2942,"isOffset":false,"isSlot":false,"src":"4116:4:9","valueSize":1}},{"addr":{"declaration":2942,"isOffset":false,"isSlot":false,"src":"4244:4:9","valueSize":1}},{"addr":{"declaration":2942,"isOffset":false,"isSlot":false,"src":"4232:4:9","valueSize":1}},{"ret":{"declaration":2945,"isOffset":false,"isSlot":false,"src":"4283:3:9","valueSize":1}},{"addr":{"declaration":2942,"isOffset":false,"isSlot":false,"src":"4195:4:9","valueSize":1}}],"id":2951,"nodeType":"InlineAssembly","operations":"{\\n let lookup := 0x3031323334353637383961626364656600000000000000000000000000000000\\n for {\\n let i := 40\\n }\\n gt(i, 0)\\n {\\n }\\n {\\n i := sub(i, 1)\\n mstore8(i, byte(and(addr, 0xf), lookup))\\n addr := div(addr, 0x10)\\n i := sub(i, 1)\\n mstore8(i, byte(and(addr, 0xf), lookup))\\n addr := div(addr, 0x10)\\n }\\n ret := keccak256(0, 40)\\n}","src":"3848:474:9"}]},"documentation":"@dev An optimised function to compute the sha3 of the lower-case\\n hexadecimal representation of an Ethereum address.\\n@param addr The address to hash\\n@return The SHA3 hash of the lower-case hexadecimal encoding of the\\n input address.","id":2953,"implemented":true,"kind":"function","modifiers":[],"name":"sha3HexAddress","nodeType":"FunctionDefinition","parameters":{"id":2943,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2942,"name":"addr","nodeType":"VariableDeclaration","scope":2953,"src":"3720:12:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":2941,"name":"address","nodeType":"ElementaryTypeName","src":"3720:7:9","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"3719:14:9"},"returnParameters":{"id":2946,"nodeType":"ParameterList","parameters":[{"constant":false,"id":2945,"name":"ret","nodeType":"VariableDeclaration","scope":2953,"src":"3756:11:9","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":2944,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3756:7:9","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"3755:13:9"},"scope":2954,"src":"3696:626:9","stateMutability":"pure","superFunction":null,"visibility":"private"}],"scope":2955,"src":"136:4188:9"}],"src":"0:4325:9"},"compiler":{"name":"solc","version":"0.5.0+commit.1d4f565a.Emscripten.clang"},"networks":{},"schemaVersion":"3.0.0","updatedAt":"2020-02-10T20:00:51.357Z","devdoc":{"methods":{"claim(address)":{"details":"Transfers ownership of the reverse ENS record associated with the calling account.","params":{"owner":"The address to set as the owner of the reverse record in ENS."},"return":"The ENS node hash of the reverse record."},"claimWithResolver(address,address)":{"details":"Transfers ownership of the reverse ENS record associated with the calling account.","params":{"owner":"The address to set as the owner of the reverse record in ENS.","resolver":"The address of the resolver to set; 0 to leave unchanged."},"return":"The ENS node hash of the reverse record."},"constructor":{"details":"Constructor","params":{"ensAddr":"The address of the ENS registry.","resolverAddr":"The address of the default reverse resolver."}},"node(address)":{"details":"Returns the node hash for a given account\'s reverse records.","params":{"addr":"The address to hash"},"return":"The ENS node hash."},"setName(string)":{"details":"Sets the `name()` record for the reverse ENS record associated with the calling account. First updates the resolver to the default reverse resolver if necessary.","params":{"name":"The name to set for this address."},"return":"The ENS node hash of the reverse record."}}},"userdoc":{"methods":{}}}')},Y5vh:function(e){e.exports=JSON.parse('{"contractName":"Resolver","abi":[{"anonymous":false,"inputs":[{"indexed":true,"name":"node","type":"bytes32"},{"indexed":false,"name":"a","type":"address"}],"name":"AddrChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"node","type":"bytes32"},{"indexed":false,"name":"coinType","type":"uint256"},{"indexed":false,"name":"newAddress","type":"bytes"}],"name":"AddressChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"node","type":"bytes32"},{"indexed":false,"name":"name","type":"string"}],"name":"NameChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"node","type":"bytes32"},{"indexed":true,"name":"contentType","type":"uint256"}],"name":"ABIChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"node","type":"bytes32"},{"indexed":false,"name":"x","type":"bytes32"},{"indexed":false,"name":"y","type":"bytes32"}],"name":"PubkeyChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"node","type":"bytes32"},{"indexed":true,"name":"indexedKey","type":"string"},{"indexed":false,"name":"key","type":"string"}],"name":"TextChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"node","type":"bytes32"},{"indexed":false,"name":"hash","type":"bytes"}],"name":"ContenthashChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"name":"node","type":"bytes32"},{"indexed":false,"name":"hash","type":"bytes32"}],"name":"ContentChanged","type":"event"},{"constant":true,"inputs":[{"name":"node","type":"bytes32"},{"name":"contentTypes","type":"uint256"}],"name":"ABI","outputs":[{"name":"","type":"uint256"},{"name":"","type":"bytes"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"node","type":"bytes32"},{"name":"coinType","type":"uint256"}],"name":"addr","outputs":[{"name":"","type":"bytes"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"node","type":"bytes32"}],"name":"addr","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"node","type":"bytes32"}],"name":"contenthash","outputs":[{"name":"","type":"bytes"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"node","type":"bytes32"}],"name":"dnsrr","outputs":[{"name":"","type":"bytes"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"node","type":"bytes32"}],"name":"name","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"node","type":"bytes32"}],"name":"pubkey","outputs":[{"name":"x","type":"bytes32"},{"name":"y","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"node","type":"bytes32"},{"name":"key","type":"string"}],"name":"text","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"node","type":"bytes32"},{"name":"interfaceID","type":"bytes4"}],"name":"interfaceImplementer","outputs":[{"name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"node","type":"bytes32"},{"name":"contentType","type":"uint256"},{"name":"data","type":"bytes"}],"name":"setABI","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"node","type":"bytes32"},{"name":"addr","type":"address"}],"name":"setAddr","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"node","type":"bytes32"},{"name":"coinType","type":"uint256"},{"name":"a","type":"bytes"}],"name":"setAddr","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"node","type":"bytes32"},{"name":"hash","type":"bytes"}],"name":"setContenthash","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"node","type":"bytes32"},{"name":"data","type":"bytes"}],"name":"setDnsrr","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"node","type":"bytes32"},{"name":"_name","type":"string"}],"name":"setName","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"node","type":"bytes32"},{"name":"x","type":"bytes32"},{"name":"y","type":"bytes32"}],"name":"setPubkey","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"node","type":"bytes32"},{"name":"key","type":"string"},{"name":"value","type":"string"}],"name":"setText","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"node","type":"bytes32"},{"name":"interfaceID","type":"bytes4"},{"name":"implementer","type":"address"}],"name":"setInterface","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"interfaceID","type":"bytes4"}],"name":"supportsInterface","outputs":[{"name":"","type":"bool"}],"payable":false,"stateMutability":"pure","type":"function"},{"constant":false,"inputs":[{"name":"data","type":"bytes[]"}],"name":"multicall","outputs":[{"name":"results","type":"bytes[]"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"name":"node","type":"bytes32"}],"name":"content","outputs":[{"name":"","type":"bytes32"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"node","type":"bytes32"}],"name":"multihash","outputs":[{"name":"","type":"bytes"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"node","type":"bytes32"},{"name":"hash","type":"bytes32"}],"name":"setContent","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"name":"node","type":"bytes32"},{"name":"hash","type":"bytes"}],"name":"setMultihash","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}],"metadata":"{\\"compiler\\":{\\"version\\":\\"0.5.8+commit.23d335f2\\"},\\"language\\":\\"Solidity\\",\\"output\\":{\\"abi\\":[{\\"constant\\":true,\\"inputs\\":[{\\"name\\":\\"interfaceID\\",\\"type\\":\\"bytes4\\"}],\\"name\\":\\"supportsInterface\\",\\"outputs\\":[{\\"name\\":\\"\\",\\"type\\":\\"bool\\"}],\\"payable\\":false,\\"stateMutability\\":\\"pure\\",\\"type\\":\\"function\\"},{\\"constant\\":false,\\"inputs\\":[{\\"name\\":\\"node\\",\\"type\\":\\"bytes32\\"},{\\"name\\":\\"key\\",\\"type\\":\\"string\\"},{\\"name\\":\\"value\\",\\"type\\":\\"string\\"}],\\"name\\":\\"setText\\",\\"outputs\\":[],\\"payable\\":false,\\"stateMutability\\":\\"nonpayable\\",\\"type\\":\\"function\\"},{\\"constant\\":true,\\"inputs\\":[{\\"name\\":\\"node\\",\\"type\\":\\"bytes32\\"},{\\"name\\":\\"interfaceID\\",\\"type\\":\\"bytes4\\"}],\\"name\\":\\"interfaceImplementer\\",\\"outputs\\":[{\\"name\\":\\"\\",\\"type\\":\\"address\\"}],\\"payable\\":false,\\"stateMutability\\":\\"view\\",\\"type\\":\\"function\\"},{\\"constant\\":true,\\"inputs\\":[{\\"name\\":\\"node\\",\\"type\\":\\"bytes32\\"}],\\"name\\":\\"dnsrr\\",\\"outputs\\":[{\\"name\\":\\"\\",\\"type\\":\\"bytes\\"}],\\"payable\\":false,\\"stateMutability\\":\\"view\\",\\"type\\":\\"function\\"},{\\"constant\\":true,\\"inputs\\":[{\\"name\\":\\"node\\",\\"type\\":\\"bytes32\\"},{\\"name\\":\\"contentTypes\\",\\"type\\":\\"uint256\\"}],\\"name\\":\\"ABI\\",\\"outputs\\":[{\\"name\\":\\"\\",\\"type\\":\\"uint256\\"},{\\"name\\":\\"\\",\\"type\\":\\"bytes\\"}],\\"payable\\":false,\\"stateMutability\\":\\"view\\",\\"type\\":\\"function\\"},{\\"constant\\":false,\\"inputs\\":[{\\"name\\":\\"node\\",\\"type\\":\\"bytes32\\"},{\\"name\\":\\"x\\",\\"type\\":\\"bytes32\\"},{\\"name\\":\\"y\\",\\"type\\":\\"bytes32\\"}],\\"name\\":\\"setPubkey\\",\\"outputs\\":[],\\"payable\\":false,\\"stateMutability\\":\\"nonpayable\\",\\"type\\":\\"function\\"},{\\"constant\\":true,\\"inputs\\":[{\\"name\\":\\"node\\",\\"type\\":\\"bytes32\\"}],\\"name\\":\\"content\\",\\"outputs\\":[{\\"name\\":\\"\\",\\"type\\":\\"bytes32\\"}],\\"payable\\":false,\\"stateMutability\\":\\"view\\",\\"type\\":\\"function\\"},{\\"constant\\":false,\\"inputs\\":[{\\"name\\":\\"node\\",\\"type\\":\\"bytes32\\"},{\\"name\\":\\"hash\\",\\"type\\":\\"bytes\\"}],\\"name\\":\\"setContenthash\\",\\"outputs\\":[],\\"payable\\":false,\\"stateMutability\\":\\"nonpayable\\",\\"type\\":\\"function\\"},{\\"constant\\":true,\\"inputs\\":[{\\"name\\":\\"node\\",\\"type\\":\\"bytes32\\"}],\\"name\\":\\"addr\\",\\"outputs\\":[{\\"name\\":\\"\\",\\"type\\":\\"address\\"}],\\"payable\\":false,\\"stateMutability\\":\\"view\\",\\"type\\":\\"function\\"},{\\"constant\\":true,\\"inputs\\":[{\\"name\\":\\"node\\",\\"type\\":\\"bytes32\\"},{\\"name\\":\\"key\\",\\"type\\":\\"string\\"}],\\"name\\":\\"text\\",\\"outputs\\":[{\\"name\\":\\"\\",\\"type\\":\\"string\\"}],\\"payable\\":false,\\"stateMutability\\":\\"view\\",\\"type\\":\\"function\\"},{\\"constant\\":false,\\"inputs\\":[{\\"name\\":\\"node\\",\\"type\\":\\"bytes32\\"},{\\"name\\":\\"contentType\\",\\"type\\":\\"uint256\\"},{\\"name\\":\\"data\\",\\"type\\":\\"bytes\\"}],\\"name\\":\\"setABI\\",\\"outputs\\":[],\\"payable\\":false,\\"stateMutability\\":\\"nonpayable\\",\\"type\\":\\"function\\"},{\\"constant\\":true,\\"inputs\\":[{\\"name\\":\\"node\\",\\"type\\":\\"bytes32\\"}],\\"name\\":\\"name\\",\\"outputs\\":[{\\"name\\":\\"\\",\\"type\\":\\"string\\"}],\\"payable\\":false,\\"stateMutability\\":\\"view\\",\\"type\\":\\"function\\"},{\\"constant\\":false,\\"inputs\\":[{\\"name\\":\\"node\\",\\"type\\":\\"bytes32\\"},{\\"name\\":\\"data\\",\\"type\\":\\"bytes\\"}],\\"name\\":\\"setDnsrr\\",\\"outputs\\":[],\\"payable\\":false,\\"stateMutability\\":\\"nonpayable\\",\\"type\\":\\"function\\"},{\\"constant\\":false,\\"inputs\\":[{\\"name\\":\\"node\\",\\"type\\":\\"bytes32\\"},{\\"name\\":\\"_name\\",\\"type\\":\\"string\\"}],\\"name\\":\\"setName\\",\\"outputs\\":[],\\"payable\\":false,\\"stateMutability\\":\\"nonpayable\\",\\"type\\":\\"function\\"},{\\"constant\\":false,\\"inputs\\":[{\\"name\\":\\"node\\",\\"type\\":\\"bytes32\\"},{\\"name\\":\\"coinType\\",\\"type\\":\\"uint256\\"},{\\"name\\":\\"a\\",\\"type\\":\\"bytes\\"}],\\"name\\":\\"setAddr\\",\\"outputs\\":[],\\"payable\\":false,\\"stateMutability\\":\\"nonpayable\\",\\"type\\":\\"function\\"},{\\"constant\\":false,\\"inputs\\":[{\\"name\\":\\"node\\",\\"type\\":\\"bytes32\\"},{\\"name\\":\\"hash\\",\\"type\\":\\"bytes\\"}],\\"name\\":\\"setMultihash\\",\\"outputs\\":[],\\"payable\\":false,\\"stateMutability\\":\\"nonpayable\\",\\"type\\":\\"function\\"},{\\"constant\\":false,\\"inputs\\":[{\\"name\\":\\"data\\",\\"type\\":\\"bytes[]\\"}],\\"name\\":\\"multicall\\",\\"outputs\\":[{\\"name\\":\\"results\\",\\"type\\":\\"bytes[]\\"}],\\"payable\\":false,\\"stateMutability\\":\\"nonpayable\\",\\"type\\":\\"function\\"},{\\"constant\\":true,\\"inputs\\":[{\\"name\\":\\"node\\",\\"type\\":\\"bytes32\\"}],\\"name\\":\\"contenthash\\",\\"outputs\\":[{\\"name\\":\\"\\",\\"type\\":\\"bytes\\"}],\\"payable\\":false,\\"stateMutability\\":\\"view\\",\\"type\\":\\"function\\"},{\\"constant\\":false,\\"inputs\\":[{\\"name\\":\\"node\\",\\"type\\":\\"bytes32\\"},{\\"name\\":\\"hash\\",\\"type\\":\\"bytes32\\"}],\\"name\\":\\"setContent\\",\\"outputs\\":[],\\"payable\\":false,\\"stateMutability\\":\\"nonpayable\\",\\"type\\":\\"function\\"},{\\"constant\\":true,\\"inputs\\":[{\\"name\\":\\"node\\",\\"type\\":\\"bytes32\\"}],\\"name\\":\\"pubkey\\",\\"outputs\\":[{\\"name\\":\\"x\\",\\"type\\":\\"bytes32\\"},{\\"name\\":\\"y\\",\\"type\\":\\"bytes32\\"}],\\"payable\\":false,\\"stateMutability\\":\\"view\\",\\"type\\":\\"function\\"},{\\"constant\\":false,\\"inputs\\":[{\\"name\\":\\"node\\",\\"type\\":\\"bytes32\\"},{\\"name\\":\\"addr\\",\\"type\\":\\"address\\"}],\\"name\\":\\"setAddr\\",\\"outputs\\":[],\\"payable\\":false,\\"stateMutability\\":\\"nonpayable\\",\\"type\\":\\"function\\"},{\\"constant\\":false,\\"inputs\\":[{\\"name\\":\\"node\\",\\"type\\":\\"bytes32\\"},{\\"name\\":\\"interfaceID\\",\\"type\\":\\"bytes4\\"},{\\"name\\":\\"implementer\\",\\"type\\":\\"address\\"}],\\"name\\":\\"setInterface\\",\\"outputs\\":[],\\"payable\\":false,\\"stateMutability\\":\\"nonpayable\\",\\"type\\":\\"function\\"},{\\"constant\\":true,\\"inputs\\":[{\\"name\\":\\"node\\",\\"type\\":\\"bytes32\\"}],\\"name\\":\\"multihash\\",\\"outputs\\":[{\\"name\\":\\"\\",\\"type\\":\\"bytes\\"}],\\"payable\\":false,\\"stateMutability\\":\\"view\\",\\"type\\":\\"function\\"},{\\"constant\\":true,\\"inputs\\":[{\\"name\\":\\"node\\",\\"type\\":\\"bytes32\\"},{\\"name\\":\\"coinType\\",\\"type\\":\\"uint256\\"}],\\"name\\":\\"addr\\",\\"outputs\\":[{\\"name\\":\\"\\",\\"type\\":\\"bytes\\"}],\\"payable\\":false,\\"stateMutability\\":\\"view\\",\\"type\\":\\"function\\"},{\\"anonymous\\":false,\\"inputs\\":[{\\"indexed\\":true,\\"name\\":\\"node\\",\\"type\\":\\"bytes32\\"},{\\"indexed\\":false,\\"name\\":\\"a\\",\\"type\\":\\"address\\"}],\\"name\\":\\"AddrChanged\\",\\"type\\":\\"event\\"},{\\"anonymous\\":false,\\"inputs\\":[{\\"indexed\\":true,\\"name\\":\\"node\\",\\"type\\":\\"bytes32\\"},{\\"indexed\\":false,\\"name\\":\\"coinType\\",\\"type\\":\\"uint256\\"},{\\"indexed\\":false,\\"name\\":\\"newAddress\\",\\"type\\":\\"bytes\\"}],\\"name\\":\\"AddressChanged\\",\\"type\\":\\"event\\"},{\\"anonymous\\":false,\\"inputs\\":[{\\"indexed\\":true,\\"name\\":\\"node\\",\\"type\\":\\"bytes32\\"},{\\"indexed\\":false,\\"name\\":\\"name\\",\\"type\\":\\"string\\"}],\\"name\\":\\"NameChanged\\",\\"type\\":\\"event\\"},{\\"anonymous\\":false,\\"inputs\\":[{\\"indexed\\":true,\\"name\\":\\"node\\",\\"type\\":\\"bytes32\\"},{\\"indexed\\":true,\\"name\\":\\"contentType\\",\\"type\\":\\"uint256\\"}],\\"name\\":\\"ABIChanged\\",\\"type\\":\\"event\\"},{\\"anonymous\\":false,\\"inputs\\":[{\\"indexed\\":true,\\"name\\":\\"node\\",\\"type\\":\\"bytes32\\"},{\\"indexed\\":false,\\"name\\":\\"x\\",\\"type\\":\\"bytes32\\"},{\\"indexed\\":false,\\"name\\":\\"y\\",\\"type\\":\\"bytes32\\"}],\\"name\\":\\"PubkeyChanged\\",\\"type\\":\\"event\\"},{\\"anonymous\\":false,\\"inputs\\":[{\\"indexed\\":true,\\"name\\":\\"node\\",\\"type\\":\\"bytes32\\"},{\\"indexed\\":true,\\"name\\":\\"indexedKey\\",\\"type\\":\\"string\\"},{\\"indexed\\":false,\\"name\\":\\"key\\",\\"type\\":\\"string\\"}],\\"name\\":\\"TextChanged\\",\\"type\\":\\"event\\"},{\\"anonymous\\":false,\\"inputs\\":[{\\"indexed\\":true,\\"name\\":\\"node\\",\\"type\\":\\"bytes32\\"},{\\"indexed\\":false,\\"name\\":\\"hash\\",\\"type\\":\\"bytes\\"}],\\"name\\":\\"ContenthashChanged\\",\\"type\\":\\"event\\"},{\\"anonymous\\":false,\\"inputs\\":[{\\"indexed\\":true,\\"name\\":\\"node\\",\\"type\\":\\"bytes32\\"},{\\"indexed\\":false,\\"name\\":\\"hash\\",\\"type\\":\\"bytes32\\"}],\\"name\\":\\"ContentChanged\\",\\"type\\":\\"event\\"}],\\"devdoc\\":{\\"methods\\":{}},\\"userdoc\\":{\\"methods\\":{},\\"notice\\":\\"A generic resolver interface which includes all the functions including the ones deprecated\\"}},\\"settings\\":{\\"compilationTarget\\":{\\"/home/user/Dropbox/projects/resolvers/contracts/Resolver.sol\\":\\"Resolver\\"},\\"evmVersion\\":\\"petersburg\\",\\"libraries\\":{},\\"optimizer\\":{\\"enabled\\":false,\\"runs\\":200},\\"remappings\\":[]},\\"sources\\":{\\"/home/user/Dropbox/projects/resolvers/contracts/Resolver.sol\\":{\\"keccak256\\":\\"0xb992c6a78066be42d7e9b54d0e385e87267d7e229099ed6c857c9d9ace43995d\\",\\"urls\\":[\\"bzzr://ddba23b761cfa2d6bb8746fd4241896db84282f2550c06c738fc1de2f8fb33c2\\"]}},\\"version\\":1}","bytecode":"0x","deployedBytecode":"0x","sourceMap":"","deployedSourceMap":"","source":"pragma solidity >=0.4.25;\\npragma experimental ABIEncoderV2;\\n\\n/**\\n * A generic resolver interface which includes all the functions including the ones deprecated\\n */\\ninterface Resolver{\\n event AddrChanged(bytes32 indexed node, address a);\\n event AddressChanged(bytes32 indexed node, uint coinType, bytes newAddress);\\n event NameChanged(bytes32 indexed node, string name);\\n event ABIChanged(bytes32 indexed node, uint256 indexed contentType);\\n event PubkeyChanged(bytes32 indexed node, bytes32 x, bytes32 y);\\n event TextChanged(bytes32 indexed node, string indexed indexedKey, string key);\\n event ContenthashChanged(bytes32 indexed node, bytes hash);\\n /* Deprecated events */\\n event ContentChanged(bytes32 indexed node, bytes32 hash);\\n\\n function ABI(bytes32 node, uint256 contentTypes) external view returns (uint256, bytes memory);\\n function addr(bytes32 node) external view returns (address);\\n function addr(bytes32 node, uint coinType) external view returns(bytes memory);\\n function contenthash(bytes32 node) external view returns (bytes memory);\\n function dnsrr(bytes32 node) external view returns (bytes memory);\\n function name(bytes32 node) external view returns (string memory);\\n function pubkey(bytes32 node) external view returns (bytes32 x, bytes32 y);\\n function text(bytes32 node, string calldata key) external view returns (string memory);\\n function interfaceImplementer(bytes32 node, bytes4 interfaceID) external view returns (address);\\n function setABI(bytes32 node, uint256 contentType, bytes calldata data) external;\\n function setAddr(bytes32 node, address addr) external;\\n function setAddr(bytes32 node, uint coinType, bytes calldata a) external;\\n function setContenthash(bytes32 node, bytes calldata hash) external;\\n function setDnsrr(bytes32 node, bytes calldata data) external;\\n function setName(bytes32 node, string calldata _name) external;\\n function setPubkey(bytes32 node, bytes32 x, bytes32 y) external;\\n function setText(bytes32 node, string calldata key, string calldata value) external;\\n function setInterface(bytes32 node, bytes4 interfaceID, address implementer) external;\\n function supportsInterface(bytes4 interfaceID) external pure returns (bool);\\n function multicall(bytes[] calldata data) external returns(bytes[] memory results);\\n\\n /* Deprecated functions */\\n function content(bytes32 node) external view returns (bytes32);\\n function multihash(bytes32 node) external view returns (bytes memory);\\n function setContent(bytes32 node, bytes32 hash) external;\\n function setMultihash(bytes32 node, bytes calldata hash) external;\\n}\\n","sourcePath":"/home/user/Dropbox/projects/resolvers/contracts/Resolver.sol","ast":{"absolutePath":"/home/user/Dropbox/projects/resolvers/contracts/Resolver.sol","exportedSymbols":{"Resolver":[603]},"id":604,"nodeType":"SourceUnit","nodes":[{"id":355,"literals":["solidity",">=","0.4",".25"],"nodeType":"PragmaDirective","src":"0:25:4"},{"id":356,"literals":["experimental","ABIEncoderV2"],"nodeType":"PragmaDirective","src":"26:33:4"},{"baseContracts":[],"contractDependencies":[],"contractKind":"interface","documentation":"A generic resolver interface which includes all the functions including the ones deprecated","fullyImplemented":false,"id":603,"linearizedBaseContracts":[603],"name":"Resolver","nodeType":"ContractDefinition","nodes":[{"anonymous":false,"documentation":null,"id":362,"name":"AddrChanged","nodeType":"EventDefinition","parameters":{"id":361,"nodeType":"ParameterList","parameters":[{"constant":false,"id":358,"indexed":true,"name":"node","nodeType":"VariableDeclaration","scope":362,"src":"206:20:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":357,"name":"bytes32","nodeType":"ElementaryTypeName","src":"206:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":360,"indexed":false,"name":"a","nodeType":"VariableDeclaration","scope":362,"src":"228:9:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":359,"name":"address","nodeType":"ElementaryTypeName","src":"228:7:4","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"205:33:4"},"src":"188:51:4"},{"anonymous":false,"documentation":null,"id":370,"name":"AddressChanged","nodeType":"EventDefinition","parameters":{"id":369,"nodeType":"ParameterList","parameters":[{"constant":false,"id":364,"indexed":true,"name":"node","nodeType":"VariableDeclaration","scope":370,"src":"265:20:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":363,"name":"bytes32","nodeType":"ElementaryTypeName","src":"265:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":366,"indexed":false,"name":"coinType","nodeType":"VariableDeclaration","scope":370,"src":"287:13:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":365,"name":"uint","nodeType":"ElementaryTypeName","src":"287:4:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":null,"visibility":"internal"},{"constant":false,"id":368,"indexed":false,"name":"newAddress","nodeType":"VariableDeclaration","scope":370,"src":"302:16:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":367,"name":"bytes","nodeType":"ElementaryTypeName","src":"302:5:4","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"value":null,"visibility":"internal"}],"src":"264:55:4"},"src":"244:76:4"},{"anonymous":false,"documentation":null,"id":376,"name":"NameChanged","nodeType":"EventDefinition","parameters":{"id":375,"nodeType":"ParameterList","parameters":[{"constant":false,"id":372,"indexed":true,"name":"node","nodeType":"VariableDeclaration","scope":376,"src":"343:20:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":371,"name":"bytes32","nodeType":"ElementaryTypeName","src":"343:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":374,"indexed":false,"name":"name","nodeType":"VariableDeclaration","scope":376,"src":"365:11:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":373,"name":"string","nodeType":"ElementaryTypeName","src":"365:6:4","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":null,"visibility":"internal"}],"src":"342:35:4"},"src":"325:53:4"},{"anonymous":false,"documentation":null,"id":382,"name":"ABIChanged","nodeType":"EventDefinition","parameters":{"id":381,"nodeType":"ParameterList","parameters":[{"constant":false,"id":378,"indexed":true,"name":"node","nodeType":"VariableDeclaration","scope":382,"src":"400:20:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":377,"name":"bytes32","nodeType":"ElementaryTypeName","src":"400:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":380,"indexed":true,"name":"contentType","nodeType":"VariableDeclaration","scope":382,"src":"422:27:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":379,"name":"uint256","nodeType":"ElementaryTypeName","src":"422:7:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":null,"visibility":"internal"}],"src":"399:51:4"},"src":"383:68:4"},{"anonymous":false,"documentation":null,"id":390,"name":"PubkeyChanged","nodeType":"EventDefinition","parameters":{"id":389,"nodeType":"ParameterList","parameters":[{"constant":false,"id":384,"indexed":true,"name":"node","nodeType":"VariableDeclaration","scope":390,"src":"476:20:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":383,"name":"bytes32","nodeType":"ElementaryTypeName","src":"476:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":386,"indexed":false,"name":"x","nodeType":"VariableDeclaration","scope":390,"src":"498:9:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":385,"name":"bytes32","nodeType":"ElementaryTypeName","src":"498:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":388,"indexed":false,"name":"y","nodeType":"VariableDeclaration","scope":390,"src":"509:9:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":387,"name":"bytes32","nodeType":"ElementaryTypeName","src":"509:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"475:44:4"},"src":"456:64:4"},{"anonymous":false,"documentation":null,"id":398,"name":"TextChanged","nodeType":"EventDefinition","parameters":{"id":397,"nodeType":"ParameterList","parameters":[{"constant":false,"id":392,"indexed":true,"name":"node","nodeType":"VariableDeclaration","scope":398,"src":"543:20:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":391,"name":"bytes32","nodeType":"ElementaryTypeName","src":"543:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":394,"indexed":true,"name":"indexedKey","nodeType":"VariableDeclaration","scope":398,"src":"565:25:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":393,"name":"string","nodeType":"ElementaryTypeName","src":"565:6:4","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":null,"visibility":"internal"},{"constant":false,"id":396,"indexed":false,"name":"key","nodeType":"VariableDeclaration","scope":398,"src":"592:10:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":395,"name":"string","nodeType":"ElementaryTypeName","src":"592:6:4","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":null,"visibility":"internal"}],"src":"542:61:4"},"src":"525:79:4"},{"anonymous":false,"documentation":null,"id":404,"name":"ContenthashChanged","nodeType":"EventDefinition","parameters":{"id":403,"nodeType":"ParameterList","parameters":[{"constant":false,"id":400,"indexed":true,"name":"node","nodeType":"VariableDeclaration","scope":404,"src":"634:20:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":399,"name":"bytes32","nodeType":"ElementaryTypeName","src":"634:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":402,"indexed":false,"name":"hash","nodeType":"VariableDeclaration","scope":404,"src":"656:10:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":401,"name":"bytes","nodeType":"ElementaryTypeName","src":"656:5:4","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"value":null,"visibility":"internal"}],"src":"633:34:4"},"src":"609:59:4"},{"anonymous":false,"documentation":null,"id":410,"name":"ContentChanged","nodeType":"EventDefinition","parameters":{"id":409,"nodeType":"ParameterList","parameters":[{"constant":false,"id":406,"indexed":true,"name":"node","nodeType":"VariableDeclaration","scope":410,"src":"722:20:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":405,"name":"bytes32","nodeType":"ElementaryTypeName","src":"722:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":408,"indexed":false,"name":"hash","nodeType":"VariableDeclaration","scope":410,"src":"744:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":407,"name":"bytes32","nodeType":"ElementaryTypeName","src":"744:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"721:36:4"},"src":"701:57:4"},{"body":null,"documentation":null,"id":421,"implemented":false,"kind":"function","modifiers":[],"name":"ABI","nodeType":"FunctionDefinition","parameters":{"id":415,"nodeType":"ParameterList","parameters":[{"constant":false,"id":412,"name":"node","nodeType":"VariableDeclaration","scope":421,"src":"777:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":411,"name":"bytes32","nodeType":"ElementaryTypeName","src":"777:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":414,"name":"contentTypes","nodeType":"VariableDeclaration","scope":421,"src":"791:20:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":413,"name":"uint256","nodeType":"ElementaryTypeName","src":"791:7:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":null,"visibility":"internal"}],"src":"776:36:4"},"returnParameters":{"id":420,"nodeType":"ParameterList","parameters":[{"constant":false,"id":417,"name":"","nodeType":"VariableDeclaration","scope":421,"src":"836:7:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":416,"name":"uint256","nodeType":"ElementaryTypeName","src":"836:7:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":null,"visibility":"internal"},{"constant":false,"id":419,"name":"","nodeType":"VariableDeclaration","scope":421,"src":"845:12:4","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":418,"name":"bytes","nodeType":"ElementaryTypeName","src":"845:5:4","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"value":null,"visibility":"internal"}],"src":"835:23:4"},"scope":603,"src":"764:95:4","stateMutability":"view","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":428,"implemented":false,"kind":"function","modifiers":[],"name":"addr","nodeType":"FunctionDefinition","parameters":{"id":424,"nodeType":"ParameterList","parameters":[{"constant":false,"id":423,"name":"node","nodeType":"VariableDeclaration","scope":428,"src":"878:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":422,"name":"bytes32","nodeType":"ElementaryTypeName","src":"878:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"877:14:4"},"returnParameters":{"id":427,"nodeType":"ParameterList","parameters":[{"constant":false,"id":426,"name":"","nodeType":"VariableDeclaration","scope":428,"src":"915:7:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":425,"name":"address","nodeType":"ElementaryTypeName","src":"915:7:4","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"914:9:4"},"scope":603,"src":"864:60:4","stateMutability":"view","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":437,"implemented":false,"kind":"function","modifiers":[],"name":"addr","nodeType":"FunctionDefinition","parameters":{"id":433,"nodeType":"ParameterList","parameters":[{"constant":false,"id":430,"name":"node","nodeType":"VariableDeclaration","scope":437,"src":"943:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":429,"name":"bytes32","nodeType":"ElementaryTypeName","src":"943:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":432,"name":"coinType","nodeType":"VariableDeclaration","scope":437,"src":"957:13:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":431,"name":"uint","nodeType":"ElementaryTypeName","src":"957:4:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":null,"visibility":"internal"}],"src":"942:29:4"},"returnParameters":{"id":436,"nodeType":"ParameterList","parameters":[{"constant":false,"id":435,"name":"","nodeType":"VariableDeclaration","scope":437,"src":"994:12:4","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":434,"name":"bytes","nodeType":"ElementaryTypeName","src":"994:5:4","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"value":null,"visibility":"internal"}],"src":"993:14:4"},"scope":603,"src":"929:79:4","stateMutability":"view","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":444,"implemented":false,"kind":"function","modifiers":[],"name":"contenthash","nodeType":"FunctionDefinition","parameters":{"id":440,"nodeType":"ParameterList","parameters":[{"constant":false,"id":439,"name":"node","nodeType":"VariableDeclaration","scope":444,"src":"1034:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":438,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1034:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"1033:14:4"},"returnParameters":{"id":443,"nodeType":"ParameterList","parameters":[{"constant":false,"id":442,"name":"","nodeType":"VariableDeclaration","scope":444,"src":"1071:12:4","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":441,"name":"bytes","nodeType":"ElementaryTypeName","src":"1071:5:4","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"value":null,"visibility":"internal"}],"src":"1070:14:4"},"scope":603,"src":"1013:72:4","stateMutability":"view","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":451,"implemented":false,"kind":"function","modifiers":[],"name":"dnsrr","nodeType":"FunctionDefinition","parameters":{"id":447,"nodeType":"ParameterList","parameters":[{"constant":false,"id":446,"name":"node","nodeType":"VariableDeclaration","scope":451,"src":"1105:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":445,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1105:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"1104:14:4"},"returnParameters":{"id":450,"nodeType":"ParameterList","parameters":[{"constant":false,"id":449,"name":"","nodeType":"VariableDeclaration","scope":451,"src":"1142:12:4","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":448,"name":"bytes","nodeType":"ElementaryTypeName","src":"1142:5:4","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"value":null,"visibility":"internal"}],"src":"1141:14:4"},"scope":603,"src":"1090:66:4","stateMutability":"view","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":458,"implemented":false,"kind":"function","modifiers":[],"name":"name","nodeType":"FunctionDefinition","parameters":{"id":454,"nodeType":"ParameterList","parameters":[{"constant":false,"id":453,"name":"node","nodeType":"VariableDeclaration","scope":458,"src":"1175:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":452,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1175:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"1174:14:4"},"returnParameters":{"id":457,"nodeType":"ParameterList","parameters":[{"constant":false,"id":456,"name":"","nodeType":"VariableDeclaration","scope":458,"src":"1212:13:4","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":455,"name":"string","nodeType":"ElementaryTypeName","src":"1212:6:4","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":null,"visibility":"internal"}],"src":"1211:15:4"},"scope":603,"src":"1161:66:4","stateMutability":"view","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":467,"implemented":false,"kind":"function","modifiers":[],"name":"pubkey","nodeType":"FunctionDefinition","parameters":{"id":461,"nodeType":"ParameterList","parameters":[{"constant":false,"id":460,"name":"node","nodeType":"VariableDeclaration","scope":467,"src":"1248:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":459,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1248:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"1247:14:4"},"returnParameters":{"id":466,"nodeType":"ParameterList","parameters":[{"constant":false,"id":463,"name":"x","nodeType":"VariableDeclaration","scope":467,"src":"1285:9:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":462,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1285:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":465,"name":"y","nodeType":"VariableDeclaration","scope":467,"src":"1296:9:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":464,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1296:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"1284:22:4"},"scope":603,"src":"1232:75:4","stateMutability":"view","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":476,"implemented":false,"kind":"function","modifiers":[],"name":"text","nodeType":"FunctionDefinition","parameters":{"id":472,"nodeType":"ParameterList","parameters":[{"constant":false,"id":469,"name":"node","nodeType":"VariableDeclaration","scope":476,"src":"1326:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":468,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1326:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":471,"name":"key","nodeType":"VariableDeclaration","scope":476,"src":"1340:19:4","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string"},"typeName":{"id":470,"name":"string","nodeType":"ElementaryTypeName","src":"1340:6:4","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":null,"visibility":"internal"}],"src":"1325:35:4"},"returnParameters":{"id":475,"nodeType":"ParameterList","parameters":[{"constant":false,"id":474,"name":"","nodeType":"VariableDeclaration","scope":476,"src":"1384:13:4","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":473,"name":"string","nodeType":"ElementaryTypeName","src":"1384:6:4","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":null,"visibility":"internal"}],"src":"1383:15:4"},"scope":603,"src":"1312:87:4","stateMutability":"view","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":485,"implemented":false,"kind":"function","modifiers":[],"name":"interfaceImplementer","nodeType":"FunctionDefinition","parameters":{"id":481,"nodeType":"ParameterList","parameters":[{"constant":false,"id":478,"name":"node","nodeType":"VariableDeclaration","scope":485,"src":"1434:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":477,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1434:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":480,"name":"interfaceID","nodeType":"VariableDeclaration","scope":485,"src":"1448:18:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"typeName":{"id":479,"name":"bytes4","nodeType":"ElementaryTypeName","src":"1448:6:4","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"value":null,"visibility":"internal"}],"src":"1433:34:4"},"returnParameters":{"id":484,"nodeType":"ParameterList","parameters":[{"constant":false,"id":483,"name":"","nodeType":"VariableDeclaration","scope":485,"src":"1491:7:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":482,"name":"address","nodeType":"ElementaryTypeName","src":"1491:7:4","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"1490:9:4"},"scope":603,"src":"1404:96:4","stateMutability":"view","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":494,"implemented":false,"kind":"function","modifiers":[],"name":"setABI","nodeType":"FunctionDefinition","parameters":{"id":492,"nodeType":"ParameterList","parameters":[{"constant":false,"id":487,"name":"node","nodeType":"VariableDeclaration","scope":494,"src":"1521:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":486,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1521:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":489,"name":"contentType","nodeType":"VariableDeclaration","scope":494,"src":"1535:19:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":488,"name":"uint256","nodeType":"ElementaryTypeName","src":"1535:7:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":null,"visibility":"internal"},{"constant":false,"id":491,"name":"data","nodeType":"VariableDeclaration","scope":494,"src":"1556:19:4","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":490,"name":"bytes","nodeType":"ElementaryTypeName","src":"1556:5:4","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"value":null,"visibility":"internal"}],"src":"1520:56:4"},"returnParameters":{"id":493,"nodeType":"ParameterList","parameters":[],"src":"1585:0:4"},"scope":603,"src":"1505:81:4","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":501,"implemented":false,"kind":"function","modifiers":[],"name":"setAddr","nodeType":"FunctionDefinition","parameters":{"id":499,"nodeType":"ParameterList","parameters":[{"constant":false,"id":496,"name":"node","nodeType":"VariableDeclaration","scope":501,"src":"1608:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":495,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1608:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":498,"name":"addr","nodeType":"VariableDeclaration","scope":501,"src":"1622:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":497,"name":"address","nodeType":"ElementaryTypeName","src":"1622:7:4","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"1607:28:4"},"returnParameters":{"id":500,"nodeType":"ParameterList","parameters":[],"src":"1644:0:4"},"scope":603,"src":"1591:54:4","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":510,"implemented":false,"kind":"function","modifiers":[],"name":"setAddr","nodeType":"FunctionDefinition","parameters":{"id":508,"nodeType":"ParameterList","parameters":[{"constant":false,"id":503,"name":"node","nodeType":"VariableDeclaration","scope":510,"src":"1667:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":502,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1667:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":505,"name":"coinType","nodeType":"VariableDeclaration","scope":510,"src":"1681:13:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":504,"name":"uint","nodeType":"ElementaryTypeName","src":"1681:4:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":null,"visibility":"internal"},{"constant":false,"id":507,"name":"a","nodeType":"VariableDeclaration","scope":510,"src":"1696:16:4","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":506,"name":"bytes","nodeType":"ElementaryTypeName","src":"1696:5:4","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"value":null,"visibility":"internal"}],"src":"1666:47:4"},"returnParameters":{"id":509,"nodeType":"ParameterList","parameters":[],"src":"1722:0:4"},"scope":603,"src":"1650:73:4","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":517,"implemented":false,"kind":"function","modifiers":[],"name":"setContenthash","nodeType":"FunctionDefinition","parameters":{"id":515,"nodeType":"ParameterList","parameters":[{"constant":false,"id":512,"name":"node","nodeType":"VariableDeclaration","scope":517,"src":"1752:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":511,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1752:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":514,"name":"hash","nodeType":"VariableDeclaration","scope":517,"src":"1766:19:4","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":513,"name":"bytes","nodeType":"ElementaryTypeName","src":"1766:5:4","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"value":null,"visibility":"internal"}],"src":"1751:35:4"},"returnParameters":{"id":516,"nodeType":"ParameterList","parameters":[],"src":"1795:0:4"},"scope":603,"src":"1728:68:4","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":524,"implemented":false,"kind":"function","modifiers":[],"name":"setDnsrr","nodeType":"FunctionDefinition","parameters":{"id":522,"nodeType":"ParameterList","parameters":[{"constant":false,"id":519,"name":"node","nodeType":"VariableDeclaration","scope":524,"src":"1819:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":518,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1819:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":521,"name":"data","nodeType":"VariableDeclaration","scope":524,"src":"1833:19:4","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":520,"name":"bytes","nodeType":"ElementaryTypeName","src":"1833:5:4","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"value":null,"visibility":"internal"}],"src":"1818:35:4"},"returnParameters":{"id":523,"nodeType":"ParameterList","parameters":[],"src":"1862:0:4"},"scope":603,"src":"1801:62:4","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":531,"implemented":false,"kind":"function","modifiers":[],"name":"setName","nodeType":"FunctionDefinition","parameters":{"id":529,"nodeType":"ParameterList","parameters":[{"constant":false,"id":526,"name":"node","nodeType":"VariableDeclaration","scope":531,"src":"1885:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":525,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1885:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":528,"name":"_name","nodeType":"VariableDeclaration","scope":531,"src":"1899:21:4","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string"},"typeName":{"id":527,"name":"string","nodeType":"ElementaryTypeName","src":"1899:6:4","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":null,"visibility":"internal"}],"src":"1884:37:4"},"returnParameters":{"id":530,"nodeType":"ParameterList","parameters":[],"src":"1930:0:4"},"scope":603,"src":"1868:63:4","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":540,"implemented":false,"kind":"function","modifiers":[],"name":"setPubkey","nodeType":"FunctionDefinition","parameters":{"id":538,"nodeType":"ParameterList","parameters":[{"constant":false,"id":533,"name":"node","nodeType":"VariableDeclaration","scope":540,"src":"1955:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":532,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1955:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":535,"name":"x","nodeType":"VariableDeclaration","scope":540,"src":"1969:9:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":534,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1969:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":537,"name":"y","nodeType":"VariableDeclaration","scope":540,"src":"1980:9:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":536,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1980:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"1954:36:4"},"returnParameters":{"id":539,"nodeType":"ParameterList","parameters":[],"src":"1999:0:4"},"scope":603,"src":"1936:64:4","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":549,"implemented":false,"kind":"function","modifiers":[],"name":"setText","nodeType":"FunctionDefinition","parameters":{"id":547,"nodeType":"ParameterList","parameters":[{"constant":false,"id":542,"name":"node","nodeType":"VariableDeclaration","scope":549,"src":"2022:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":541,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2022:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":544,"name":"key","nodeType":"VariableDeclaration","scope":549,"src":"2036:19:4","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string"},"typeName":{"id":543,"name":"string","nodeType":"ElementaryTypeName","src":"2036:6:4","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":null,"visibility":"internal"},{"constant":false,"id":546,"name":"value","nodeType":"VariableDeclaration","scope":549,"src":"2057:21:4","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string"},"typeName":{"id":545,"name":"string","nodeType":"ElementaryTypeName","src":"2057:6:4","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":null,"visibility":"internal"}],"src":"2021:58:4"},"returnParameters":{"id":548,"nodeType":"ParameterList","parameters":[],"src":"2088:0:4"},"scope":603,"src":"2005:84:4","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":558,"implemented":false,"kind":"function","modifiers":[],"name":"setInterface","nodeType":"FunctionDefinition","parameters":{"id":556,"nodeType":"ParameterList","parameters":[{"constant":false,"id":551,"name":"node","nodeType":"VariableDeclaration","scope":558,"src":"2116:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":550,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2116:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":553,"name":"interfaceID","nodeType":"VariableDeclaration","scope":558,"src":"2130:18:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"typeName":{"id":552,"name":"bytes4","nodeType":"ElementaryTypeName","src":"2130:6:4","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"value":null,"visibility":"internal"},{"constant":false,"id":555,"name":"implementer","nodeType":"VariableDeclaration","scope":558,"src":"2150:19:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":554,"name":"address","nodeType":"ElementaryTypeName","src":"2150:7:4","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"2115:55:4"},"returnParameters":{"id":557,"nodeType":"ParameterList","parameters":[],"src":"2179:0:4"},"scope":603,"src":"2094:86:4","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":565,"implemented":false,"kind":"function","modifiers":[],"name":"supportsInterface","nodeType":"FunctionDefinition","parameters":{"id":561,"nodeType":"ParameterList","parameters":[{"constant":false,"id":560,"name":"interfaceID","nodeType":"VariableDeclaration","scope":565,"src":"2212:18:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"typeName":{"id":559,"name":"bytes4","nodeType":"ElementaryTypeName","src":"2212:6:4","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"value":null,"visibility":"internal"}],"src":"2211:20:4"},"returnParameters":{"id":564,"nodeType":"ParameterList","parameters":[{"constant":false,"id":563,"name":"","nodeType":"VariableDeclaration","scope":565,"src":"2255:4:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":562,"name":"bool","nodeType":"ElementaryTypeName","src":"2255:4:4","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"value":null,"visibility":"internal"}],"src":"2254:6:4"},"scope":603,"src":"2185:76:4","stateMutability":"pure","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":574,"implemented":false,"kind":"function","modifiers":[],"name":"multicall","nodeType":"FunctionDefinition","parameters":{"id":569,"nodeType":"ParameterList","parameters":[{"constant":false,"id":568,"name":"data","nodeType":"VariableDeclaration","scope":574,"src":"2285:21:4","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_calldata_$dyn_calldata_ptr","typeString":"bytes[]"},"typeName":{"baseType":{"id":566,"name":"bytes","nodeType":"ElementaryTypeName","src":"2285:5:4","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"id":567,"length":null,"nodeType":"ArrayTypeName","src":"2285:7:4","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_storage_$dyn_storage_ptr","typeString":"bytes[]"}},"value":null,"visibility":"internal"}],"src":"2284:23:4"},"returnParameters":{"id":573,"nodeType":"ParameterList","parameters":[{"constant":false,"id":572,"name":"results","nodeType":"VariableDeclaration","scope":574,"src":"2325:22:4","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_$dyn_memory_ptr","typeString":"bytes[]"},"typeName":{"baseType":{"id":570,"name":"bytes","nodeType":"ElementaryTypeName","src":"2325:5:4","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"id":571,"length":null,"nodeType":"ArrayTypeName","src":"2325:7:4","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_storage_$dyn_storage_ptr","typeString":"bytes[]"}},"value":null,"visibility":"internal"}],"src":"2324:24:4"},"scope":603,"src":"2266:83:4","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":581,"implemented":false,"kind":"function","modifiers":[],"name":"content","nodeType":"FunctionDefinition","parameters":{"id":577,"nodeType":"ParameterList","parameters":[{"constant":false,"id":576,"name":"node","nodeType":"VariableDeclaration","scope":581,"src":"2403:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":575,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2403:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"2402:14:4"},"returnParameters":{"id":580,"nodeType":"ParameterList","parameters":[{"constant":false,"id":579,"name":"","nodeType":"VariableDeclaration","scope":581,"src":"2440:7:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":578,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2440:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"2439:9:4"},"scope":603,"src":"2386:63:4","stateMutability":"view","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":588,"implemented":false,"kind":"function","modifiers":[],"name":"multihash","nodeType":"FunctionDefinition","parameters":{"id":584,"nodeType":"ParameterList","parameters":[{"constant":false,"id":583,"name":"node","nodeType":"VariableDeclaration","scope":588,"src":"2473:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":582,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2473:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"2472:14:4"},"returnParameters":{"id":587,"nodeType":"ParameterList","parameters":[{"constant":false,"id":586,"name":"","nodeType":"VariableDeclaration","scope":588,"src":"2510:12:4","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":585,"name":"bytes","nodeType":"ElementaryTypeName","src":"2510:5:4","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"value":null,"visibility":"internal"}],"src":"2509:14:4"},"scope":603,"src":"2454:70:4","stateMutability":"view","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":595,"implemented":false,"kind":"function","modifiers":[],"name":"setContent","nodeType":"FunctionDefinition","parameters":{"id":593,"nodeType":"ParameterList","parameters":[{"constant":false,"id":590,"name":"node","nodeType":"VariableDeclaration","scope":595,"src":"2549:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":589,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2549:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":592,"name":"hash","nodeType":"VariableDeclaration","scope":595,"src":"2563:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":591,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2563:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"2548:28:4"},"returnParameters":{"id":594,"nodeType":"ParameterList","parameters":[],"src":"2585:0:4"},"scope":603,"src":"2529:57:4","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":602,"implemented":false,"kind":"function","modifiers":[],"name":"setMultihash","nodeType":"FunctionDefinition","parameters":{"id":600,"nodeType":"ParameterList","parameters":[{"constant":false,"id":597,"name":"node","nodeType":"VariableDeclaration","scope":602,"src":"2613:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":596,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2613:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":599,"name":"hash","nodeType":"VariableDeclaration","scope":602,"src":"2627:19:4","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":598,"name":"bytes","nodeType":"ElementaryTypeName","src":"2627:5:4","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"value":null,"visibility":"internal"}],"src":"2612:35:4"},"returnParameters":{"id":601,"nodeType":"ParameterList","parameters":[],"src":"2656:0:4"},"scope":603,"src":"2591:66:4","stateMutability":"nonpayable","superFunction":null,"visibility":"external"}],"scope":604,"src":"164:2495:4"}],"src":"0:2660:4"},"legacyAST":{"absolutePath":"/home/user/Dropbox/projects/resolvers/contracts/Resolver.sol","exportedSymbols":{"Resolver":[603]},"id":604,"nodeType":"SourceUnit","nodes":[{"id":355,"literals":["solidity",">=","0.4",".25"],"nodeType":"PragmaDirective","src":"0:25:4"},{"id":356,"literals":["experimental","ABIEncoderV2"],"nodeType":"PragmaDirective","src":"26:33:4"},{"baseContracts":[],"contractDependencies":[],"contractKind":"interface","documentation":"A generic resolver interface which includes all the functions including the ones deprecated","fullyImplemented":false,"id":603,"linearizedBaseContracts":[603],"name":"Resolver","nodeType":"ContractDefinition","nodes":[{"anonymous":false,"documentation":null,"id":362,"name":"AddrChanged","nodeType":"EventDefinition","parameters":{"id":361,"nodeType":"ParameterList","parameters":[{"constant":false,"id":358,"indexed":true,"name":"node","nodeType":"VariableDeclaration","scope":362,"src":"206:20:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":357,"name":"bytes32","nodeType":"ElementaryTypeName","src":"206:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":360,"indexed":false,"name":"a","nodeType":"VariableDeclaration","scope":362,"src":"228:9:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":359,"name":"address","nodeType":"ElementaryTypeName","src":"228:7:4","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"205:33:4"},"src":"188:51:4"},{"anonymous":false,"documentation":null,"id":370,"name":"AddressChanged","nodeType":"EventDefinition","parameters":{"id":369,"nodeType":"ParameterList","parameters":[{"constant":false,"id":364,"indexed":true,"name":"node","nodeType":"VariableDeclaration","scope":370,"src":"265:20:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":363,"name":"bytes32","nodeType":"ElementaryTypeName","src":"265:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":366,"indexed":false,"name":"coinType","nodeType":"VariableDeclaration","scope":370,"src":"287:13:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":365,"name":"uint","nodeType":"ElementaryTypeName","src":"287:4:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":null,"visibility":"internal"},{"constant":false,"id":368,"indexed":false,"name":"newAddress","nodeType":"VariableDeclaration","scope":370,"src":"302:16:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":367,"name":"bytes","nodeType":"ElementaryTypeName","src":"302:5:4","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"value":null,"visibility":"internal"}],"src":"264:55:4"},"src":"244:76:4"},{"anonymous":false,"documentation":null,"id":376,"name":"NameChanged","nodeType":"EventDefinition","parameters":{"id":375,"nodeType":"ParameterList","parameters":[{"constant":false,"id":372,"indexed":true,"name":"node","nodeType":"VariableDeclaration","scope":376,"src":"343:20:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":371,"name":"bytes32","nodeType":"ElementaryTypeName","src":"343:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":374,"indexed":false,"name":"name","nodeType":"VariableDeclaration","scope":376,"src":"365:11:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":373,"name":"string","nodeType":"ElementaryTypeName","src":"365:6:4","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":null,"visibility":"internal"}],"src":"342:35:4"},"src":"325:53:4"},{"anonymous":false,"documentation":null,"id":382,"name":"ABIChanged","nodeType":"EventDefinition","parameters":{"id":381,"nodeType":"ParameterList","parameters":[{"constant":false,"id":378,"indexed":true,"name":"node","nodeType":"VariableDeclaration","scope":382,"src":"400:20:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":377,"name":"bytes32","nodeType":"ElementaryTypeName","src":"400:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":380,"indexed":true,"name":"contentType","nodeType":"VariableDeclaration","scope":382,"src":"422:27:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":379,"name":"uint256","nodeType":"ElementaryTypeName","src":"422:7:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":null,"visibility":"internal"}],"src":"399:51:4"},"src":"383:68:4"},{"anonymous":false,"documentation":null,"id":390,"name":"PubkeyChanged","nodeType":"EventDefinition","parameters":{"id":389,"nodeType":"ParameterList","parameters":[{"constant":false,"id":384,"indexed":true,"name":"node","nodeType":"VariableDeclaration","scope":390,"src":"476:20:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":383,"name":"bytes32","nodeType":"ElementaryTypeName","src":"476:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":386,"indexed":false,"name":"x","nodeType":"VariableDeclaration","scope":390,"src":"498:9:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":385,"name":"bytes32","nodeType":"ElementaryTypeName","src":"498:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":388,"indexed":false,"name":"y","nodeType":"VariableDeclaration","scope":390,"src":"509:9:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":387,"name":"bytes32","nodeType":"ElementaryTypeName","src":"509:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"475:44:4"},"src":"456:64:4"},{"anonymous":false,"documentation":null,"id":398,"name":"TextChanged","nodeType":"EventDefinition","parameters":{"id":397,"nodeType":"ParameterList","parameters":[{"constant":false,"id":392,"indexed":true,"name":"node","nodeType":"VariableDeclaration","scope":398,"src":"543:20:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":391,"name":"bytes32","nodeType":"ElementaryTypeName","src":"543:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":394,"indexed":true,"name":"indexedKey","nodeType":"VariableDeclaration","scope":398,"src":"565:25:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":393,"name":"string","nodeType":"ElementaryTypeName","src":"565:6:4","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":null,"visibility":"internal"},{"constant":false,"id":396,"indexed":false,"name":"key","nodeType":"VariableDeclaration","scope":398,"src":"592:10:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":395,"name":"string","nodeType":"ElementaryTypeName","src":"592:6:4","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":null,"visibility":"internal"}],"src":"542:61:4"},"src":"525:79:4"},{"anonymous":false,"documentation":null,"id":404,"name":"ContenthashChanged","nodeType":"EventDefinition","parameters":{"id":403,"nodeType":"ParameterList","parameters":[{"constant":false,"id":400,"indexed":true,"name":"node","nodeType":"VariableDeclaration","scope":404,"src":"634:20:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":399,"name":"bytes32","nodeType":"ElementaryTypeName","src":"634:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":402,"indexed":false,"name":"hash","nodeType":"VariableDeclaration","scope":404,"src":"656:10:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":401,"name":"bytes","nodeType":"ElementaryTypeName","src":"656:5:4","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"value":null,"visibility":"internal"}],"src":"633:34:4"},"src":"609:59:4"},{"anonymous":false,"documentation":null,"id":410,"name":"ContentChanged","nodeType":"EventDefinition","parameters":{"id":409,"nodeType":"ParameterList","parameters":[{"constant":false,"id":406,"indexed":true,"name":"node","nodeType":"VariableDeclaration","scope":410,"src":"722:20:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":405,"name":"bytes32","nodeType":"ElementaryTypeName","src":"722:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":408,"indexed":false,"name":"hash","nodeType":"VariableDeclaration","scope":410,"src":"744:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":407,"name":"bytes32","nodeType":"ElementaryTypeName","src":"744:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"721:36:4"},"src":"701:57:4"},{"body":null,"documentation":null,"id":421,"implemented":false,"kind":"function","modifiers":[],"name":"ABI","nodeType":"FunctionDefinition","parameters":{"id":415,"nodeType":"ParameterList","parameters":[{"constant":false,"id":412,"name":"node","nodeType":"VariableDeclaration","scope":421,"src":"777:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":411,"name":"bytes32","nodeType":"ElementaryTypeName","src":"777:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":414,"name":"contentTypes","nodeType":"VariableDeclaration","scope":421,"src":"791:20:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":413,"name":"uint256","nodeType":"ElementaryTypeName","src":"791:7:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":null,"visibility":"internal"}],"src":"776:36:4"},"returnParameters":{"id":420,"nodeType":"ParameterList","parameters":[{"constant":false,"id":417,"name":"","nodeType":"VariableDeclaration","scope":421,"src":"836:7:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":416,"name":"uint256","nodeType":"ElementaryTypeName","src":"836:7:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":null,"visibility":"internal"},{"constant":false,"id":419,"name":"","nodeType":"VariableDeclaration","scope":421,"src":"845:12:4","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":418,"name":"bytes","nodeType":"ElementaryTypeName","src":"845:5:4","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"value":null,"visibility":"internal"}],"src":"835:23:4"},"scope":603,"src":"764:95:4","stateMutability":"view","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":428,"implemented":false,"kind":"function","modifiers":[],"name":"addr","nodeType":"FunctionDefinition","parameters":{"id":424,"nodeType":"ParameterList","parameters":[{"constant":false,"id":423,"name":"node","nodeType":"VariableDeclaration","scope":428,"src":"878:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":422,"name":"bytes32","nodeType":"ElementaryTypeName","src":"878:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"877:14:4"},"returnParameters":{"id":427,"nodeType":"ParameterList","parameters":[{"constant":false,"id":426,"name":"","nodeType":"VariableDeclaration","scope":428,"src":"915:7:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":425,"name":"address","nodeType":"ElementaryTypeName","src":"915:7:4","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"914:9:4"},"scope":603,"src":"864:60:4","stateMutability":"view","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":437,"implemented":false,"kind":"function","modifiers":[],"name":"addr","nodeType":"FunctionDefinition","parameters":{"id":433,"nodeType":"ParameterList","parameters":[{"constant":false,"id":430,"name":"node","nodeType":"VariableDeclaration","scope":437,"src":"943:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":429,"name":"bytes32","nodeType":"ElementaryTypeName","src":"943:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":432,"name":"coinType","nodeType":"VariableDeclaration","scope":437,"src":"957:13:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":431,"name":"uint","nodeType":"ElementaryTypeName","src":"957:4:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":null,"visibility":"internal"}],"src":"942:29:4"},"returnParameters":{"id":436,"nodeType":"ParameterList","parameters":[{"constant":false,"id":435,"name":"","nodeType":"VariableDeclaration","scope":437,"src":"994:12:4","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":434,"name":"bytes","nodeType":"ElementaryTypeName","src":"994:5:4","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"value":null,"visibility":"internal"}],"src":"993:14:4"},"scope":603,"src":"929:79:4","stateMutability":"view","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":444,"implemented":false,"kind":"function","modifiers":[],"name":"contenthash","nodeType":"FunctionDefinition","parameters":{"id":440,"nodeType":"ParameterList","parameters":[{"constant":false,"id":439,"name":"node","nodeType":"VariableDeclaration","scope":444,"src":"1034:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":438,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1034:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"1033:14:4"},"returnParameters":{"id":443,"nodeType":"ParameterList","parameters":[{"constant":false,"id":442,"name":"","nodeType":"VariableDeclaration","scope":444,"src":"1071:12:4","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":441,"name":"bytes","nodeType":"ElementaryTypeName","src":"1071:5:4","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"value":null,"visibility":"internal"}],"src":"1070:14:4"},"scope":603,"src":"1013:72:4","stateMutability":"view","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":451,"implemented":false,"kind":"function","modifiers":[],"name":"dnsrr","nodeType":"FunctionDefinition","parameters":{"id":447,"nodeType":"ParameterList","parameters":[{"constant":false,"id":446,"name":"node","nodeType":"VariableDeclaration","scope":451,"src":"1105:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":445,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1105:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"1104:14:4"},"returnParameters":{"id":450,"nodeType":"ParameterList","parameters":[{"constant":false,"id":449,"name":"","nodeType":"VariableDeclaration","scope":451,"src":"1142:12:4","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":448,"name":"bytes","nodeType":"ElementaryTypeName","src":"1142:5:4","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"value":null,"visibility":"internal"}],"src":"1141:14:4"},"scope":603,"src":"1090:66:4","stateMutability":"view","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":458,"implemented":false,"kind":"function","modifiers":[],"name":"name","nodeType":"FunctionDefinition","parameters":{"id":454,"nodeType":"ParameterList","parameters":[{"constant":false,"id":453,"name":"node","nodeType":"VariableDeclaration","scope":458,"src":"1175:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":452,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1175:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"1174:14:4"},"returnParameters":{"id":457,"nodeType":"ParameterList","parameters":[{"constant":false,"id":456,"name":"","nodeType":"VariableDeclaration","scope":458,"src":"1212:13:4","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":455,"name":"string","nodeType":"ElementaryTypeName","src":"1212:6:4","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":null,"visibility":"internal"}],"src":"1211:15:4"},"scope":603,"src":"1161:66:4","stateMutability":"view","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":467,"implemented":false,"kind":"function","modifiers":[],"name":"pubkey","nodeType":"FunctionDefinition","parameters":{"id":461,"nodeType":"ParameterList","parameters":[{"constant":false,"id":460,"name":"node","nodeType":"VariableDeclaration","scope":467,"src":"1248:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":459,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1248:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"1247:14:4"},"returnParameters":{"id":466,"nodeType":"ParameterList","parameters":[{"constant":false,"id":463,"name":"x","nodeType":"VariableDeclaration","scope":467,"src":"1285:9:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":462,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1285:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":465,"name":"y","nodeType":"VariableDeclaration","scope":467,"src":"1296:9:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":464,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1296:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"1284:22:4"},"scope":603,"src":"1232:75:4","stateMutability":"view","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":476,"implemented":false,"kind":"function","modifiers":[],"name":"text","nodeType":"FunctionDefinition","parameters":{"id":472,"nodeType":"ParameterList","parameters":[{"constant":false,"id":469,"name":"node","nodeType":"VariableDeclaration","scope":476,"src":"1326:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":468,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1326:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":471,"name":"key","nodeType":"VariableDeclaration","scope":476,"src":"1340:19:4","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string"},"typeName":{"id":470,"name":"string","nodeType":"ElementaryTypeName","src":"1340:6:4","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":null,"visibility":"internal"}],"src":"1325:35:4"},"returnParameters":{"id":475,"nodeType":"ParameterList","parameters":[{"constant":false,"id":474,"name":"","nodeType":"VariableDeclaration","scope":476,"src":"1384:13:4","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_string_memory_ptr","typeString":"string"},"typeName":{"id":473,"name":"string","nodeType":"ElementaryTypeName","src":"1384:6:4","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":null,"visibility":"internal"}],"src":"1383:15:4"},"scope":603,"src":"1312:87:4","stateMutability":"view","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":485,"implemented":false,"kind":"function","modifiers":[],"name":"interfaceImplementer","nodeType":"FunctionDefinition","parameters":{"id":481,"nodeType":"ParameterList","parameters":[{"constant":false,"id":478,"name":"node","nodeType":"VariableDeclaration","scope":485,"src":"1434:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":477,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1434:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":480,"name":"interfaceID","nodeType":"VariableDeclaration","scope":485,"src":"1448:18:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"typeName":{"id":479,"name":"bytes4","nodeType":"ElementaryTypeName","src":"1448:6:4","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"value":null,"visibility":"internal"}],"src":"1433:34:4"},"returnParameters":{"id":484,"nodeType":"ParameterList","parameters":[{"constant":false,"id":483,"name":"","nodeType":"VariableDeclaration","scope":485,"src":"1491:7:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":482,"name":"address","nodeType":"ElementaryTypeName","src":"1491:7:4","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"1490:9:4"},"scope":603,"src":"1404:96:4","stateMutability":"view","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":494,"implemented":false,"kind":"function","modifiers":[],"name":"setABI","nodeType":"FunctionDefinition","parameters":{"id":492,"nodeType":"ParameterList","parameters":[{"constant":false,"id":487,"name":"node","nodeType":"VariableDeclaration","scope":494,"src":"1521:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":486,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1521:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":489,"name":"contentType","nodeType":"VariableDeclaration","scope":494,"src":"1535:19:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":488,"name":"uint256","nodeType":"ElementaryTypeName","src":"1535:7:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":null,"visibility":"internal"},{"constant":false,"id":491,"name":"data","nodeType":"VariableDeclaration","scope":494,"src":"1556:19:4","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":490,"name":"bytes","nodeType":"ElementaryTypeName","src":"1556:5:4","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"value":null,"visibility":"internal"}],"src":"1520:56:4"},"returnParameters":{"id":493,"nodeType":"ParameterList","parameters":[],"src":"1585:0:4"},"scope":603,"src":"1505:81:4","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":501,"implemented":false,"kind":"function","modifiers":[],"name":"setAddr","nodeType":"FunctionDefinition","parameters":{"id":499,"nodeType":"ParameterList","parameters":[{"constant":false,"id":496,"name":"node","nodeType":"VariableDeclaration","scope":501,"src":"1608:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":495,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1608:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":498,"name":"addr","nodeType":"VariableDeclaration","scope":501,"src":"1622:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":497,"name":"address","nodeType":"ElementaryTypeName","src":"1622:7:4","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"1607:28:4"},"returnParameters":{"id":500,"nodeType":"ParameterList","parameters":[],"src":"1644:0:4"},"scope":603,"src":"1591:54:4","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":510,"implemented":false,"kind":"function","modifiers":[],"name":"setAddr","nodeType":"FunctionDefinition","parameters":{"id":508,"nodeType":"ParameterList","parameters":[{"constant":false,"id":503,"name":"node","nodeType":"VariableDeclaration","scope":510,"src":"1667:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":502,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1667:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":505,"name":"coinType","nodeType":"VariableDeclaration","scope":510,"src":"1681:13:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":504,"name":"uint","nodeType":"ElementaryTypeName","src":"1681:4:4","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"value":null,"visibility":"internal"},{"constant":false,"id":507,"name":"a","nodeType":"VariableDeclaration","scope":510,"src":"1696:16:4","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":506,"name":"bytes","nodeType":"ElementaryTypeName","src":"1696:5:4","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"value":null,"visibility":"internal"}],"src":"1666:47:4"},"returnParameters":{"id":509,"nodeType":"ParameterList","parameters":[],"src":"1722:0:4"},"scope":603,"src":"1650:73:4","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":517,"implemented":false,"kind":"function","modifiers":[],"name":"setContenthash","nodeType":"FunctionDefinition","parameters":{"id":515,"nodeType":"ParameterList","parameters":[{"constant":false,"id":512,"name":"node","nodeType":"VariableDeclaration","scope":517,"src":"1752:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":511,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1752:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":514,"name":"hash","nodeType":"VariableDeclaration","scope":517,"src":"1766:19:4","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":513,"name":"bytes","nodeType":"ElementaryTypeName","src":"1766:5:4","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"value":null,"visibility":"internal"}],"src":"1751:35:4"},"returnParameters":{"id":516,"nodeType":"ParameterList","parameters":[],"src":"1795:0:4"},"scope":603,"src":"1728:68:4","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":524,"implemented":false,"kind":"function","modifiers":[],"name":"setDnsrr","nodeType":"FunctionDefinition","parameters":{"id":522,"nodeType":"ParameterList","parameters":[{"constant":false,"id":519,"name":"node","nodeType":"VariableDeclaration","scope":524,"src":"1819:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":518,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1819:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":521,"name":"data","nodeType":"VariableDeclaration","scope":524,"src":"1833:19:4","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":520,"name":"bytes","nodeType":"ElementaryTypeName","src":"1833:5:4","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"value":null,"visibility":"internal"}],"src":"1818:35:4"},"returnParameters":{"id":523,"nodeType":"ParameterList","parameters":[],"src":"1862:0:4"},"scope":603,"src":"1801:62:4","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":531,"implemented":false,"kind":"function","modifiers":[],"name":"setName","nodeType":"FunctionDefinition","parameters":{"id":529,"nodeType":"ParameterList","parameters":[{"constant":false,"id":526,"name":"node","nodeType":"VariableDeclaration","scope":531,"src":"1885:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":525,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1885:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":528,"name":"_name","nodeType":"VariableDeclaration","scope":531,"src":"1899:21:4","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string"},"typeName":{"id":527,"name":"string","nodeType":"ElementaryTypeName","src":"1899:6:4","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":null,"visibility":"internal"}],"src":"1884:37:4"},"returnParameters":{"id":530,"nodeType":"ParameterList","parameters":[],"src":"1930:0:4"},"scope":603,"src":"1868:63:4","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":540,"implemented":false,"kind":"function","modifiers":[],"name":"setPubkey","nodeType":"FunctionDefinition","parameters":{"id":538,"nodeType":"ParameterList","parameters":[{"constant":false,"id":533,"name":"node","nodeType":"VariableDeclaration","scope":540,"src":"1955:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":532,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1955:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":535,"name":"x","nodeType":"VariableDeclaration","scope":540,"src":"1969:9:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":534,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1969:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":537,"name":"y","nodeType":"VariableDeclaration","scope":540,"src":"1980:9:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":536,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1980:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"1954:36:4"},"returnParameters":{"id":539,"nodeType":"ParameterList","parameters":[],"src":"1999:0:4"},"scope":603,"src":"1936:64:4","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":549,"implemented":false,"kind":"function","modifiers":[],"name":"setText","nodeType":"FunctionDefinition","parameters":{"id":547,"nodeType":"ParameterList","parameters":[{"constant":false,"id":542,"name":"node","nodeType":"VariableDeclaration","scope":549,"src":"2022:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":541,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2022:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":544,"name":"key","nodeType":"VariableDeclaration","scope":549,"src":"2036:19:4","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string"},"typeName":{"id":543,"name":"string","nodeType":"ElementaryTypeName","src":"2036:6:4","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":null,"visibility":"internal"},{"constant":false,"id":546,"name":"value","nodeType":"VariableDeclaration","scope":549,"src":"2057:21:4","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_string_calldata_ptr","typeString":"string"},"typeName":{"id":545,"name":"string","nodeType":"ElementaryTypeName","src":"2057:6:4","typeDescriptions":{"typeIdentifier":"t_string_storage_ptr","typeString":"string"}},"value":null,"visibility":"internal"}],"src":"2021:58:4"},"returnParameters":{"id":548,"nodeType":"ParameterList","parameters":[],"src":"2088:0:4"},"scope":603,"src":"2005:84:4","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":558,"implemented":false,"kind":"function","modifiers":[],"name":"setInterface","nodeType":"FunctionDefinition","parameters":{"id":556,"nodeType":"ParameterList","parameters":[{"constant":false,"id":551,"name":"node","nodeType":"VariableDeclaration","scope":558,"src":"2116:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":550,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2116:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":553,"name":"interfaceID","nodeType":"VariableDeclaration","scope":558,"src":"2130:18:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"typeName":{"id":552,"name":"bytes4","nodeType":"ElementaryTypeName","src":"2130:6:4","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"value":null,"visibility":"internal"},{"constant":false,"id":555,"name":"implementer","nodeType":"VariableDeclaration","scope":558,"src":"2150:19:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"},"typeName":{"id":554,"name":"address","nodeType":"ElementaryTypeName","src":"2150:7:4","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"value":null,"visibility":"internal"}],"src":"2115:55:4"},"returnParameters":{"id":557,"nodeType":"ParameterList","parameters":[],"src":"2179:0:4"},"scope":603,"src":"2094:86:4","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":565,"implemented":false,"kind":"function","modifiers":[],"name":"supportsInterface","nodeType":"FunctionDefinition","parameters":{"id":561,"nodeType":"ParameterList","parameters":[{"constant":false,"id":560,"name":"interfaceID","nodeType":"VariableDeclaration","scope":565,"src":"2212:18:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"},"typeName":{"id":559,"name":"bytes4","nodeType":"ElementaryTypeName","src":"2212:6:4","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"value":null,"visibility":"internal"}],"src":"2211:20:4"},"returnParameters":{"id":564,"nodeType":"ParameterList","parameters":[{"constant":false,"id":563,"name":"","nodeType":"VariableDeclaration","scope":565,"src":"2255:4:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"},"typeName":{"id":562,"name":"bool","nodeType":"ElementaryTypeName","src":"2255:4:4","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"value":null,"visibility":"internal"}],"src":"2254:6:4"},"scope":603,"src":"2185:76:4","stateMutability":"pure","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":574,"implemented":false,"kind":"function","modifiers":[],"name":"multicall","nodeType":"FunctionDefinition","parameters":{"id":569,"nodeType":"ParameterList","parameters":[{"constant":false,"id":568,"name":"data","nodeType":"VariableDeclaration","scope":574,"src":"2285:21:4","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_calldata_$dyn_calldata_ptr","typeString":"bytes[]"},"typeName":{"baseType":{"id":566,"name":"bytes","nodeType":"ElementaryTypeName","src":"2285:5:4","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"id":567,"length":null,"nodeType":"ArrayTypeName","src":"2285:7:4","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_storage_$dyn_storage_ptr","typeString":"bytes[]"}},"value":null,"visibility":"internal"}],"src":"2284:23:4"},"returnParameters":{"id":573,"nodeType":"ParameterList","parameters":[{"constant":false,"id":572,"name":"results","nodeType":"VariableDeclaration","scope":574,"src":"2325:22:4","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_memory_$dyn_memory_ptr","typeString":"bytes[]"},"typeName":{"baseType":{"id":570,"name":"bytes","nodeType":"ElementaryTypeName","src":"2325:5:4","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"id":571,"length":null,"nodeType":"ArrayTypeName","src":"2325:7:4","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes_storage_$dyn_storage_ptr","typeString":"bytes[]"}},"value":null,"visibility":"internal"}],"src":"2324:24:4"},"scope":603,"src":"2266:83:4","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":581,"implemented":false,"kind":"function","modifiers":[],"name":"content","nodeType":"FunctionDefinition","parameters":{"id":577,"nodeType":"ParameterList","parameters":[{"constant":false,"id":576,"name":"node","nodeType":"VariableDeclaration","scope":581,"src":"2403:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":575,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2403:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"2402:14:4"},"returnParameters":{"id":580,"nodeType":"ParameterList","parameters":[{"constant":false,"id":579,"name":"","nodeType":"VariableDeclaration","scope":581,"src":"2440:7:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":578,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2440:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"2439:9:4"},"scope":603,"src":"2386:63:4","stateMutability":"view","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":588,"implemented":false,"kind":"function","modifiers":[],"name":"multihash","nodeType":"FunctionDefinition","parameters":{"id":584,"nodeType":"ParameterList","parameters":[{"constant":false,"id":583,"name":"node","nodeType":"VariableDeclaration","scope":588,"src":"2473:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":582,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2473:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"2472:14:4"},"returnParameters":{"id":587,"nodeType":"ParameterList","parameters":[{"constant":false,"id":586,"name":"","nodeType":"VariableDeclaration","scope":588,"src":"2510:12:4","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":585,"name":"bytes","nodeType":"ElementaryTypeName","src":"2510:5:4","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"value":null,"visibility":"internal"}],"src":"2509:14:4"},"scope":603,"src":"2454:70:4","stateMutability":"view","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":595,"implemented":false,"kind":"function","modifiers":[],"name":"setContent","nodeType":"FunctionDefinition","parameters":{"id":593,"nodeType":"ParameterList","parameters":[{"constant":false,"id":590,"name":"node","nodeType":"VariableDeclaration","scope":595,"src":"2549:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":589,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2549:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":592,"name":"hash","nodeType":"VariableDeclaration","scope":595,"src":"2563:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":591,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2563:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"}],"src":"2548:28:4"},"returnParameters":{"id":594,"nodeType":"ParameterList","parameters":[],"src":"2585:0:4"},"scope":603,"src":"2529:57:4","stateMutability":"nonpayable","superFunction":null,"visibility":"external"},{"body":null,"documentation":null,"id":602,"implemented":false,"kind":"function","modifiers":[],"name":"setMultihash","nodeType":"FunctionDefinition","parameters":{"id":600,"nodeType":"ParameterList","parameters":[{"constant":false,"id":597,"name":"node","nodeType":"VariableDeclaration","scope":602,"src":"2613:12:4","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":596,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2613:7:4","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"value":null,"visibility":"internal"},{"constant":false,"id":599,"name":"hash","nodeType":"VariableDeclaration","scope":602,"src":"2627:19:4","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_bytes_calldata_ptr","typeString":"bytes"},"typeName":{"id":598,"name":"bytes","nodeType":"ElementaryTypeName","src":"2627:5:4","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"value":null,"visibility":"internal"}],"src":"2612:35:4"},"returnParameters":{"id":601,"nodeType":"ParameterList","parameters":[],"src":"2656:0:4"},"scope":603,"src":"2591:66:4","stateMutability":"nonpayable","superFunction":null,"visibility":"external"}],"scope":604,"src":"164:2495:4"}],"src":"0:2660:4"},"compiler":{"name":"solc","version":"0.5.8+commit.23d335f2.Emscripten.clang"},"networks":{},"schemaVersion":"3.0.16","updatedAt":"2020-02-10T19:24:14.594Z","devdoc":{"methods":{}},"userdoc":{"methods":{},"notice":"A generic resolver interface which includes all the functions including the ones deprecated"}}')},fgtH:function(e,t,n){"use strict";n.r(t),(function(e){n.d(t,"formats",function(){return Dt}),n.d(t,"formatsByCoinType",function(){return It}),n.d(t,"formatsByName",function(){return St});for(var r=n("HEbw"),i="qpzry9x8gf2tvdw0s3jn54khce6mua7l",a={},s=0;s<i.length;s++){var o=i.charAt(s);if(void 0!==a[o])throw new TypeError(o+" is ambiguous");a[o]=s}function f(e){var t=e>>25;return(33554431&e)<<5^996825010&-(t>>0&1)^642813549&-(t>>1&1)^513874426&-(t>>2&1)^1027748829&-(t>>3&1)^705979059&-(t>>4&1)}function l(e){for(var t=1,n=0;n<e.length;++n){var r=e.charCodeAt(n);if(r<33||r>126)throw new Error("Invalid prefix ("+e+")");t=f(t)^r>>5}for(t=f(t),n=0;n<e.length;++n){var i=e.charCodeAt(n);t=f(t)^31&i}return t}function p(e,t,n,r){for(var i=0,a=0,s=(1<<n)-1,o=[],f=0;f<e.length;++f)for(i=i<<t|e[f],a+=t;a>=n;)o.push(i>>(a-=n)&s);if(r)a>0&&o.push(i<<n-a&s);else{if(a>=t)throw new Error("Excess padding");if(i<<n-a&s)throw new Error("Non-zero padding")}return o}var d=function(e,t){if(t=t||90,e.length<8)throw new TypeError(e+" too short");if(e.length>t)throw new TypeError("Exceeds length limit");var n=e.toLowerCase(),r=e.toUpperCase();if(e!==n&&e!==r)throw new Error("Mixed-case string "+e);var i=(e=n).lastIndexOf("1");if(-1===i)throw new Error("No separator character for "+e);if(0===i)throw new Error("Missing prefix for "+e);var s=e.slice(0,i),o=e.slice(i+1);if(o.length<6)throw new Error("Data too short");for(var p=l(s),d=[],y=0;y<o.length;++y){var c=o.charAt(y),u=a[c];if(void 0===u)throw new Error("Unknown character "+c);p=f(p)^u,y+6>=o.length||d.push(u)}if(1!==p)throw new Error("Invalid checksum for "+e);return{prefix:s,words:d}},y=function(e,t,n){if(e.length+7+t.length>(n=n||90))throw new TypeError("Exceeds length limit");for(var r=l(e=e.toLowerCase()),a=e+"1",s=0;s<t.length;++s){var o=t[s];if(o>>5!=0)throw new Error("Non 5-bit word");r=f(r)^o,a+=i.charAt(o)}for(s=0;s<6;++s)r=f(r);for(r^=1,s=0;s<6;++s)a+=i.charAt(r>>5*(5-s)&31);return a},c=function(e){return p(e,8,5,!0)},u=function(e){return p(e,5,8,!1)};function m(e,t,n){return e(n={path:t,exports:{},require:function(e,t){return function(){throw new Error("Dynamic requires are not currently supported by @rollup/plugin-commonjs")}()}},n.exports),n.exports}var b=m(function(e){var t=function(e){var n=1e7,r=9007199254740992,i=p(r),a=Math.log(r);function s(e,t){return void 0===e?s[0]:void 0!==t?10==+t?H(e):U(e,t):H(e)}function o(e,t){this.value=e,this.sign=t,this.isSmall=!1}function f(e){this.value=e,this.sign=e<0,this.isSmall=!0}function l(e){return-r<e&&e<r}function p(e){return e<1e7?[e]:e<1e14?[e%1e7,Math.floor(e/1e7)]:[e%1e7,Math.floor(e/1e7)%1e7,Math.floor(e/1e14)]}function d(e){y(e);var t=e.length;if(t<4&&N(e,i)<0)switch(t){case 0:return 0;case 1:return e[0];case 2:return e[0]+e[1]*n;default:return e[0]+(e[1]+e[2]*n)*n}return e}function y(e){for(var t=e.length;0===e[--t];);e.length=t+1}function c(e){for(var t=new Array(e),n=-1;++n<e;)t[n]=0;return t}function u(e){return e>0?Math.floor(e):Math.ceil(e)}function m(e,t){var r,i,a=e.length,s=t.length,o=new Array(a),f=0,l=n;for(i=0;i<s;i++)o[i]=(r=e[i]+t[i]+f)-(f=r>=l?1:0)*l;for(;i<a;)r=e[i]+f,o[i++]=r-(f=r===l?1:0)*l;return f>0&&o.push(f),o}function b(e,t){return e.length>=t.length?m(e,t):m(t,e)}function g(e,t){var r,i,a=e.length,s=new Array(a),o=n;for(i=0;i<a;i++)r=e[i]-o+t,t=Math.floor(r/o),s[i]=r-t*o,t+=1;for(;t>0;)s[i++]=t%o,t=Math.floor(t/o);return s}function h(e,t){var n,r,i=e.length,a=t.length,s=new Array(i),o=0;for(n=0;n<a;n++)(r=e[n]-o-t[n])<0?(r+=1e7,o=1):o=0,s[n]=r;for(n=a;n<i;n++){if(!((r=e[n]-o)<0)){s[n++]=r;break}s[n]=r+=1e7}for(;n<i;n++)s[n]=e[n];return y(s),s}function v(e,t,n){var r,i,a=e.length,s=new Array(a),l=-t;for(r=0;r<a;r++)i=e[r]+l,l=Math.floor(i/1e7),s[r]=(i%=1e7)<0?i+1e7:i;return"number"==typeof(s=d(s))?(n&&(s=-s),new f(s)):new o(s,n)}function T(e,t){var n,r,i,a,s=e.length,o=t.length,f=c(s+o);for(i=0;i<s;++i){a=e[i];for(var l=0;l<o;++l)n=a*t[l]+f[i+l],r=Math.floor(n/1e7),f[i+l]=n-1e7*r,f[i+l+1]+=r}return y(f),f}function _(e,t){var r,i,a=e.length,s=new Array(a),o=n,f=0;for(i=0;i<a;i++)r=e[i]*t+f,f=Math.floor(r/o),s[i]=r-f*o;for(;f>0;)s[i++]=f%o,f=Math.floor(f/o);return s}function D(e,t){for(var n=[];t-- >0;)n.push(0);return n.concat(e)}function S(e,t,r){return new o(e<n?_(t,e):T(t,p(e)),r)}function I(e){var t,n,r,i,a=e.length,s=c(a+a);for(r=0;r<a;r++){n=0-(i=e[r])*i;for(var o=r;o<a;o++)t=i*e[o]*2+s[r+o]+n,n=Math.floor(t/1e7),s[r+o]=t-1e7*n;s[r+a]=n}return y(s),s}function w(e,t){var n,r,i,a,s=e.length,o=c(s);for(i=0,n=s-1;n>=0;--n)i=(a=1e7*i+e[n])-(r=u(a/t))*t,o[n]=0|r;return[o,0|i]}function E(e,t){var r,i,a=H(t),l=e.value,m=a.value;if(0===m)throw new Error("Cannot divide by zero");if(e.isSmall)return a.isSmall?[new f(u(l/m)),new f(l%m)]:[s[0],e];if(a.isSmall){if(1===m)return[e,s[0]];if(-1==m)return[e.negate(),s[0]];var b=Math.abs(m);if(b<n){i=d((r=w(l,b))[0]);var g=r[1];return e.sign&&(g=-g),"number"==typeof i?(e.sign!==a.sign&&(i=-i),[new f(i),new f(g)]):[new o(i,e.sign!==a.sign),new f(g)]}m=p(b)}var v=N(l,m);if(-1===v)return[s[0],e];if(0===v)return[s[e.sign===a.sign?1:-1],s[0]];r=l.length+m.length<=200?function(e,t){var r,i,a,s,o,f,l,p=e.length,y=t.length,u=n,m=c(t.length),b=t[y-1],g=Math.ceil(u/(2*b)),h=_(e,g),v=_(t,g);for(h.length<=p&&h.push(0),v.push(0),b=v[y-1],i=p-y;i>=0;i--){for(r=u-1,h[i+y]!==b&&(r=Math.floor((h[i+y]*u+h[i+y-1])/b)),a=0,s=0,f=v.length,o=0;o<f;o++)a+=r*v[o],l=Math.floor(a/u),s+=h[i+o]-(a-l*u),a=l,s<0?(h[i+o]=s+u,s=-1):(h[i+o]=s,s=0);for(;0!==s;){for(r-=1,a=0,o=0;o<f;o++)(a+=h[i+o]-u+v[o])<0?(h[i+o]=a+u,a=0):(h[i+o]=a,a=1);s+=a}m[i]=r}return h=w(h,g)[0],[d(m),d(h)]}(l,m):function(e,t){for(var n,r,i,a,s=e.length,o=t.length,f=[],l=[];s;)if(l.unshift(e[--s]),y(l),N(l,t)<0)f.push(0);else{i=1e7*l[(r=l.length)-1]+l[r-2],r>o&&(i=1e7*(i+1)),n=Math.ceil(i/(1e7*t[o-1]+t[o-2]));do{if(N(a=_(t,n),l)<=0)break;n--}while(n);f.push(n),l=h(l,a)}return f.reverse(),[d(f),d(l)]}(l,m);var T=e.sign!==a.sign,D=r[1],S=e.sign;return"number"==typeof(i=r[0])?(T&&(i=-i),i=new f(i)):i=new o(i,T),"number"==typeof D?(S&&(D=-D),D=new f(D)):D=new o(D,S),[i,D]}function N(e,t){if(e.length!==t.length)return e.length>t.length?1:-1;for(var n=e.length-1;n>=0;n--)if(e[n]!==t[n])return e[n]>t[n]?1:-1;return 0}function V(e){var t=e.abs();return!t.isUnit()&&(!!(t.equals(2)||t.equals(3)||t.equals(5))||!(t.isEven()||t.isDivisibleBy(3)||t.isDivisibleBy(5))&&(!!t.lesser(49)||void 0))}function x(e,n){for(var r,i,a,o=e.prev(),f=o,l=0;f.isEven();)f=f.divide(2),l++;e:for(i=0;i<n.length;i++)if(!e.lesser(n[i])&&!(a=t(n[i]).modPow(f,e)).equals(s[1])&&!a.equals(o)){for(r=l-1;0!=r;r--){if((a=a.square().mod(e)).isUnit())return!1;if(a.equals(o))continue e}return!1}return!0}o.prototype=Object.create(s.prototype),f.prototype=Object.create(s.prototype),o.prototype.add=function(e){var t=H(e);if(this.sign!==t.sign)return this.subtract(t.negate());var n=this.value,r=t.value;return new o(t.isSmall?g(n,Math.abs(r)):b(n,r),this.sign)},o.prototype.plus=o.prototype.add,f.prototype.add=function(e){var t=H(e),n=this.value;if(n<0!==t.sign)return this.subtract(t.negate());var r=t.value;if(t.isSmall){if(l(n+r))return new f(n+r);r=p(Math.abs(r))}return new o(g(r,Math.abs(n)),n<0)},f.prototype.plus=f.prototype.add,o.prototype.subtract=function(e){var t=H(e);if(this.sign!==t.sign)return this.add(t.negate());var n=this.value,r=t.value;return t.isSmall?v(n,Math.abs(r),this.sign):function(e,t,n){var r;return N(e,t)>=0?r=h(e,t):(r=h(t,e),n=!n),"number"==typeof(r=d(r))?(n&&(r=-r),new f(r)):new o(r,n)}(n,r,this.sign)},o.prototype.minus=o.prototype.subtract,f.prototype.subtract=function(e){var t=H(e),n=this.value;if(n<0!==t.sign)return this.add(t.negate());var r=t.value;return t.isSmall?new f(n-r):v(r,Math.abs(n),n>=0)},f.prototype.minus=f.prototype.subtract,o.prototype.negate=function(){return new o(this.value,!this.sign)},f.prototype.negate=function(){var e=this.sign,t=new f(-this.value);return t.sign=!e,t},o.prototype.abs=function(){return new o(this.value,!1)},f.prototype.abs=function(){return new f(Math.abs(this.value))},o.prototype.multiply=function(e){var t,r,i,a=H(e),f=this.value,l=a.value,d=this.sign!==a.sign;if(a.isSmall){if(0===l)return s[0];if(1===l)return this;if(-1===l)return this.negate();if((t=Math.abs(l))<n)return new o(_(f,t),d);l=p(t)}return-.012*(r=f.length)-.012*(i=l.length)+15e-6*r*i>0?new o(function e(t,n){var r=Math.max(t.length,n.length);if(r<=30)return T(t,n);r=Math.ceil(r/2);var i=t.slice(r),a=t.slice(0,r),s=n.slice(r),o=n.slice(0,r),f=e(a,o),l=e(i,s),p=e(b(a,i),b(o,s)),d=b(b(f,D(h(h(p,f),l),r)),D(l,2*r));return y(d),d}(f,l),d):new o(T(f,l),d)},o.prototype.times=o.prototype.multiply,f.prototype._multiplyBySmall=function(e){return l(e.value*this.value)?new f(e.value*this.value):S(Math.abs(e.value),p(Math.abs(this.value)),this.sign!==e.sign)},o.prototype._multiplyBySmall=function(e){return 0===e.value?s[0]:1===e.value?this:-1===e.value?this.negate():S(Math.abs(e.value),this.value,this.sign!==e.sign)},f.prototype.times=f.prototype.multiply=function(e){return H(e)._multiplyBySmall(this)},o.prototype.square=function(){return new o(I(this.value),!1)},f.prototype.square=function(){var e=this.value*this.value;return l(e)?new f(e):new o(I(p(Math.abs(this.value))),!1)},f.prototype.divmod=o.prototype.divmod=function(e){var t=E(this,e);return{quotient:t[0],remainder:t[1]}},f.prototype.over=f.prototype.divide=o.prototype.over=o.prototype.divide=function(e){return E(this,e)[0]},f.prototype.remainder=f.prototype.mod=o.prototype.remainder=o.prototype.mod=function(e){return E(this,e)[1]},o.prototype.pow=function(e){var t,n,r,i=H(e),a=this.value,o=i.value;if(0===o)return s[1];if(0===a)return s[0];if(1===a)return s[1];if(-1===a)return i.isEven()?s[1]:s[-1];if(i.sign)return s[0];if(!i.isSmall)throw new Error("The exponent "+i.toString()+" is too large.");if(this.isSmall&&l(t=Math.pow(a,o)))return new f(u(t));for(n=this,r=s[1];!0&o&&(r=r.times(n),--o),0!==o;)o/=2,n=n.square();return r},f.prototype.pow=o.prototype.pow,f.prototype.modPow=o.prototype.modPow=function(e,t){if(e=H(e),(t=H(t)).isZero())throw new Error("Cannot take modPow with modulus 0");for(var n=s[1],r=this.mod(t);e.isPositive();){if(r.isZero())return s[0];e.isOdd()&&(n=n.multiply(r).mod(t)),e=e.divide(2),r=r.square().mod(t)}return n},o.prototype.compareAbs=function(e){var t=H(e);return t.isSmall?1:N(this.value,t.value)},f.prototype.compareAbs=function(e){var t=H(e),n=Math.abs(this.value),r=t.value;return t.isSmall?n===(r=Math.abs(r))?0:n>r?1:-1:-1},o.prototype.compareTo=o.prototype.compare=function(e){if(1/0===e)return-1;if(-1/0===e)return 1;var t=H(e);return this.sign!==t.sign?t.sign?1:-1:t.isSmall?this.sign?-1:1:N(this.value,t.value)*(this.sign?-1:1)},f.prototype.compareTo=f.prototype.compare=function(e){if(1/0===e)return-1;if(-1/0===e)return 1;var t=H(e),n=this.value,r=t.value;return t.isSmall?n==r?0:n>r?1:-1:n<0!==t.sign?n<0?-1:1:n<0?1:-1},f.prototype.eq=f.prototype.equals=o.prototype.eq=o.prototype.equals=function(e){return 0===this.compare(e)},f.prototype.neq=f.prototype.notEquals=o.prototype.neq=o.prototype.notEquals=function(e){return 0!==this.compare(e)},f.prototype.gt=f.prototype.greater=o.prototype.gt=o.prototype.greater=function(e){return this.compare(e)>0},f.prototype.lt=f.prototype.lesser=o.prototype.lt=o.prototype.lesser=function(e){return this.compare(e)<0},f.prototype.geq=f.prototype.greaterOrEquals=o.prototype.geq=o.prototype.greaterOrEquals=function(e){return this.compare(e)>=0},f.prototype.leq=f.prototype.lesserOrEquals=o.prototype.leq=o.prototype.lesserOrEquals=function(e){return this.compare(e)<=0},o.prototype.isEven=function(){return 0==(1&this.value[0])},f.prototype.isEven=function(){return 0==(1&this.value)},o.prototype.isOdd=function(){return 1==(1&this.value[0])},f.prototype.isOdd=function(){return 1==(1&this.value)},o.prototype.isPositive=function(){return!this.sign},f.prototype.isPositive=function(){return this.value>0},o.prototype.isNegative=function(){return this.sign},f.prototype.isNegative=function(){return this.value<0},o.prototype.isUnit=function(){return!1},f.prototype.isUnit=function(){return 1===Math.abs(this.value)},o.prototype.isZero=function(){return!1},f.prototype.isZero=function(){return 0===this.value},f.prototype.isDivisibleBy=o.prototype.isDivisibleBy=function(e){var t=H(e),n=t.value;return 0!==n&&(1===n||(2===n?this.isEven():this.mod(t).equals(s[0])))},f.prototype.isPrime=o.prototype.isPrime=function(e){var n=V(this);if(void 0!==n)return n;var r=this.abs(),i=r.bitLength();if(i<=64)return x(r,[2,325,9375,28178,450775,9780504,1795265022]);for(var a=Math.log(2)*i,s=Math.ceil(!0===e?2*Math.pow(a,2):a),o=[],f=0;f<s;f++)o.push(t(f+2));return x(r,o)},f.prototype.isProbablePrime=o.prototype.isProbablePrime=function(e){var n=V(this);if(void 0!==n)return n;for(var r=this.abs(),i=void 0===e?5:e,a=[],s=0;s<i;s++)a.push(t.randBetween(2,r.minus(2)));return x(r,a)},f.prototype.modInv=o.prototype.modInv=function(e){for(var n,r,i,a=t.zero,s=t.one,o=H(e),f=this.abs();!f.equals(t.zero);)n=o.divide(f),r=a,i=o,a=s,o=f,s=r.subtract(n.multiply(s)),f=i.subtract(n.multiply(f));if(!o.equals(1))throw new Error(this.toString()+" and "+e.toString()+" are not co-prime");return-1===a.compare(0)&&(a=a.add(e)),this.isNegative()?a.negate():a},o.prototype.next=function(){var e=this.value;return this.sign?v(e,1,this.sign):new o(g(e,1),this.sign)},f.prototype.next=function(){var e=this.value;return e+1<r?new f(e+1):new o(i,!1)},o.prototype.prev=function(){var e=this.value;return this.sign?new o(g(e,1),!0):v(e,1,this.sign)},f.prototype.prev=function(){var e=this.value;return e-1>-r?new f(e-1):new o(i,!0)};for(var L=[1];2*L[L.length-1]<=n;)L.push(2*L[L.length-1]);var R=L.length,P=L[R-1];function A(e){return("number"==typeof e||"string"==typeof e)&&+Math.abs(e)<=n||e instanceof o&&e.value.length<=1}function k(e,n,r){n=H(n);for(var i=e.isNegative(),a=n.isNegative(),s=i?e.not():e,o=a?n.not():n,f=0,l=0,p=null,d=null,y=[];!s.isZero()||!o.isZero();)f=(p=E(s,P))[1].toJSNumber(),i&&(f=P-1-f),l=(d=E(o,P))[1].toJSNumber(),a&&(l=P-1-l),s=p[0],o=d[0],y.push(r(f,l));for(var c=0!==r(i?1:0,a?1:0)?t(-1):t(0),u=y.length-1;u>=0;u-=1)c=c.multiply(P).add(t(y[u]));return c}function C(e){var t=e.value,r="number"==typeof t?t|1<<30:t[0]+t[1]*n|1073758208;return r&-r}function M(e,t){return e=H(e),t=H(t),e.greater(t)?e:t}function $(e,t){return e=H(e),t=H(t),e.lesser(t)?e:t}function B(e,t){if(e=H(e).abs(),t=H(t).abs(),e.equals(t))return e;if(e.isZero())return t;if(t.isZero())return e;for(var n,r,i=s[1];e.isEven()&&t.isEven();)n=Math.min(C(e),C(t)),e=e.divide(n),t=t.divide(n),i=i.multiply(n);for(;e.isEven();)e=e.divide(C(e));do{for(;t.isEven();)t=t.divide(C(t));e.greater(t)&&(r=t,t=e,e=r),t=t.subtract(e)}while(!t.isZero());return i.isUnit()?e:e.multiply(i)}f.prototype.shiftLeft=o.prototype.shiftLeft=function(e){if(!A(e))throw new Error(String(e)+" is too large for shifting.");if((e=+e)<0)return this.shiftRight(-e);var t=this;if(t.isZero())return t;for(;e>=R;)t=t.multiply(P),e-=R-1;return t.multiply(L[e])},f.prototype.shiftRight=o.prototype.shiftRight=function(e){var t;if(!A(e))throw new Error(String(e)+" is too large for shifting.");if((e=+e)<0)return this.shiftLeft(-e);for(var n=this;e>=R;){if(n.isZero()||n.isNegative()&&n.isUnit())return n;n=(t=E(n,P))[1].isNegative()?t[0].prev():t[0],e-=R-1}return(t=E(n,L[e]))[1].isNegative()?t[0].prev():t[0]},f.prototype.not=o.prototype.not=function(){return this.negate().prev()},f.prototype.and=o.prototype.and=function(e){return k(this,e,function(e,t){return e&t})},f.prototype.or=o.prototype.or=function(e){return k(this,e,function(e,t){return e|t})},f.prototype.xor=o.prototype.xor=function(e){return k(this,e,function(e,t){return e^t})},f.prototype.bitLength=o.prototype.bitLength=function(){var e=this;return e.compareTo(t(0))<0&&(e=e.negate().subtract(t(1))),0===e.compareTo(t(0))?t(0):t(function e(n,r){if(r.compareTo(n)<=0){var i=e(n,r.square(r)),a=i.p,s=i.e,o=a.multiply(r);return o.compareTo(n)<=0?{p:o,e:2*s+1}:{p:a,e:2*s}}return{p:t(1),e:0}}(e,t(2)).e).add(t(1))};var U=function(e,t){for(var n=e.length,r=Math.abs(t),i=0;i<n;i++)if("-"!==(p=e[i].toLowerCase())&&/[a-z0-9]/.test(p)){if(/[0-9]/.test(p)&&+p>=r){if("1"===p&&1===r)continue;throw new Error(p+" is not a valid digit in base "+t+".")}if(p.charCodeAt(0)-87>=r)throw new Error(p+" is not a valid digit in base "+t+".")}if(2<=t&&t<=36&&n<=a/Math.log(t)){var s=parseInt(e,t);if(isNaN(s))throw new Error(p+" is not a valid digit in base "+t+".");return new f(parseInt(e,t))}t=H(t);var o=[],l="-"===e[0];for(i=l?1:0;i<e.length;i++){var p,d=(p=e[i].toLowerCase()).charCodeAt(0);if(48<=d&&d<=57)o.push(H(p));else if(97<=d&&d<=122)o.push(H(p.charCodeAt(0)-87));else{if("<"!==p)throw new Error(p+" is not a valid character");var y=i;do{i++}while(">"!==e[i]);o.push(H(e.slice(y+1,i)))}}return F(o,t,l)};function F(e,t,n){var r,i=s[0],a=s[1];for(r=e.length-1;r>=0;r--)i=i.add(e[r].times(a)),a=a.times(t);return n?i.negate():i}function O(e){return e<=35?"0123456789abcdefghijklmnopqrstuvwxyz".charAt(e):"<"+e+">"}function q(e,n){if((n=t(n)).isZero()){if(e.isZero())return{value:[0],isNegative:!1};throw new Error("Cannot convert nonzero numbers to base 0.")}if(n.equals(-1)){if(e.isZero())return{value:[0],isNegative:!1};if(e.isNegative())return{value:[].concat.apply([],Array.apply(null,Array(-e)).map(Array.prototype.valueOf,[1,0])),isNegative:!1};var r=Array.apply(null,Array(+e-1)).map(Array.prototype.valueOf,[0,1]);return r.unshift([1]),{value:[].concat.apply([],r),isNegative:!1}}var i=!1;if(e.isNegative()&&n.isPositive()&&(i=!0,e=e.abs()),n.equals(1))return e.isZero()?{value:[0],isNegative:!1}:{value:Array.apply(null,Array(+e)).map(Number.prototype.valueOf,1),isNegative:i};for(var a,s=[],o=e;o.isNegative()||o.compareAbs(n)>=0;){a=o.divmod(n),o=a.quotient;var f=a.remainder;f.isNegative()&&(f=n.minus(f).abs(),o=o.next()),s.push(f.toJSNumber())}return s.push(o.toJSNumber()),{value:s.reverse(),isNegative:i}}function z(e,t){var n=q(e,t);return(n.isNegative?"-":"")+n.value.map(O).join("")}function j(e){if(l(+e)){var t=+e;if(t===u(t))return new f(t);throw new Error("Invalid integer: "+e)}var n="-"===e[0];n&&(e=e.slice(1));var r=e.split(/e/i);if(r.length>2)throw new Error("Invalid integer: "+r.join("e"));if(2===r.length){var i=r[1];if("+"===i[0]&&(i=i.slice(1)),(i=+i)!==u(i)||!l(i))throw new Error("Invalid integer: "+i+" is not a valid exponent.");var a=r[0],s=a.indexOf(".");if(s>=0&&(i-=a.length-s-1,a=a.slice(0,s)+a.slice(s+1)),i<0)throw new Error("Cannot include negative exponent part for integers");e=a+=new Array(i+1).join("0")}if(!/^([0-9][0-9]*)$/.test(e))throw new Error("Invalid integer: "+e);for(var p=[],d=e.length,c=d-7;d>0;)p.push(+e.slice(c,d)),(c-=7)<0&&(c=0),d-=7;return y(p),new o(p,n)}function H(e){return"number"==typeof e?function(e){if(l(e)){if(e!==u(e))throw new Error(e+" is not an integer.");return new f(e)}return j(e.toString())}(e):"string"==typeof e?j(e):e}o.prototype.toArray=function(e){return q(this,e)},f.prototype.toArray=function(e){return q(this,e)},o.prototype.toString=function(e){if(void 0===e&&(e=10),10!==e)return z(this,e);for(var t,n=this.value,r=n.length,i=String(n[--r]);--r>=0;)t=String(n[r]),i+="0000000".slice(t.length)+t;return(this.sign?"-":"")+i},f.prototype.toString=function(e){return void 0===e&&(e=10),10!=e?z(this,e):String(this.value)},o.prototype.toJSON=f.prototype.toJSON=function(){return this.toString()},o.prototype.toJSNumber=o.prototype.valueOf=function(){return parseInt(this.toString(),10)},f.prototype.toJSNumber=f.prototype.valueOf=function(){return this.value};for(var W=0;W<1e3;W++)s[W]=new f(W),W>0&&(s[-W]=new f(-W));return s.one=s[1],s.zero=s[0],s.minusOne=s[-1],s.max=M,s.min=$,s.gcd=B,s.lcm=function(e,t){return e=H(e).abs(),t=H(t).abs(),e.divide(B(e,t)).multiply(t)},s.isInstance=function(e){return e instanceof o||e instanceof f},s.randBetween=function(e,t){var r=$(e=H(e),t=H(t)),i=M(e,t).subtract(r).add(1);if(i.isSmall)return r.add(Math.floor(Math.random()*i));for(var a=[],s=!0,l=i.value.length-1;l>=0;l--){var p=s?i.value[l]:n,y=u(Math.random()*p);a.unshift(y),y<p&&(s=!1)}return a=d(a),r.add("number"==typeof a?new f(a):new o(a,!1))},s.fromArray=function(e,t,n){return F(e.map(H),H(t||10),n)},s}();e.hasOwnProperty("exports")&&(e.exports=t)}),g=function(t){var n;if(t instanceof Uint8Array)n=t;else if(t instanceof e)n=new Uint8Array(t);else{if("string"!=typeof t)throw new Error("Input must be an string, Buffer or Uint8Array");n=new Uint8Array(e.from(t,"utf8"))}return n},h=function(e){return Array.prototype.map.call(e,function(e){return(e<16?"0":"")+e.toString(16)}).join("")};function v(e,t,n){var r=e[t]+e[n],i=e[t+1]+e[n+1];r>=4294967296&&i++,e[t]=r,e[t+1]=i}function T(e,t,n,r){var i=e[t]+n;n<0&&(i+=4294967296);var a=e[t+1]+r;i>=4294967296&&a++,e[t]=i,e[t+1]=a}function _(e,t){return e[t]^e[t+1]<<8^e[t+2]<<16^e[t+3]<<24}function D(e,t,n,r,i,a){var s=E[i],o=E[i+1],f=E[a],l=E[a+1];v(w,e,t),T(w,e,s,o);var p=w[r]^w[e],d=w[r+1]^w[e+1];w[r]=d,w[r+1]=p,v(w,n,r),w[t]=(p=w[t]^w[n])>>>24^(d=w[t+1]^w[n+1])<<8,w[t+1]=d>>>24^p<<8,v(w,e,t),T(w,e,f,l),w[r]=(p=w[r]^w[e])>>>16^(d=w[r+1]^w[e+1])<<16,w[r+1]=d>>>16^p<<16,v(w,n,r),w[t]=(d=w[t+1]^w[n+1])>>>31^(p=w[t]^w[n])<<1,w[t+1]=p>>>31^d<<1}var S=new Uint32Array([4089235720,1779033703,2227873595,3144134277,4271175723,1013904242,1595750129,2773480762,2917565137,1359893119,725511199,2600822924,4215389547,528734635,327033209,1541459225]),I=new Uint8Array([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3,11,8,12,0,5,2,15,13,10,14,3,6,7,1,9,4,7,9,3,1,13,12,11,14,2,6,5,10,4,0,15,8,9,0,5,7,2,4,10,15,14,1,11,12,6,8,3,13,2,12,6,10,0,11,8,3,4,13,7,5,15,14,1,9,12,5,1,15,14,13,4,10,0,7,6,3,9,2,8,11,13,11,7,14,12,1,3,9,5,0,15,4,8,6,2,10,6,15,14,9,11,3,0,8,12,2,13,7,1,4,10,5,10,2,8,4,7,6,1,5,15,11,9,14,3,12,13,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3].map(function(e){return 2*e})),w=new Uint32Array(32),E=new Uint32Array(32);function N(e,t){var n=0;for(n=0;n<16;n++)w[n]=e.h[n],w[n+16]=S[n];for(w[24]=w[24]^e.t,w[25]=w[25]^e.t/4294967296,t&&(w[28]=~w[28],w[29]=~w[29]),n=0;n<32;n++)E[n]=_(e.b,4*n);for(n=0;n<12;n++)D(0,8,16,24,I[16*n+0],I[16*n+1]),D(2,10,18,26,I[16*n+2],I[16*n+3]),D(4,12,20,28,I[16*n+4],I[16*n+5]),D(6,14,22,30,I[16*n+6],I[16*n+7]),D(0,10,20,30,I[16*n+8],I[16*n+9]),D(2,12,22,24,I[16*n+10],I[16*n+11]),D(4,14,16,26,I[16*n+12],I[16*n+13]),D(6,8,18,28,I[16*n+14],I[16*n+15]);for(n=0;n<16;n++)e.h[n]=e.h[n]^w[n]^w[n+16]}function V(e,t){if(0===e||e>64)throw new Error("Illegal output length, expected 0 < length <= 64");if(t&&t.length>64)throw new Error("Illegal key, expected Uint8Array with 0 < length <= 64");for(var n={b:new Uint8Array(128),h:new Uint32Array(16),t:0,c:0,outlen:e},r=0;r<16;r++)n.h[r]=S[r];return n.h[0]^=16842752^(t?t.length:0)<<8^e,t&&(x(n,t),n.c=128),n}function x(e,t){for(var n=0;n<t.length;n++)128===e.c&&(e.t+=e.c,N(e,!1),e.c=0),e.b[e.c++]=t[n]}function L(e){for(e.t+=e.c;e.c<128;)e.b[e.c++]=0;N(e,!0);for(var t=new Uint8Array(e.outlen),n=0;n<e.outlen;n++)t[n]=e.h[n>>2]>>8*(3&n);return t}function R(e,t,n){n=n||64,e=g(e);var r=V(n,t);return x(r,e),L(r)}var P={blake2b:R,blake2bHex:function(e,t,n){var r=R(e,t,n);return h(r)},blake2bInit:V,blake2bUpdate:x,blake2bFinal:L};function A(e,t){return e[t]^e[t+1]<<8^e[t+2]<<16^e[t+3]<<24}function k(e,t,n,r,i,a){B[e]=B[e]+B[t]+i,B[r]=C(B[r]^B[e],16),B[n]=B[n]+B[r],B[t]=C(B[t]^B[n],12),B[e]=B[e]+B[t]+a,B[r]=C(B[r]^B[e],8),B[n]=B[n]+B[r],B[t]=C(B[t]^B[n],7)}function C(e,t){return e>>>t^e<<32-t}var M=new Uint32Array([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),$=new Uint8Array([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3,11,8,12,0,5,2,15,13,10,14,3,6,7,1,9,4,7,9,3,1,13,12,11,14,2,6,5,10,4,0,15,8,9,0,5,7,2,4,10,15,14,1,11,12,6,8,3,13,2,12,6,10,0,11,8,3,4,13,7,5,15,14,1,9,12,5,1,15,14,13,4,10,0,7,6,3,9,2,8,11,13,11,7,14,12,1,3,9,5,0,15,4,8,6,2,10,6,15,14,9,11,3,0,8,12,2,13,7,1,4,10,5,10,2,8,4,7,6,1,5,15,11,9,14,3,12,13,0]),B=new Uint32Array(16),U=new Uint32Array(16);function F(e,t){var n=0;for(n=0;n<8;n++)B[n]=e.h[n],B[n+8]=M[n];for(B[12]^=e.t,B[13]^=e.t/4294967296,t&&(B[14]=~B[14]),n=0;n<16;n++)U[n]=A(e.b,4*n);for(n=0;n<10;n++)k(0,4,8,12,U[$[16*n+0]],U[$[16*n+1]]),k(1,5,9,13,U[$[16*n+2]],U[$[16*n+3]]),k(2,6,10,14,U[$[16*n+4]],U[$[16*n+5]]),k(3,7,11,15,U[$[16*n+6]],U[$[16*n+7]]),k(0,5,10,15,U[$[16*n+8]],U[$[16*n+9]]),k(1,6,11,12,U[$[16*n+10]],U[$[16*n+11]]),k(2,7,8,13,U[$[16*n+12]],U[$[16*n+13]]),k(3,4,9,14,U[$[16*n+14]],U[$[16*n+15]]);for(n=0;n<8;n++)e.h[n]^=B[n]^B[n+8]}function O(e,t){if(!(e>0&&e<=32))throw new Error("Incorrect output length, should be in [1, 32]");var n=t?t.length:0;if(t&&!(n>0&&n<=32))throw new Error("Incorrect key length, should be in [1, 32]");var r={h:new Uint32Array(M),b:new Uint32Array(64),c:0,t:0,outlen:e};return r.h[0]^=16842752^n<<8^e,n>0&&(q(r,t),r.c=64),r}function q(e,t){for(var n=0;n<t.length;n++)64===e.c&&(e.t+=e.c,F(e,!1),e.c=0),e.b[e.c++]=t[n]}function z(e){for(e.t+=e.c;e.c<64;)e.b[e.c++]=0;F(e,!0);for(var t=new Uint8Array(e.outlen),n=0;n<e.outlen;n++)t[n]=e.h[n>>2]>>8*(3&n)&255;return t}function j(e,t,n){n=n||32,e=g(e);var r=O(n,t);return q(r,e),z(r)}for(var H={blake2s:j,blake2sHex:function(e,t,n){var r=j(e,t,n);return h(r)},blake2sInit:O,blake2sUpdate:q,blake2sFinal:z},W={blake2b:P.blake2b,blake2bHex:P.blake2bHex,blake2bInit:P.blake2bInit,blake2bUpdate:P.blake2bUpdate,blake2bFinal:P.blake2bFinal,blake2s:H.blake2s,blake2sHex:H.blake2sHex,blake2sInit:H.blake2sInit,blake2sUpdate:H.blake2sUpdate,blake2sFinal:H.blake2sFinal},K=[],Z=[],X="undefined"!=typeof Uint8Array?Uint8Array:Array,J="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Y=0,G=J.length;Y<G;++Y)K[Y]=J[Y],Z[J.charCodeAt(Y)]=Y;function Q(e,t,n){for(var r,i=[],a=t;a<n;a+=3)i.push(K[(r=(e[a]<<16&16711680)+(e[a+1]<<8&65280)+(255&e[a+2]))>>18&63]+K[r>>12&63]+K[r>>6&63]+K[63&r]);return i.join("")}Z["-".charCodeAt(0)]=62,Z["_".charCodeAt(0)]=63;var ee=function(e){var t,n,r=function(e){var t=e.length;if(t%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var n=e.indexOf("=");return-1===n&&(n=t),[n,n===t?0:4-n%4]}(e),i=r[0],a=r[1],s=new X(function(e,t,n){return 3*(t+n)/4-n}(0,i,a)),o=0,f=a>0?i-4:i;for(n=0;n<f;n+=4)t=Z[e.charCodeAt(n)]<<18|Z[e.charCodeAt(n+1)]<<12|Z[e.charCodeAt(n+2)]<<6|Z[e.charCodeAt(n+3)],s[o++]=t>>16&255,s[o++]=t>>8&255,s[o++]=255&t;return 2===a&&(t=Z[e.charCodeAt(n)]<<2|Z[e.charCodeAt(n+1)]>>4,s[o++]=255&t),1===a&&(t=Z[e.charCodeAt(n)]<<10|Z[e.charCodeAt(n+1)]<<4|Z[e.charCodeAt(n+2)]>>2,s[o++]=t>>8&255,s[o++]=255&t),s},te=function(e){for(var t,n=e.length,r=n%3,i=[],a=0,s=n-r;a<s;a+=16383)i.push(Q(e,a,a+16383>s?s:a+16383));return 1===r?i.push(K[(t=e[n-1])>>2]+K[t<<4&63]+"=="):2===r&&i.push(K[(t=(e[n-2]<<8)+e[n-1])>>10]+K[t>>4&63]+K[t<<2&63]+"="),i.join("")},ne=function(e,t,n,r,i){var a,s,o=8*i-r-1,f=(1<<o)-1,l=f>>1,p=-7,d=n?i-1:0,y=n?-1:1,c=e[t+d];for(d+=y,a=c&(1<<-p)-1,c>>=-p,p+=o;p>0;a=256*a+e[t+d],d+=y,p-=8);for(s=a&(1<<-p)-1,a>>=-p,p+=r;p>0;s=256*s+e[t+d],d+=y,p-=8);if(0===a)a=1-l;else{if(a===f)return s?NaN:1/0*(c?-1:1);s+=Math.pow(2,r),a-=l}return(c?-1:1)*s*Math.pow(2,a-r)},re=function(e,t,n,r,i,a){var s,o,f,l=8*a-i-1,p=(1<<l)-1,d=p>>1,y=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,c=r?0:a-1,u=r?1:-1,m=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||1/0===t?(o=isNaN(t)?1:0,s=p):(s=Math.floor(Math.log(t)/Math.LN2),t*(f=Math.pow(2,-s))<1&&(s--,f*=2),(t+=s+d>=1?y/f:y*Math.pow(2,1-d))*f>=2&&(s++,f/=2),s+d>=p?(o=0,s=p):s+d>=1?(o=(t*f-1)*Math.pow(2,i),s+=d):(o=t*Math.pow(2,d-1)*Math.pow(2,i),s=0));i>=8;e[n+c]=255&o,c+=u,o/=256,i-=8);for(s=s<<i|o,l+=i;l>0;e[n+c]=255&s,c+=u,s/=256,l-=8);e[n+c-u]|=128*m},ie=m(function(e,t){var n="function"==typeof Symbol&&"function"==typeof Symbol.for?Symbol.for("nodejs.util.inspect.custom"):null;function r(e){if(e>2147483647)throw new RangeError('The value "'+e+'" is invalid for option "size"');var t=new Uint8Array(e);return Object.setPrototypeOf(t,i.prototype),t}function i(e,t,n){if("number"==typeof e){if("string"==typeof t)throw new TypeError('The "string" argument must be of type string. Received type number');return o(e)}return a(e,t,n)}function a(e,t,n){if("string"==typeof e)return function(e,t){if("string"==typeof t&&""!==t||(t="utf8"),!i.isEncoding(t))throw new TypeError("Unknown encoding: "+t);var n=0|d(e,t),a=r(n),s=a.write(e,t);return s!==n&&(a=a.slice(0,s)),a}(e,t);if(ArrayBuffer.isView(e))return f(e);if(null==e)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if($(e,ArrayBuffer)||e&&$(e.buffer,ArrayBuffer))return l(e,t,n);if("undefined"!=typeof SharedArrayBuffer&&($(e,SharedArrayBuffer)||e&&$(e.buffer,SharedArrayBuffer)))return l(e,t,n);if("number"==typeof e)throw new TypeError('The "value" argument must not be of type number. Received type number');var a=e.valueOf&&e.valueOf();if(null!=a&&a!==e)return i.from(a,t,n);var s=function(e){if(i.isBuffer(e)){var t=0|p(e.length),n=r(t);return 0===n.length||e.copy(n,0,0,t),n}return void 0!==e.length?"number"!=typeof e.length||B(e.length)?r(0):f(e):"Buffer"===e.type&&Array.isArray(e.data)?f(e.data):void 0}(e);if(s)return s;if("undefined"!=typeof Symbol&&null!=Symbol.toPrimitive&&"function"==typeof e[Symbol.toPrimitive])return i.from(e[Symbol.toPrimitive]("string"),t,n);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}function s(e){if("number"!=typeof e)throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function o(e){return s(e),r(e<0?0:0|p(e))}function f(e){for(var t=e.length<0?0:0|p(e.length),n=r(t),i=0;i<t;i+=1)n[i]=255&e[i];return n}function l(e,t,n){if(t<0||e.byteLength<t)throw new RangeError('"offset" is outside of buffer bounds');if(e.byteLength<t+(n||0))throw new RangeError('"length" is outside of buffer bounds');var r;return r=void 0===t&&void 0===n?new Uint8Array(e):void 0===n?new Uint8Array(e,t):new Uint8Array(e,t,n),Object.setPrototypeOf(r,i.prototype),r}function p(e){if(e>=2147483647)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+2147483647..toString(16)+" bytes");return 0|e}function d(e,t){if(i.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||$(e,ArrayBuffer))return e.byteLength;if("string"!=typeof e)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);var n=e.length,r=arguments.length>2&&!0===arguments[2];if(!r&&0===n)return 0;for(var a=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":return k(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return C(e).length;default:if(a)return r?-1:k(e).length;t=(""+t).toLowerCase(),a=!0}}function y(e,t,n){var r=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return E(this,t,n);case"utf8":case"utf-8":return S(this,t,n);case"ascii":return I(this,t,n);case"latin1":case"binary":return w(this,t,n);case"base64":return D(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return N(this,t,n);default:if(r)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}}function c(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function u(e,t,n,r,a){if(0===e.length)return-1;if("string"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),B(n=+n)&&(n=a?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(a)return-1;n=e.length-1}else if(n<0){if(!a)return-1;n=0}if("string"==typeof t&&(t=i.from(t,r)),i.isBuffer(t))return 0===t.length?-1:m(e,t,n,r,a);if("number"==typeof t)return t&=255,"function"==typeof Uint8Array.prototype.indexOf?a?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):m(e,[t],n,r,a);throw new TypeError("val must be string, number or Buffer")}function m(e,t,n,r,i){var a,s=1,o=e.length,f=t.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(e.length<2||t.length<2)return-1;s=2,o/=2,f/=2,n/=2}function l(e,t){return 1===s?e[t]:e.readUInt16BE(t*s)}if(i){var p=-1;for(a=n;a<o;a++)if(l(e,a)===l(t,-1===p?0:a-p)){if(-1===p&&(p=a),a-p+1===f)return p*s}else-1!==p&&(a-=a-p),p=-1}else for(n+f>o&&(n=o-f),a=n;a>=0;a--){for(var d=!0,y=0;y<f;y++)if(l(e,a+y)!==l(t,y)){d=!1;break}if(d)return a}return-1}function b(e,t,n,r){n=Number(n)||0;var i=e.length-n;r?(r=Number(r))>i&&(r=i):r=i;var a=t.length;r>a/2&&(r=a/2);for(var s=0;s<r;++s){var o=parseInt(t.substr(2*s,2),16);if(B(o))return s;e[n+s]=o}return s}function g(e,t,n,r){return M(k(t,e.length-n),e,n,r)}function h(e,t,n,r){return M(function(e){for(var t=[],n=0;n<e.length;++n)t.push(255&e.charCodeAt(n));return t}(t),e,n,r)}function v(e,t,n,r){return h(e,t,n,r)}function T(e,t,n,r){return M(C(t),e,n,r)}function _(e,t,n,r){return M(function(e,t){for(var n,r,i=[],a=0;a<e.length&&!((t-=2)<0);++a)r=(n=e.charCodeAt(a))>>8,i.push(n%256),i.push(r);return i}(t,e.length-n),e,n,r)}function D(e,t,n){return te(0===t&&n===e.length?e:e.slice(t,n))}function S(e,t,n){n=Math.min(e.length,n);for(var r=[],i=t;i<n;){var a,s,o,f,l=e[i],p=null,d=l>239?4:l>223?3:l>191?2:1;if(i+d<=n)switch(d){case 1:l<128&&(p=l);break;case 2:128==(192&(a=e[i+1]))&&(f=(31&l)<<6|63&a)>127&&(p=f);break;case 3:s=e[i+2],128==(192&(a=e[i+1]))&&128==(192&s)&&(f=(15&l)<<12|(63&a)<<6|63&s)>2047&&(f<55296||f>57343)&&(p=f);break;case 4:s=e[i+2],o=e[i+3],128==(192&(a=e[i+1]))&&128==(192&s)&&128==(192&o)&&(f=(15&l)<<18|(63&a)<<12|(63&s)<<6|63&o)>65535&&f<1114112&&(p=f)}null===p?(p=65533,d=1):p>65535&&(r.push((p-=65536)>>>10&1023|55296),p=56320|1023&p),r.push(p),i+=d}return function(e){var t=e.length;if(t<=4096)return String.fromCharCode.apply(String,e);for(var n="",r=0;r<t;)n+=String.fromCharCode.apply(String,e.slice(r,r+=4096));return n}(r)}function I(e,t,n){var r="";n=Math.min(e.length,n);for(var i=t;i<n;++i)r+=String.fromCharCode(127&e[i]);return r}function w(e,t,n){var r="";n=Math.min(e.length,n);for(var i=t;i<n;++i)r+=String.fromCharCode(e[i]);return r}function E(e,t,n){var r=e.length;(!t||t<0)&&(t=0),(!n||n<0||n>r)&&(n=r);for(var i="",a=t;a<n;++a)i+=U[e[a]];return i}function N(e,t,n){for(var r=e.slice(t,n),i="",a=0;a<r.length;a+=2)i+=String.fromCharCode(r[a]+256*r[a+1]);return i}function V(e,t,n){if(e%1!=0||e<0)throw new RangeError("offset is not uint");if(e+t>n)throw new RangeError("Trying to access beyond buffer length")}function x(e,t,n,r,a,s){if(!i.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>a||t<s)throw new RangeError('"value" argument is out of bounds');if(n+r>e.length)throw new RangeError("Index out of range")}function L(e,t,n,r,i,a){if(n+r>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function R(e,t,n,r,i){return t=+t,n>>>=0,i||L(e,0,n,4),re(e,t,n,r,23,4),n+4}function P(e,t,n,r,i){return t=+t,n>>>=0,i||L(e,0,n,8),re(e,t,n,r,52,8),n+8}t.Buffer=i,t.SlowBuffer=function(e){return+e!=e&&(e=0),i.alloc(+e)},t.INSPECT_MAX_BYTES=50,t.kMaxLength=2147483647,(i.TYPED_ARRAY_SUPPORT=function(){try{var e=new Uint8Array(1),t={foo:function(){return 42}};return Object.setPrototypeOf(t,Uint8Array.prototype),Object.setPrototypeOf(e,t),42===e.foo()}catch(e){return!1}}())||"undefined"==typeof console||"function"!=typeof console.error||console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support."),Object.defineProperty(i.prototype,"parent",{enumerable:!0,get:function(){if(i.isBuffer(this))return this.buffer}}),Object.defineProperty(i.prototype,"offset",{enumerable:!0,get:function(){if(i.isBuffer(this))return this.byteOffset}}),"undefined"!=typeof Symbol&&null!=Symbol.species&&i[Symbol.species]===i&&Object.defineProperty(i,Symbol.species,{value:null,configurable:!0,enumerable:!1,writable:!1}),i.poolSize=8192,i.from=function(e,t,n){return a(e,t,n)},Object.setPrototypeOf(i.prototype,Uint8Array.prototype),Object.setPrototypeOf(i,Uint8Array),i.alloc=function(e,t,n){return function(e,t,n){return s(e),e<=0?r(e):void 0!==t?"string"==typeof n?r(e).fill(t,n):r(e).fill(t):r(e)}(e,t,n)},i.allocUnsafe=function(e){return o(e)},i.allocUnsafeSlow=function(e){return o(e)},i.isBuffer=function(e){return null!=e&&!0===e._isBuffer&&e!==i.prototype},i.compare=function(e,t){if($(e,Uint8Array)&&(e=i.from(e,e.offset,e.byteLength)),$(t,Uint8Array)&&(t=i.from(t,t.offset,t.byteLength)),!i.isBuffer(e)||!i.isBuffer(t))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(e===t)return 0;for(var n=e.length,r=t.length,a=0,s=Math.min(n,r);a<s;++a)if(e[a]!==t[a]){n=e[a],r=t[a];break}return n<r?-1:r<n?1:0},i.isEncoding=function(e){switch(String(e).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},i.concat=function(e,t){if(!Array.isArray(e))throw new TypeError('"list" argument must be an Array of Buffers');if(0===e.length)return i.alloc(0);var n;if(void 0===t)for(t=0,n=0;n<e.length;++n)t+=e[n].length;var r=i.allocUnsafe(t),a=0;for(n=0;n<e.length;++n){var s=e[n];if($(s,Uint8Array)&&(s=i.from(s)),!i.isBuffer(s))throw new TypeError('"list" argument must be an Array of Buffers');s.copy(r,a),a+=s.length}return r},i.byteLength=d,i.prototype._isBuffer=!0,i.prototype.swap16=function(){var e=this.length;if(e%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var t=0;t<e;t+=2)c(this,t,t+1);return this},i.prototype.swap32=function(){var e=this.length;if(e%4!=0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var t=0;t<e;t+=4)c(this,t,t+3),c(this,t+1,t+2);return this},i.prototype.swap64=function(){var e=this.length;if(e%8!=0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var t=0;t<e;t+=8)c(this,t,t+7),c(this,t+1,t+6),c(this,t+2,t+5),c(this,t+3,t+4);return this},i.prototype.toLocaleString=i.prototype.toString=function(){var e=this.length;return 0===e?"":0===arguments.length?S(this,0,e):y.apply(this,arguments)},i.prototype.equals=function(e){if(!i.isBuffer(e))throw new TypeError("Argument must be a Buffer");return this===e||0===i.compare(this,e)},i.prototype.inspect=function(){var e="",n=t.INSPECT_MAX_BYTES;return e=this.toString("hex",0,n).replace(/(.{2})/g,"$1 ").trim(),this.length>n&&(e+=" ... "),"<Buffer "+e+">"},n&&(i.prototype[n]=i.prototype.inspect),i.prototype.compare=function(e,t,n,r,a){if($(e,Uint8Array)&&(e=i.from(e,e.offset,e.byteLength)),!i.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===r&&(r=0),void 0===a&&(a=this.length),t<0||n>e.length||r<0||a>this.length)throw new RangeError("out of range index");if(r>=a&&t>=n)return 0;if(r>=a)return-1;if(t>=n)return 1;if(this===e)return 0;for(var s=(a>>>=0)-(r>>>=0),o=(n>>>=0)-(t>>>=0),f=Math.min(s,o),l=this.slice(r,a),p=e.slice(t,n),d=0;d<f;++d)if(l[d]!==p[d]){s=l[d],o=p[d];break}return s<o?-1:o<s?1:0},i.prototype.includes=function(e,t,n){return-1!==this.indexOf(e,t,n)},i.prototype.indexOf=function(e,t,n){return u(this,e,t,n,!0)},i.prototype.lastIndexOf=function(e,t,n){return u(this,e,t,n,!1)},i.prototype.write=function(e,t,n,r){if(void 0===t)r="utf8",n=this.length,t=0;else if(void 0===n&&"string"==typeof t)r=t,n=this.length,t=0;else{if(!isFinite(t))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");t>>>=0,isFinite(n)?(n>>>=0,void 0===r&&(r="utf8")):(r=n,n=void 0)}var i=this.length-t;if((void 0===n||n>i)&&(n=i),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var a=!1;;)switch(r){case"hex":return b(this,e,t,n);case"utf8":case"utf-8":return g(this,e,t,n);case"ascii":return h(this,e,t,n);case"latin1":case"binary":return v(this,e,t,n);case"base64":return T(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return _(this,e,t,n);default:if(a)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),a=!0}},i.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}},i.prototype.slice=function(e,t){var n=this.length;(e=~~e)<0?(e+=n)<0&&(e=0):e>n&&(e=n),(t=void 0===t?n:~~t)<0?(t+=n)<0&&(t=0):t>n&&(t=n),t<e&&(t=e);var r=this.subarray(e,t);return Object.setPrototypeOf(r,i.prototype),r},i.prototype.readUIntLE=function(e,t,n){e>>>=0,t>>>=0,n||V(e,t,this.length);for(var r=this[e],i=1,a=0;++a<t&&(i*=256);)r+=this[e+a]*i;return r},i.prototype.readUIntBE=function(e,t,n){e>>>=0,t>>>=0,n||V(e,t,this.length);for(var r=this[e+--t],i=1;t>0&&(i*=256);)r+=this[e+--t]*i;return r},i.prototype.readUInt8=function(e,t){return e>>>=0,t||V(e,1,this.length),this[e]},i.prototype.readUInt16LE=function(e,t){return e>>>=0,t||V(e,2,this.length),this[e]|this[e+1]<<8},i.prototype.readUInt16BE=function(e,t){return e>>>=0,t||V(e,2,this.length),this[e]<<8|this[e+1]},i.prototype.readUInt32LE=function(e,t){return e>>>=0,t||V(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},i.prototype.readUInt32BE=function(e,t){return e>>>=0,t||V(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},i.prototype.readIntLE=function(e,t,n){e>>>=0,t>>>=0,n||V(e,t,this.length);for(var r=this[e],i=1,a=0;++a<t&&(i*=256);)r+=this[e+a]*i;return r>=(i*=128)&&(r-=Math.pow(2,8*t)),r},i.prototype.readIntBE=function(e,t,n){e>>>=0,t>>>=0,n||V(e,t,this.length);for(var r=t,i=1,a=this[e+--r];r>0&&(i*=256);)a+=this[e+--r]*i;return a>=(i*=128)&&(a-=Math.pow(2,8*t)),a},i.prototype.readInt8=function(e,t){return e>>>=0,t||V(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},i.prototype.readInt16LE=function(e,t){e>>>=0,t||V(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},i.prototype.readInt16BE=function(e,t){e>>>=0,t||V(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},i.prototype.readInt32LE=function(e,t){return e>>>=0,t||V(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},i.prototype.readInt32BE=function(e,t){return e>>>=0,t||V(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},i.prototype.readFloatLE=function(e,t){return e>>>=0,t||V(e,4,this.length),ne(this,e,!0,23,4)},i.prototype.readFloatBE=function(e,t){return e>>>=0,t||V(e,4,this.length),ne(this,e,!1,23,4)},i.prototype.readDoubleLE=function(e,t){return e>>>=0,t||V(e,8,this.length),ne(this,e,!0,52,8)},i.prototype.readDoubleBE=function(e,t){return e>>>=0,t||V(e,8,this.length),ne(this,e,!1,52,8)},i.prototype.writeUIntLE=function(e,t,n,r){e=+e,t>>>=0,n>>>=0,r||x(this,e,t,n,Math.pow(2,8*n)-1,0);var i=1,a=0;for(this[t]=255&e;++a<n&&(i*=256);)this[t+a]=e/i&255;return t+n},i.prototype.writeUIntBE=function(e,t,n,r){e=+e,t>>>=0,n>>>=0,r||x(this,e,t,n,Math.pow(2,8*n)-1,0);var i=n-1,a=1;for(this[t+i]=255&e;--i>=0&&(a*=256);)this[t+i]=e/a&255;return t+n},i.prototype.writeUInt8=function(e,t,n){return e=+e,t>>>=0,n||x(this,e,t,1,255,0),this[t]=255&e,t+1},i.prototype.writeUInt16LE=function(e,t,n){return e=+e,t>>>=0,n||x(this,e,t,2,65535,0),this[t]=255&e,this[t+1]=e>>>8,t+2},i.prototype.writeUInt16BE=function(e,t,n){return e=+e,t>>>=0,n||x(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=255&e,t+2},i.prototype.writeUInt32LE=function(e,t,n){return e=+e,t>>>=0,n||x(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e,t+4},i.prototype.writeUInt32BE=function(e,t,n){return e=+e,t>>>=0,n||x(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},i.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t>>>=0,!r){var i=Math.pow(2,8*n-1);x(this,e,t,n,i-1,-i)}var a=0,s=1,o=0;for(this[t]=255&e;++a<n&&(s*=256);)e<0&&0===o&&0!==this[t+a-1]&&(o=1),this[t+a]=(e/s>>0)-o&255;return t+n},i.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t>>>=0,!r){var i=Math.pow(2,8*n-1);x(this,e,t,n,i-1,-i)}var a=n-1,s=1,o=0;for(this[t+a]=255&e;--a>=0&&(s*=256);)e<0&&0===o&&0!==this[t+a+1]&&(o=1),this[t+a]=(e/s>>0)-o&255;return t+n},i.prototype.writeInt8=function(e,t,n){return e=+e,t>>>=0,n||x(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=255&e,t+1},i.prototype.writeInt16LE=function(e,t,n){return e=+e,t>>>=0,n||x(this,e,t,2,32767,-32768),this[t]=255&e,this[t+1]=e>>>8,t+2},i.prototype.writeInt16BE=function(e,t,n){return e=+e,t>>>=0,n||x(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=255&e,t+2},i.prototype.writeInt32LE=function(e,t,n){return e=+e,t>>>=0,n||x(this,e,t,4,2147483647,-2147483648),this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4},i.prototype.writeInt32BE=function(e,t,n){return e=+e,t>>>=0,n||x(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},i.prototype.writeFloatLE=function(e,t,n){return R(this,e,t,!0,n)},i.prototype.writeFloatBE=function(e,t,n){return R(this,e,t,!1,n)},i.prototype.writeDoubleLE=function(e,t,n){return P(this,e,t,!0,n)},i.prototype.writeDoubleBE=function(e,t,n){return P(this,e,t,!1,n)},i.prototype.copy=function(e,t,n,r){if(!i.isBuffer(e))throw new TypeError("argument should be a Buffer");if(n||(n=0),r||0===r||(r=this.length),t>=e.length&&(t=e.length),t||(t=0),r>0&&r<n&&(r=n),r===n)return 0;if(0===e.length||0===this.length)return 0;if(t<0)throw new RangeError("targetStart out of bounds");if(n<0||n>=this.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),e.length-t<r-n&&(r=e.length-t+n);var a=r-n;if(this===e&&"function"==typeof Uint8Array.prototype.copyWithin)this.copyWithin(t,n,r);else if(this===e&&n<t&&t<r)for(var s=a-1;s>=0;--s)e[s+t]=this[s+n];else Uint8Array.prototype.set.call(e,this.subarray(n,r),t);return a},i.prototype.fill=function(e,t,n,r){if("string"==typeof e){if("string"==typeof t?(r=t,t=0,n=this.length):"string"==typeof n&&(r=n,n=this.length),void 0!==r&&"string"!=typeof r)throw new TypeError("encoding must be a string");if("string"==typeof r&&!i.isEncoding(r))throw new TypeError("Unknown encoding: "+r);if(1===e.length){var a=e.charCodeAt(0);("utf8"===r&&a<128||"latin1"===r)&&(e=a)}}else"number"==typeof e?e&=255:"boolean"==typeof e&&(e=Number(e));if(t<0||this.length<t||this.length<n)throw new RangeError("Out of range index");if(n<=t)return this;var s;if(t>>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"==typeof e)for(s=t;s<n;++s)this[s]=e;else{var o=i.isBuffer(e)?e:i.from(e,r),f=o.length;if(0===f)throw new TypeError('The value "'+e+'" is invalid for argument "value"');for(s=0;s<n-t;++s)this[s+t]=o[s%f]}return this};var A=/[^+/0-9A-Za-z-_]/g;function k(e,t){var n;t=t||1/0;for(var r=e.length,i=null,a=[],s=0;s<r;++s){if((n=e.charCodeAt(s))>55295&&n<57344){if(!i){if(n>56319){(t-=3)>-1&&a.push(239,191,189);continue}if(s+1===r){(t-=3)>-1&&a.push(239,191,189);continue}i=n;continue}if(n<56320){(t-=3)>-1&&a.push(239,191,189),i=n;continue}n=65536+(i-55296<<10|n-56320)}else i&&(t-=3)>-1&&a.push(239,191,189);if(i=null,n<128){if((t-=1)<0)break;a.push(n)}else if(n<2048){if((t-=2)<0)break;a.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;a.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;a.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return a}function C(e){return ee(function(e){if((e=(e=e.split("=")[0]).trim().replace(A,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function M(e,t,n,r){for(var i=0;i<r&&!(i+n>=t.length||i>=e.length);++i)t[i+n]=e[i];return i}function $(e,t){return e instanceof t||null!=e&&null!=e.constructor&&null!=e.constructor.name&&e.constructor.name===t.name}function B(e){return e!=e}var U=function(){for(var e=new Array(256),t=0;t<16;++t)for(var n=16*t,r=0;r<16;++r)e[n+r]="0123456789abcdef"[t]+"0123456789abcdef"[r];return e}()}),ae=m(function(e,t){var n=ie.Buffer;function r(e,t){for(var n in e)t[n]=e[n]}function i(e,t,r){return n(e,t,r)}n.from&&n.alloc&&n.allocUnsafe&&n.allocUnsafeSlow?e.exports=ie:(r(ie,t),t.Buffer=i),i.prototype=Object.create(n.prototype),r(n,i),i.from=function(e,t,r){if("number"==typeof e)throw new TypeError("Argument must not be a number");return n(e,t,r)},i.alloc=function(e,t,r){if("number"!=typeof e)throw new TypeError("Argument must be a number");var i=n(e);return void 0!==t?"string"==typeof r?i.fill(t,r):i.fill(t):i.fill(0),i},i.allocUnsafe=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return n(e)},i.allocUnsafeSlow=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return ie.SlowBuffer(e)}}),se=ae.Buffer,oe=function(e){if(e.length>=255)throw new TypeError("Alphabet too long");for(var t=new Uint8Array(256),n=0;n<t.length;n++)t[n]=255;for(var r=0;r<e.length;r++){var i=e.charAt(r),a=i.charCodeAt(0);if(255!==t[a])throw new TypeError(i+" is ambiguous");t[a]=r}var s=e.length,o=e.charAt(0),f=Math.log(s)/Math.log(256),l=Math.log(256)/Math.log(s);function p(e){if("string"!=typeof e)throw new TypeError("Expected String");if(0===e.length)return se.alloc(0);var n=0;if(" "!==e[n]){for(var r=0,i=0;e[n]===o;)r++,n++;for(var a=(e.length-n)*f+1>>>0,l=new Uint8Array(a);e[n];){var p=t[e.charCodeAt(n)];if(255===p)return;for(var d=0,y=a-1;(0!==p||d<i)&&-1!==y;y--,d++)l[y]=(p+=s*l[y]>>>0)%256>>>0,p=p/256>>>0;if(0!==p)throw new Error("Non-zero carry");i=d,n++}if(" "!==e[n]){for(var c=a-i;c!==a&&0===l[c];)c++;var u=se.allocUnsafe(r+(a-c));u.fill(0,0,r);for(var m=r;c!==a;)u[m++]=l[c++];return u}}}return{encode:function(t){if((Array.isArray(t)||t instanceof Uint8Array)&&(t=se.from(t)),!se.isBuffer(t))throw new TypeError("Expected Buffer");if(0===t.length)return"";for(var n=0,r=0,i=0,a=t.length;i!==a&&0===t[i];)i++,n++;for(var f=(a-i)*l+1>>>0,p=new Uint8Array(f);i!==a;){for(var d=t[i],y=0,c=f-1;(0!==d||y<r)&&-1!==c;c--,y++)p[c]=(d+=256*p[c]>>>0)%s>>>0,d=d/s>>>0;if(0!==d)throw new Error("Non-zero carry");r=y,i++}for(var u=f-r;u!==f&&0===p[u];)u++;for(var m=o.repeat(n);u<f;++u)m+=e.charAt(p[u]);return m},decodeUnsafe:p,decode:function(e){var t=p(e);if(t)return t;throw new Error("Non-base"+s+" character")}}},fe=oe("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"),le=m(function(e,t){var n="function"==typeof Symbol&&"function"==typeof Symbol.for?Symbol.for("nodejs.util.inspect.custom"):null;function r(e){if(e>2147483647)throw new RangeError('The value "'+e+'" is invalid for option "size"');var t=new Uint8Array(e);return Object.setPrototypeOf(t,i.prototype),t}function i(e,t,n){if("number"==typeof e){if("string"==typeof t)throw new TypeError('The "string" argument must be of type string. Received type number');return o(e)}return a(e,t,n)}function a(e,t,n){if("string"==typeof e)return function(e,t){if("string"==typeof t&&""!==t||(t="utf8"),!i.isEncoding(t))throw new TypeError("Unknown encoding: "+t);var n=0|d(e,t),a=r(n),s=a.write(e,t);return s!==n&&(a=a.slice(0,s)),a}(e,t);if(ArrayBuffer.isView(e))return f(e);if(null==e)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if($(e,ArrayBuffer)||e&&$(e.buffer,ArrayBuffer))return l(e,t,n);if("undefined"!=typeof SharedArrayBuffer&&($(e,SharedArrayBuffer)||e&&$(e.buffer,SharedArrayBuffer)))return l(e,t,n);if("number"==typeof e)throw new TypeError('The "value" argument must not be of type number. Received type number');var a=e.valueOf&&e.valueOf();if(null!=a&&a!==e)return i.from(a,t,n);var s=function(e){if(i.isBuffer(e)){var t=0|p(e.length),n=r(t);return 0===n.length||e.copy(n,0,0,t),n}return void 0!==e.length?"number"!=typeof e.length||B(e.length)?r(0):f(e):"Buffer"===e.type&&Array.isArray(e.data)?f(e.data):void 0}(e);if(s)return s;if("undefined"!=typeof Symbol&&null!=Symbol.toPrimitive&&"function"==typeof e[Symbol.toPrimitive])return i.from(e[Symbol.toPrimitive]("string"),t,n);throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e)}function s(e){if("number"!=typeof e)throw new TypeError('"size" argument must be of type number');if(e<0)throw new RangeError('The value "'+e+'" is invalid for option "size"')}function o(e){return s(e),r(e<0?0:0|p(e))}function f(e){for(var t=e.length<0?0:0|p(e.length),n=r(t),i=0;i<t;i+=1)n[i]=255&e[i];return n}function l(e,t,n){if(t<0||e.byteLength<t)throw new RangeError('"offset" is outside of buffer bounds');if(e.byteLength<t+(n||0))throw new RangeError('"length" is outside of buffer bounds');var r;return r=void 0===t&&void 0===n?new Uint8Array(e):void 0===n?new Uint8Array(e,t):new Uint8Array(e,t,n),Object.setPrototypeOf(r,i.prototype),r}function p(e){if(e>=2147483647)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+2147483647..toString(16)+" bytes");return 0|e}function d(e,t){if(i.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||$(e,ArrayBuffer))return e.byteLength;if("string"!=typeof e)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);var n=e.length,r=arguments.length>2&&!0===arguments[2];if(!r&&0===n)return 0;for(var a=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":return k(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return C(e).length;default:if(a)return r?-1:k(e).length;t=(""+t).toLowerCase(),a=!0}}function y(e,t,n){var r=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return E(this,t,n);case"utf8":case"utf-8":return S(this,t,n);case"ascii":return I(this,t,n);case"latin1":case"binary":return w(this,t,n);case"base64":return D(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return N(this,t,n);default:if(r)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}}function c(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function u(e,t,n,r,a){if(0===e.length)return-1;if("string"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),B(n=+n)&&(n=a?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(a)return-1;n=e.length-1}else if(n<0){if(!a)return-1;n=0}if("string"==typeof t&&(t=i.from(t,r)),i.isBuffer(t))return 0===t.length?-1:m(e,t,n,r,a);if("number"==typeof t)return t&=255,"function"==typeof Uint8Array.prototype.indexOf?a?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):m(e,[t],n,r,a);throw new TypeError("val must be string, number or Buffer")}function m(e,t,n,r,i){var a,s=1,o=e.length,f=t.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(e.length<2||t.length<2)return-1;s=2,o/=2,f/=2,n/=2}function l(e,t){return 1===s?e[t]:e.readUInt16BE(t*s)}if(i){var p=-1;for(a=n;a<o;a++)if(l(e,a)===l(t,-1===p?0:a-p)){if(-1===p&&(p=a),a-p+1===f)return p*s}else-1!==p&&(a-=a-p),p=-1}else for(n+f>o&&(n=o-f),a=n;a>=0;a--){for(var d=!0,y=0;y<f;y++)if(l(e,a+y)!==l(t,y)){d=!1;break}if(d)return a}return-1}function b(e,t,n,r){n=Number(n)||0;var i=e.length-n;r?(r=Number(r))>i&&(r=i):r=i;var a=t.length;r>a/2&&(r=a/2);for(var s=0;s<r;++s){var o=parseInt(t.substr(2*s,2),16);if(B(o))return s;e[n+s]=o}return s}function g(e,t,n,r){return M(k(t,e.length-n),e,n,r)}function h(e,t,n,r){return M(function(e){for(var t=[],n=0;n<e.length;++n)t.push(255&e.charCodeAt(n));return t}(t),e,n,r)}function v(e,t,n,r){return h(e,t,n,r)}function T(e,t,n,r){return M(C(t),e,n,r)}function _(e,t,n,r){return M(function(e,t){for(var n,r,i=[],a=0;a<e.length&&!((t-=2)<0);++a)r=(n=e.charCodeAt(a))>>8,i.push(n%256),i.push(r);return i}(t,e.length-n),e,n,r)}function D(e,t,n){return te(0===t&&n===e.length?e:e.slice(t,n))}function S(e,t,n){n=Math.min(e.length,n);for(var r=[],i=t;i<n;){var a,s,o,f,l=e[i],p=null,d=l>239?4:l>223?3:l>191?2:1;if(i+d<=n)switch(d){case 1:l<128&&(p=l);break;case 2:128==(192&(a=e[i+1]))&&(f=(31&l)<<6|63&a)>127&&(p=f);break;case 3:s=e[i+2],128==(192&(a=e[i+1]))&&128==(192&s)&&(f=(15&l)<<12|(63&a)<<6|63&s)>2047&&(f<55296||f>57343)&&(p=f);break;case 4:s=e[i+2],o=e[i+3],128==(192&(a=e[i+1]))&&128==(192&s)&&128==(192&o)&&(f=(15&l)<<18|(63&a)<<12|(63&s)<<6|63&o)>65535&&f<1114112&&(p=f)}null===p?(p=65533,d=1):p>65535&&(r.push((p-=65536)>>>10&1023|55296),p=56320|1023&p),r.push(p),i+=d}return function(e){var t=e.length;if(t<=4096)return String.fromCharCode.apply(String,e);for(var n="",r=0;r<t;)n+=String.fromCharCode.apply(String,e.slice(r,r+=4096));return n}(r)}function I(e,t,n){var r="";n=Math.min(e.length,n);for(var i=t;i<n;++i)r+=String.fromCharCode(127&e[i]);return r}function w(e,t,n){var r="";n=Math.min(e.length,n);for(var i=t;i<n;++i)r+=String.fromCharCode(e[i]);return r}function E(e,t,n){var r=e.length;(!t||t<0)&&(t=0),(!n||n<0||n>r)&&(n=r);for(var i="",a=t;a<n;++a)i+=U[e[a]];return i}function N(e,t,n){for(var r=e.slice(t,n),i="",a=0;a<r.length;a+=2)i+=String.fromCharCode(r[a]+256*r[a+1]);return i}function V(e,t,n){if(e%1!=0||e<0)throw new RangeError("offset is not uint");if(e+t>n)throw new RangeError("Trying to access beyond buffer length")}function x(e,t,n,r,a,s){if(!i.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>a||t<s)throw new RangeError('"value" argument is out of bounds');if(n+r>e.length)throw new RangeError("Index out of range")}function L(e,t,n,r,i,a){if(n+r>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function R(e,t,n,r,i){return t=+t,n>>>=0,i||L(e,0,n,4),re(e,t,n,r,23,4),n+4}function P(e,t,n,r,i){return t=+t,n>>>=0,i||L(e,0,n,8),re(e,t,n,r,52,8),n+8}t.Buffer=i,t.SlowBuffer=function(e){return+e!=e&&(e=0),i.alloc(+e)},t.INSPECT_MAX_BYTES=50,t.kMaxLength=2147483647,(i.TYPED_ARRAY_SUPPORT=function(){try{var e=new Uint8Array(1),t={foo:function(){return 42}};return Object.setPrototypeOf(t,Uint8Array.prototype),Object.setPrototypeOf(e,t),42===e.foo()}catch(e){return!1}}())||"undefined"==typeof console||"function"!=typeof console.error||console.error("This browser lacks typed array (Uint8Array) support which is required by `buffer` v5.x. Use `buffer` v4.x if you require old browser support."),Object.defineProperty(i.prototype,"parent",{enumerable:!0,get:function(){if(i.isBuffer(this))return this.buffer}}),Object.defineProperty(i.prototype,"offset",{enumerable:!0,get:function(){if(i.isBuffer(this))return this.byteOffset}}),i.poolSize=8192,i.from=function(e,t,n){return a(e,t,n)},Object.setPrototypeOf(i.prototype,Uint8Array.prototype),Object.setPrototypeOf(i,Uint8Array),i.alloc=function(e,t,n){return function(e,t,n){return s(e),e<=0?r(e):void 0!==t?"string"==typeof n?r(e).fill(t,n):r(e).fill(t):r(e)}(e,t,n)},i.allocUnsafe=function(e){return o(e)},i.allocUnsafeSlow=function(e){return o(e)},i.isBuffer=function(e){return null!=e&&!0===e._isBuffer&&e!==i.prototype},i.compare=function(e,t){if($(e,Uint8Array)&&(e=i.from(e,e.offset,e.byteLength)),$(t,Uint8Array)&&(t=i.from(t,t.offset,t.byteLength)),!i.isBuffer(e)||!i.isBuffer(t))throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array');if(e===t)return 0;for(var n=e.length,r=t.length,a=0,s=Math.min(n,r);a<s;++a)if(e[a]!==t[a]){n=e[a],r=t[a];break}return n<r?-1:r<n?1:0},i.isEncoding=function(e){switch(String(e).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},i.concat=function(e,t){if(!Array.isArray(e))throw new TypeError('"list" argument must be an Array of Buffers');if(0===e.length)return i.alloc(0);var n;if(void 0===t)for(t=0,n=0;n<e.length;++n)t+=e[n].length;var r=i.allocUnsafe(t),a=0;for(n=0;n<e.length;++n){var s=e[n];if($(s,Uint8Array)&&(s=i.from(s)),!i.isBuffer(s))throw new TypeError('"list" argument must be an Array of Buffers');s.copy(r,a),a+=s.length}return r},i.byteLength=d,i.prototype._isBuffer=!0,i.prototype.swap16=function(){var e=this.length;if(e%2!=0)throw new RangeError("Buffer size must be a multiple of 16-bits");for(var t=0;t<e;t+=2)c(this,t,t+1);return this},i.prototype.swap32=function(){var e=this.length;if(e%4!=0)throw new RangeError("Buffer size must be a multiple of 32-bits");for(var t=0;t<e;t+=4)c(this,t,t+3),c(this,t+1,t+2);return this},i.prototype.swap64=function(){var e=this.length;if(e%8!=0)throw new RangeError("Buffer size must be a multiple of 64-bits");for(var t=0;t<e;t+=8)c(this,t,t+7),c(this,t+1,t+6),c(this,t+2,t+5),c(this,t+3,t+4);return this},i.prototype.toLocaleString=i.prototype.toString=function(){var e=this.length;return 0===e?"":0===arguments.length?S(this,0,e):y.apply(this,arguments)},i.prototype.equals=function(e){if(!i.isBuffer(e))throw new TypeError("Argument must be a Buffer");return this===e||0===i.compare(this,e)},i.prototype.inspect=function(){var e="",n=t.INSPECT_MAX_BYTES;return e=this.toString("hex",0,n).replace(/(.{2})/g,"$1 ").trim(),this.length>n&&(e+=" ... "),"<Buffer "+e+">"},n&&(i.prototype[n]=i.prototype.inspect),i.prototype.compare=function(e,t,n,r,a){if($(e,Uint8Array)&&(e=i.from(e,e.offset,e.byteLength)),!i.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===r&&(r=0),void 0===a&&(a=this.length),t<0||n>e.length||r<0||a>this.length)throw new RangeError("out of range index");if(r>=a&&t>=n)return 0;if(r>=a)return-1;if(t>=n)return 1;if(this===e)return 0;for(var s=(a>>>=0)-(r>>>=0),o=(n>>>=0)-(t>>>=0),f=Math.min(s,o),l=this.slice(r,a),p=e.slice(t,n),d=0;d<f;++d)if(l[d]!==p[d]){s=l[d],o=p[d];break}return s<o?-1:o<s?1:0},i.prototype.includes=function(e,t,n){return-1!==this.indexOf(e,t,n)},i.prototype.indexOf=function(e,t,n){return u(this,e,t,n,!0)},i.prototype.lastIndexOf=function(e,t,n){return u(this,e,t,n,!1)},i.prototype.write=function(e,t,n,r){if(void 0===t)r="utf8",n=this.length,t=0;else if(void 0===n&&"string"==typeof t)r=t,n=this.length,t=0;else{if(!isFinite(t))throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported");t>>>=0,isFinite(n)?(n>>>=0,void 0===r&&(r="utf8")):(r=n,n=void 0)}var i=this.length-t;if((void 0===n||n>i)&&(n=i),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var a=!1;;)switch(r){case"hex":return b(this,e,t,n);case"utf8":case"utf-8":return g(this,e,t,n);case"ascii":return h(this,e,t,n);case"latin1":case"binary":return v(this,e,t,n);case"base64":return T(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return _(this,e,t,n);default:if(a)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),a=!0}},i.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}},i.prototype.slice=function(e,t){var n=this.length;(e=~~e)<0?(e+=n)<0&&(e=0):e>n&&(e=n),(t=void 0===t?n:~~t)<0?(t+=n)<0&&(t=0):t>n&&(t=n),t<e&&(t=e);var r=this.subarray(e,t);return Object.setPrototypeOf(r,i.prototype),r},i.prototype.readUIntLE=function(e,t,n){e>>>=0,t>>>=0,n||V(e,t,this.length);for(var r=this[e],i=1,a=0;++a<t&&(i*=256);)r+=this[e+a]*i;return r},i.prototype.readUIntBE=function(e,t,n){e>>>=0,t>>>=0,n||V(e,t,this.length);for(var r=this[e+--t],i=1;t>0&&(i*=256);)r+=this[e+--t]*i;return r},i.prototype.readUInt8=function(e,t){return e>>>=0,t||V(e,1,this.length),this[e]},i.prototype.readUInt16LE=function(e,t){return e>>>=0,t||V(e,2,this.length),this[e]|this[e+1]<<8},i.prototype.readUInt16BE=function(e,t){return e>>>=0,t||V(e,2,this.length),this[e]<<8|this[e+1]},i.prototype.readUInt32LE=function(e,t){return e>>>=0,t||V(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},i.prototype.readUInt32BE=function(e,t){return e>>>=0,t||V(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},i.prototype.readIntLE=function(e,t,n){e>>>=0,t>>>=0,n||V(e,t,this.length);for(var r=this[e],i=1,a=0;++a<t&&(i*=256);)r+=this[e+a]*i;return r>=(i*=128)&&(r-=Math.pow(2,8*t)),r},i.prototype.readIntBE=function(e,t,n){e>>>=0,t>>>=0,n||V(e,t,this.length);for(var r=t,i=1,a=this[e+--r];r>0&&(i*=256);)a+=this[e+--r]*i;return a>=(i*=128)&&(a-=Math.pow(2,8*t)),a},i.prototype.readInt8=function(e,t){return e>>>=0,t||V(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},i.prototype.readInt16LE=function(e,t){e>>>=0,t||V(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},i.prototype.readInt16BE=function(e,t){e>>>=0,t||V(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},i.prototype.readInt32LE=function(e,t){return e>>>=0,t||V(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},i.prototype.readInt32BE=function(e,t){return e>>>=0,t||V(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},i.prototype.readFloatLE=function(e,t){return e>>>=0,t||V(e,4,this.length),ne(this,e,!0,23,4)},i.prototype.readFloatBE=function(e,t){return e>>>=0,t||V(e,4,this.length),ne(this,e,!1,23,4)},i.prototype.readDoubleLE=function(e,t){return e>>>=0,t||V(e,8,this.length),ne(this,e,!0,52,8)},i.prototype.readDoubleBE=function(e,t){return e>>>=0,t||V(e,8,this.length),ne(this,e,!1,52,8)},i.prototype.writeUIntLE=function(e,t,n,r){e=+e,t>>>=0,n>>>=0,r||x(this,e,t,n,Math.pow(2,8*n)-1,0);var i=1,a=0;for(this[t]=255&e;++a<n&&(i*=256);)this[t+a]=e/i&255;return t+n},i.prototype.writeUIntBE=function(e,t,n,r){e=+e,t>>>=0,n>>>=0,r||x(this,e,t,n,Math.pow(2,8*n)-1,0);var i=n-1,a=1;for(this[t+i]=255&e;--i>=0&&(a*=256);)this[t+i]=e/a&255;return t+n},i.prototype.writeUInt8=function(e,t,n){return e=+e,t>>>=0,n||x(this,e,t,1,255,0),this[t]=255&e,t+1},i.prototype.writeUInt16LE=function(e,t,n){return e=+e,t>>>=0,n||x(this,e,t,2,65535,0),this[t]=255&e,this[t+1]=e>>>8,t+2},i.prototype.writeUInt16BE=function(e,t,n){return e=+e,t>>>=0,n||x(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=255&e,t+2},i.prototype.writeUInt32LE=function(e,t,n){return e=+e,t>>>=0,n||x(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e,t+4},i.prototype.writeUInt32BE=function(e,t,n){return e=+e,t>>>=0,n||x(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},i.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t>>>=0,!r){var i=Math.pow(2,8*n-1);x(this,e,t,n,i-1,-i)}var a=0,s=1,o=0;for(this[t]=255&e;++a<n&&(s*=256);)e<0&&0===o&&0!==this[t+a-1]&&(o=1),this[t+a]=(e/s>>0)-o&255;return t+n},i.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t>>>=0,!r){var i=Math.pow(2,8*n-1);x(this,e,t,n,i-1,-i)}var a=n-1,s=1,o=0;for(this[t+a]=255&e;--a>=0&&(s*=256);)e<0&&0===o&&0!==this[t+a+1]&&(o=1),this[t+a]=(e/s>>0)-o&255;return t+n},i.prototype.writeInt8=function(e,t,n){return e=+e,t>>>=0,n||x(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=255&e,t+1},i.prototype.writeInt16LE=function(e,t,n){return e=+e,t>>>=0,n||x(this,e,t,2,32767,-32768),this[t]=255&e,this[t+1]=e>>>8,t+2},i.prototype.writeInt16BE=function(e,t,n){return e=+e,t>>>=0,n||x(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=255&e,t+2},i.prototype.writeInt32LE=function(e,t,n){return e=+e,t>>>=0,n||x(this,e,t,4,2147483647,-2147483648),this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4},i.prototype.writeInt32BE=function(e,t,n){return e=+e,t>>>=0,n||x(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},i.prototype.writeFloatLE=function(e,t,n){return R(this,e,t,!0,n)},i.prototype.writeFloatBE=function(e,t,n){return R(this,e,t,!1,n)},i.prototype.writeDoubleLE=function(e,t,n){return P(this,e,t,!0,n)},i.prototype.writeDoubleBE=function(e,t,n){return P(this,e,t,!1,n)},i.prototype.copy=function(e,t,n,r){if(!i.isBuffer(e))throw new TypeError("argument should be a Buffer");if(n||(n=0),r||0===r||(r=this.length),t>=e.length&&(t=e.length),t||(t=0),r>0&&r<n&&(r=n),r===n)return 0;if(0===e.length||0===this.length)return 0;if(t<0)throw new RangeError("targetStart out of bounds");if(n<0||n>=this.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),e.length-t<r-n&&(r=e.length-t+n);var a=r-n;if(this===e&&"function"==typeof Uint8Array.prototype.copyWithin)this.copyWithin(t,n,r);else if(this===e&&n<t&&t<r)for(var s=a-1;s>=0;--s)e[s+t]=this[s+n];else Uint8Array.prototype.set.call(e,this.subarray(n,r),t);return a},i.prototype.fill=function(e,t,n,r){if("string"==typeof e){if("string"==typeof t?(r=t,t=0,n=this.length):"string"==typeof n&&(r=n,n=this.length),void 0!==r&&"string"!=typeof r)throw new TypeError("encoding must be a string");if("string"==typeof r&&!i.isEncoding(r))throw new TypeError("Unknown encoding: "+r);if(1===e.length){var a=e.charCodeAt(0);("utf8"===r&&a<128||"latin1"===r)&&(e=a)}}else"number"==typeof e?e&=255:"boolean"==typeof e&&(e=Number(e));if(t<0||this.length<t||this.length<n)throw new RangeError("Out of range index");if(n<=t)return this;var s;if(t>>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"==typeof e)for(s=t;s<n;++s)this[s]=e;else{var o=i.isBuffer(e)?e:i.from(e,r),f=o.length;if(0===f)throw new TypeError('The value "'+e+'" is invalid for argument "value"');for(s=0;s<n-t;++s)this[s+t]=o[s%f]}return this};var A=/[^+/0-9A-Za-z-_]/g;function k(e,t){var n;t=t||1/0;for(var r=e.length,i=null,a=[],s=0;s<r;++s){if((n=e.charCodeAt(s))>55295&&n<57344){if(!i){if(n>56319){(t-=3)>-1&&a.push(239,191,189);continue}if(s+1===r){(t-=3)>-1&&a.push(239,191,189);continue}i=n;continue}if(n<56320){(t-=3)>-1&&a.push(239,191,189),i=n;continue}n=65536+(i-55296<<10|n-56320)}else i&&(t-=3)>-1&&a.push(239,191,189);if(i=null,n<128){if((t-=1)<0)break;a.push(n)}else if(n<2048){if((t-=2)<0)break;a.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;a.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;a.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return a}function C(e){return ee(function(e){if((e=(e=e.split("=")[0]).trim().replace(A,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function M(e,t,n,r){for(var i=0;i<r&&!(i+n>=t.length||i>=e.length);++i)t[i+n]=e[i];return i}function $(e,t){return e instanceof t||null!=e&&null!=e.constructor&&null!=e.constructor.name&&e.constructor.name===t.name}function B(e){return e!=e}var U=function(){for(var e=new Array(256),t=0;t<16;++t)for(var n=16*t,r=0;r<16;++r)e[n+r]="0123456789abcdef"[t]+"0123456789abcdef"[r];return e}()}),pe=function(e,t){return function(n,r){var i=2*r,a=2*t;n[i]=e[a],n[i+1]=e[a+1]}},de=m(function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n,r=(n=pe)&&n.__esModule?n:{default:n};t.default=function(e){for(var t=e.A,n=e.C,i=0;i<25;i+=5){for(var a=0;a<5;a++)(0,r.default)(t,i+a)(n,a);for(var s=0;s<5;s++){var o=2*(i+s),f=(s+1)%5*2,l=(s+2)%5*2;t[o]^=~n[f]&n[l],t[o+1]^=~n[f+1]&n[l+1]}}}}),ye=m(function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=new Uint32Array([0,1,0,32898,2147483648,32906,2147483648,2147516416,0,32907,0,2147483649,2147483648,2147516545,2147483648,32777,0,138,0,136,0,2147516425,0,2147483658,0,2147516555,2147483648,139,2147483648,32905,2147483648,32771,2147483648,32770,2147483648,128,0,32778,2147483648,2147483658,2147483648,2147516545,2147483648,32896,0,2147483649,2147483648,2147516424]);t.default=n}),ce=m(function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n,r=(n=ye)&&n.__esModule?n:{default:n};t.default=function(e){var t=e.A,n=2*e.roundIndex;t[0]^=r.default[n],t[1]^=r.default[n+1]}}),ue=m(function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,t.default=[10,7,11,17,18,3,5,16,8,21,24,4,15,23,19,13,12,2,20,14,22,9,6,1]}),me=m(function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0,t.default=[1,3,6,10,15,21,28,36,45,55,2,14,27,41,56,8,25,43,62,18,39,61,20,44]}),be=m(function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=a(ue),r=a(me),i=a(pe);function a(e){return e&&e.__esModule?e:{default:e}}t.default=function(e){var t=e.A,a=e.C,s=e.W;(0,i.default)(t,1)(s,0);for(var o=0,f=0,l=0,p=32,d=0;d<24;d++){var y=n.default[d],c=r.default[d];(0,i.default)(t,y)(a,0),s[l=c<32?0:1]=(o=s[0])<<c|(f=s[1])>>>(p=32-c),s[(l+1)%2]=f<<c|o>>>p,(0,i.default)(s,0)(t,y),(0,i.default)(a,0)(s,0)}}}),ge=m(function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n,r=(n=pe)&&n.__esModule?n:{default:n};t.default=function(e){for(var t=e.A,n=e.C,i=e.D,a=e.W,s=0,o=0,f=0;f<5;f++){var l=2*f,p=2*(f+5),d=2*(f+10),y=2*(f+15),c=2*(f+20);n[l]=t[l]^t[p]^t[d]^t[y]^t[c],n[l+1]=t[l+1]^t[p+1]^t[d+1]^t[y+1]^t[c+1]}for(var u=0;u<5;u++){(0,r.default)(n,(u+1)%5)(a,0),a[0]=(s=a[0])<<1|(o=a[1])>>>31,a[1]=o<<1|s>>>31,i[2*u]=n[(u+4)%5*2]^a[0],i[2*u+1]=n[(u+4)%5*2+1]^a[1];for(var m=0;m<25;m+=5)t[2*(m+u)]^=i[2*u],t[2*(m+u)+1]^=i[2*u+1]}}}),he=m(function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=s(de),r=s(ce),i=s(be),a=s(ge);function s(e){return e&&e.__esModule?e:{default:e}}t.default=function(){var e=new Uint32Array(10),t=new Uint32Array(10),s=new Uint32Array(2);return function(o){for(var f=0;f<24;f++)(0,a.default)({A:o,C:e,D:t,W:s}),(0,i.default)({A:o,C:e,W:s}),(0,n.default)({A:o,C:e}),(0,r.default)({A:o,roundIndex:f});e.fill(0),t.fill(0),s.fill(0)}}}),ve=m(function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n,r=(n=he)&&n.__esModule?n:{default:n},i=function(e,t){for(var n=0;n<e.length;n+=8){var r=n/4;t[r]^=e[n+7]<<24|e[n+6]<<16|e[n+5]<<8|e[n+4],t[r+1]^=e[n+3]<<24|e[n+2]<<16|e[n+1]<<8|e[n]}return t},a=function(e,t){for(var n=0;n<t.length;n+=8){var r=n/4;t[n]=e[r+1],t[n+1]=e[r+1]>>>8,t[n+2]=e[r+1]>>>16,t[n+3]=e[r+1]>>>24,t[n+4]=e[r],t[n+5]=e[r]>>>8,t[n+6]=e[r]>>>16,t[n+7]=e[r]>>>24}return t};t.default=function(e){var t=this,n=e.capacity,s=e.padding,o=(0,r.default)(),f=n/8,l=200-n/4,p=0,d=new Uint32Array(50),y=le.Buffer.allocUnsafe(l);return this.absorb=function(e){for(var n=0;n<e.length;n++)y[p]=e[n],(p+=1)>=l&&(i(y,d),o(d),p=0);return t},this.squeeze=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t={buffer:e.buffer||le.Buffer.allocUnsafe(f),padding:e.padding||s,queue:le.Buffer.allocUnsafe(y.length),state:new Uint32Array(d.length)};y.copy(t.queue);for(var n=0;n<d.length;n++)t.state[n]=d[n];t.queue.fill(0,p),t.queue[p]|=t.padding,t.queue[l-1]|=128,i(t.queue,t.state);for(var r=0;r<t.buffer.length;r+=l)o(t.state),a(t.state,t.buffer.slice(r,r+l));return t.buffer},this.reset=function(){return y.fill(0),d.fill(0),p=0,t},this}}),Te=m(function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.SHAKE=t.SHA3Hash=t.SHA3=t.Keccak=void 0;var n,r=(n=ve)&&n.__esModule?n:{default:n},i=function(e){var t=e.allowedSizes,n=e.padding;return function e(){var i=this,a=arguments.length>0&&void 0!==arguments[0]?arguments[0]:512;if(!this||this.constructor!==e)return new e(a);if(t&&!t.includes(a))throw new Error("Unsupported hash length");var s=new r.default({capacity:a});return this.update=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"utf8";if(le.Buffer.isBuffer(e))return s.absorb(e),i;if("string"==typeof e)return i.update(le.Buffer.from(e,t));throw new TypeError("Not a string or buffer")},this.digest=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"binary",t="string"==typeof e?{format:e}:e,r=s.squeeze({buffer:t.buffer,padding:t.padding||n});return t.format&&"binary"!==t.format?r.toString(t.format):r},this.reset=function(){return s.reset(),i},this}},a=i({allowedSizes:[224,256,384,512],padding:1});t.Keccak=a;var s=i({allowedSizes:[224,256,384,512],padding:6});t.SHA3=s;var o=i({allowedSizes:[128,256],padding:31});t.SHAKE=o;var f=a;t.SHA3Hash=f,s.SHA3Hash=f,t.default=s});const _e=new Array(16),De=Be([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13]),Se=Be([5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11]),Ie=Be([11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6]),we=Be([8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]),Ee=$e([0,1518500249,1859775393,2400959708,2840853838]),Ne=$e([1352829926,1548603684,1836072691,2053994217,0]);function Ve(e,t){return e<<t|e>>>32-t}function xe(e,t,n,r,i,a,s,o){return Ve(e+(t^n^r)+a+s|0,o)+i|0}function Le(e,t,n,r,i,a,s,o){return Ve(e+(t&n|~t&r)+a+s|0,o)+i|0}function Re(e,t,n,r,i,a,s,o){return Ve(e+((t|~n)^r)+a+s|0,o)+i|0}function Pe(e,t,n,r,i,a,s,o){return Ve(e+(t&r|n&~r)+a+s|0,o)+i|0}function Ae(e,t,n,r,i,a,s,o){return Ve(e+(t^(n|~r))+a+s|0,o)+i|0}function ke(e,t){return e[t>>>=0]|e[t+1]<<8|e[t+2]<<16|e[t+3]<<24}function Ce(e,t,n){return e[3+(n>>>=0)]=(t=+t)>>>24,e[n+2]=t>>>16,e[n+1]=t>>>8,e[n]=255&t,n+4}function Me(e,t,n){return e[n>>>=0]=255&(t=+t),e[n+1]=t>>>8,e[n+2]=t>>>16,e[n+3]=t>>>24,n+4}function $e(e){return"undefined"!=typeof Uint32Array?new Uint32Array(e):e}function Be(e){return"undefined"!=typeof Uint8Array?new Uint8Array(e):e}function Ue(e){return"undefined"!=typeof Uint8Array?new Uint8Array(e):new Array(e)}class Fe{constructor(){this._block=Ue(64),this._blockSize=64,this._blockOffset=0,this._length=[0,0,0,0],this._finalized=!1,this._a=1732584193,this._b=4023233417,this._c=2562383102,this._d=271733878,this._e=3285377520}update(e){if(this._finalized)throw new Error("Digest already called");const t=this._block;let n=0;for(;this._blockOffset+e.length-n>=this._blockSize;){for(let r=this._blockOffset;r<this._blockSize;)t[r++]=e[n++];this._update(),this._blockOffset=0}for(;n<e.length;)t[this._blockOffset++]=e[n++];for(let r=0,i=8*e.length;i>0;++r)this._length[r]+=i,i=this._length[r]/4294967296|0,i>0&&(this._length[r]-=4294967296*i);return this}_update(){const e=_e;for(let y=0;y<16;++y)e[y]=ke(this._block,4*y);let t=0|this._a,n=0|this._b,r=0|this._c,i=0|this._d,a=0|this._e,s=0|this._a,o=0|this._b,f=0|this._c,l=0|this._d,p=0|this._e;for(let y=0;y<80;y+=1){let d,c;y<16?(d=xe(t,n,r,i,a,e[De[y]],Ee[0],Ie[y]),c=Ae(s,o,f,l,p,e[Se[y]],Ne[0],we[y])):y<32?(d=Le(t,n,r,i,a,e[De[y]],Ee[1],Ie[y]),c=Pe(s,o,f,l,p,e[Se[y]],Ne[1],we[y])):y<48?(d=Re(t,n,r,i,a,e[De[y]],Ee[2],Ie[y]),c=Re(s,o,f,l,p,e[Se[y]],Ne[2],we[y])):y<64?(d=Pe(t,n,r,i,a,e[De[y]],Ee[3],Ie[y]),c=Le(s,o,f,l,p,e[Se[y]],Ne[3],we[y])):(d=Ae(t,n,r,i,a,e[De[y]],Ee[4],Ie[y]),c=xe(s,o,f,l,p,e[Se[y]],Ne[4],we[y])),t=a,a=i,i=Ve(r,10),r=n,n=d,s=p,p=l,l=Ve(f,10),f=o,o=c}const d=this._b+r+l|0;this._b=this._c+i+p|0,this._c=this._d+a+s|0,this._d=this._e+t+o|0,this._e=this._a+n+f|0,this._a=d}digest(){if(this._finalized)throw new Error("Digest already called");this._finalized=!0,this._block[this._blockOffset++]=128,this._blockOffset>56&&(this._block.fill(0,this._blockOffset,64),this._update(),this._blockOffset=0),this._block.fill(0,this._blockOffset,56),Ce(this._block,this._length[0],56),Ce(this._block,this._length[1],60),this._update();const e=Ue(20);Me(e,this._a,0),Me(e,this._b,4),Me(e,this._c,8),Me(e,this._d,12),Me(e,this._e,16),this._block.fill(0),this._blockOffset=0;for(let t=0;t<4;++t)this._length[t]=0;return e}}var Oe,qe=(Oe={__proto__:null,RIPEMD160:Fe,default:Fe})&&Oe.default||Oe,ze=m(function(t,n){function r(e){return e&&"object"==typeof e&&"default"in e?e.default:e}var i=Te,a=r(oe),s=ae,o=r(b),f=r(fe),l=qe,p=P,d="ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",y=["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f"],c=function(t){for(var n=new ArrayBuffer(5*t.length/8),r=new Uint8Array(n),i=0;i<t.length/8;i++){for(var a=[0,0,0,0,0,0,0,0],s=0;s<8;++s)a[s]=d.indexOf(t[8*i+s]);r[5*i+0]=a[0]<<3|a[1]>>2,r[5*i+1]=(3&a[1])<<6|a[2]<<1|a[3]>>4,r[5*i+2]=(15&a[3])<<4|a[4]>>1,r[5*i+3]=(1&a[4])<<7|a[5]<<2|a[6]>>3,r[5*i+4]=(7&a[6])<<5|a[7]}return e.from(r)};function u(e,t){this._block=s.Buffer.alloc(e),this._finalSize=t,this._blockSize=e,this._len=0}u.prototype.update=function(e,t){"string"==typeof e&&(e=s.Buffer.from(e,t=t||"utf8"));for(var n=this._block,r=this._blockSize,i=e.length,a=this._len,o=0;o<i;){for(var f=a%r,l=Math.min(i-o,r-f),p=0;p<l;p++)n[f+p]=e[o+p];o+=l,(a+=l)%r==0&&this._update(n)}return this._len+=i,this},u.prototype.digest=function(e){var t=this._len%this._blockSize;this._block[t]=128,this._block.fill(0,t+1),t>=this._finalSize&&(this._update(this._block),this._block.fill(0));var n=8*this._len;if(n<=4294967295)this._block.writeUInt32BE(n,this._blockSize-4);else{var r=(4294967295&n)>>>0;this._block.writeUInt32BE((n-r)/4294967296,this._blockSize-8),this._block.writeUInt32BE(r,this._blockSize-4)}this._update(this._block);var i=this._hash();return e?i.toString(e):i},u.prototype._update=function(){throw new Error("_update must be implemented by subclass")};var m,g,h=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],v=new Array(64);function T(){this.init(),this._w=v,u.call(this,64,56)}function _(e,t,n){return n^e&(t^n)}function D(e,t,n){return e&t|n&(e|t)}function S(e){return(e>>>2|e<<30)^(e>>>13|e<<19)^(e>>>22|e<<10)}function I(e){return(e>>>6|e<<26)^(e>>>11|e<<21)^(e>>>25|e<<7)}function w(e){return(e>>>7|e<<25)^(e>>>18|e<<14)^e>>>3}function E(e){return void 0!==e.length}m=T,(g=u)&&(m.super_=g,m.prototype=Object.create(g.prototype,{constructor:{value:m,enumerable:!1,writable:!0,configurable:!0}})),T.prototype.init=function(){return this._a=1779033703,this._b=3144134277,this._c=1013904242,this._d=2773480762,this._e=1359893119,this._f=2600822924,this._g=528734635,this._h=1541459225,this},T.prototype._update=function(e){for(var t,n=this._w,r=0|this._a,i=0|this._b,a=0|this._c,s=0|this._d,o=0|this._e,f=0|this._f,l=0|this._g,p=0|this._h,d=0;d<16;++d)n[d]=e.readInt32BE(4*d);for(;d<64;++d)n[d]=0|(((t=n[d-2])>>>17|t<<15)^(t>>>19|t<<13)^t>>>10)+n[d-7]+w(n[d-15])+n[d-16];for(var y=0;y<64;++y){var c=p+I(o)+_(o,f,l)+h[y]+n[y]|0,u=S(r)+D(r,i,a)|0;p=l,l=f,f=o,o=s+c|0,s=a,a=i,i=r,r=c+u|0}this._a=r+this._a|0,this._b=i+this._b|0,this._c=a+this._c|0,this._d=s+this._d|0,this._e=o+this._e|0,this._f=f+this._f|0,this._g=l+this._g|0,this._h=p+this._h|0},T.prototype._hash=function(){var e=s.Buffer.allocUnsafe(32);return e.writeInt32BE(this._a,0),e.writeInt32BE(this._b,4),e.writeInt32BE(this._c,8),e.writeInt32BE(this._d,12),e.writeInt32BE(this._e,16),e.writeInt32BE(this._f,20),e.writeInt32BE(this._g,24),e.writeInt32BE(this._h,28),e};var N=new(function(){function t(e){this.sha256=e.sha256,this.alphabet=e.alphabet,this.codec=a(this.alphabet),this.base=this.alphabet.length}var n=t.prototype;return n.encodeChecked=function(t){var n=this.sha256(this.sha256(t)).slice(0,4);return this.encodeRaw(e.from(function(){for(var e=[],t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return n.forEach(function(t){if(E(t))for(var n=0;n<t.length;n++)e.push(t[n]);else e.push(t)}),e}(t,n)))},n.encodeRaw=function(e){return this.codec.encode(e)},n.decodeChecked=function(e){var t=this.decodeRaw(e);if(t.length<5)throw new Error("invalid_input_size: decoded data must have length >= 5");if(!this.verifyCheckSum(t))throw new Error("checksum_invalid");return t.slice(0,-4)},n.decodeRaw=function(e){return this.codec.decode(e)},n.verifyCheckSum=function(e){return function(e,t){if(e.length!==t.length)return!1;for(var n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}(this.sha256(this.sha256(e.slice(0,-4))).slice(0,4),e.slice(-4))},t}())({sha256:function(t){return(new T).update(e.from(t)).digest()},alphabet:"rpshnaf39wBUDNEGHJKLM4PQRST7VWXYZ2bcdeCg65jkm8oFqi1tuvAxyz"}),V=function(e){return"0x"===e.slice(0,2)?e.slice(2):e},x=function(e,t){if(void 0===t&&(t=null),"string"!=typeof e)throw new Error("stripHexPrefix param must be type 'string', is currently type "+typeof e+".");for(var n,r=V(e).toLowerCase(),a=(n=(null!=t?t.toString()+"0x":"")+r,new i.Keccak(256).update(n).digest()).toString("hex"),s="0x",o=0;o<r.length;o++)s+=parseInt(a[o],16)>=8?r[o].toUpperCase():r[o];return s},L=function(e,t){if(!e)throw t},R=function(t,n){if(!e.isBuffer(t))throw n},A=o.one,k=o.zero,C=o(3);function M(e,t){return e.and(A.shiftLeft(t)).notEquals(k)}function $(e){return o.fromArray(Array.prototype.slice.call(e,0),256)}function B(t,n){var r=t.toArray(256).value,i=n?Math.max(n-r.length,0):0;return e.from([].concat(Array(i).fill(0),r))}function U(e,t,n,r){L(void 0!==r,"Missing Z coordinate"),this.curve=e,this.x=t,this.y=n,this.z=r,this._zInv=null,this.compressed=!0}Object.defineProperty(U.prototype,"zInv",{get:function(){return null===this._zInv&&(this._zInv=this.z.modInv(this.curve.p)),this._zInv}}),Object.defineProperty(U.prototype,"affineX",{get:function(){return this.x.multiply(this.zInv).mod(this.curve.p)}}),Object.defineProperty(U.prototype,"affineY",{get:function(){return this.y.multiply(this.zInv).mod(this.curve.p)}}),U.fromAffine=function(e,t,n){return new U(e,t,n,A)},U.prototype.equals=function(e){return e===this||(this.curve.isInfinity(this)?this.curve.isInfinity(e):this.curve.isInfinity(e)?this.curve.isInfinity(this):0===e.y.multiply(this.z).subtract(this.y.multiply(e.z)).mod(this.curve.p).compare(k)&&0===e.x.multiply(this.z).subtract(this.x.multiply(e.z)).mod(this.curve.p).compare(k))},U.prototype.negate=function(){var e=this.curve.p.subtract(this.y);return new U(this.curve,this.x,e,this.z)},U.prototype.add=function(e){if(this.curve.isInfinity(this))return e;if(this.curve.isInfinity(e))return this;var t=this.x,n=this.y,r=e.x,i=e.y.multiply(this.z).subtract(n.multiply(e.z)).mod(this.curve.p),a=r.multiply(this.z).subtract(t.multiply(e.z)).mod(this.curve.p);if(0===a.compare(k))return 0===i.compare(k)?this.twice():this.curve.infinity;var s=a.square(),o=s.multiply(a),f=t.multiply(s),l=i.square().multiply(this.z),p=l.subtract(f.shiftLeft(1)).multiply(e.z).subtract(o).multiply(a).mod(this.curve.p),d=f.multiply(C).multiply(i).subtract(n.multiply(o)).subtract(l.multiply(i)).multiply(e.z).add(i.multiply(o)).mod(this.curve.p),y=o.multiply(this.z).multiply(e.z).mod(this.curve.p);return new U(this.curve,p,d,y)},U.prototype.twice=function(){if(this.curve.isInfinity(this))return this;if(0===this.y.compare(k))return this.curve.infinity;var e=this.x,t=this.y,n=t.multiply(this.z).mod(this.curve.p),r=n.multiply(t).mod(this.curve.p),i=this.curve.a,a=e.square().multiply(C);0!==i.compare(k)&&(a=a.add(this.z.square().multiply(i)));var s=(a=a.mod(this.curve.p)).square().subtract(e.shiftLeft(3).multiply(r)).shiftLeft(1).multiply(n).mod(this.curve.p),o=a.multiply(C).multiply(e).subtract(r.shiftLeft(1)).shiftLeft(2).multiply(r).subtract(a.pow(3)).mod(this.curve.p),f=n.pow(3).shiftLeft(3).mod(this.curve.p);return new U(this.curve,s,o,f)},U.prototype.multiply=function(e){if(this.curve.isInfinity(this))return this;if(0===e.compare(k))return this.curve.infinity;for(var t=e,n=t.multiply(C),r=this.negate(),i=this,a=n.bitLength()-2;a>0;--a){var s=M(n,a),o=M(t,a);i=i.twice(),s!==o&&(i=i.add(s?this:r))}return i},U.prototype.multiplyTwo=function(e,t,n){for(var r=Math.max(e.bitLength(),n.bitLength())-1,i=this.curve.infinity,a=this.add(t);r>=0;){var s=M(e,r),o=M(n,r);i=i.twice(),s?i=i.add(o?a:this):o&&(i=i.add(t)),--r}return i},U.prototype.getEncoded=function(t){if(null==t&&(t=this.compressed),this.curve.isInfinity(this))return new e("00","hex");var n,r=this.affineX,i=this.affineY,a=this.curve.pLength;return t?(n=new e(1+a)).writeUInt8(i.isEven()?2:3,0):((n=new e(1+a+a)).writeUInt8(4,0),B(i,a).copy(n,1+a)),B(r,a).copy(n,1),n},U.decodeFrom=function(e,t){var n,r=t.readUInt8(0),i=4!==r,a=Math.floor((e.p.bitLength()+7)/8),s=$(t.slice(1,1+a));if(i)L(t.length===a+1,"Invalid sequence length"),L(2===r||3===r,"Invalid sequence tag"),n=e.pointFromX(3===r,s);else{L(t.length===1+a+a,"Invalid sequence length");var o=$(t.slice(1+a));n=U.fromAffine(e,s,o)}return n.compressed=i,n},U.prototype.toString=function(){return this.curve.isInfinity(this)?"(INFINITY)":"("+this.affineX.toString()+","+this.affineY.toString()+")"};var F=o.zero,O=o.one;function q(e,t,n,r,i,a,s){this.p=e,this.a=t,this.b=n,this.G=U.fromAffine(this,r,i),this.n=a,this.h=s,this.infinity=new U(this,null,null,F),this.pOverFour=e.add(O).shiftRight(2),this.pLength=Math.floor((this.p.bitLength()+7)/8)}q.prototype.pointFromX=function(e,t){var n=t.pow(3).add(this.a.multiply(t)).add(this.b).mod(this.p).modPow(this.pOverFour,this.p),r=n;return n.isEven()^!e&&(r=this.p.subtract(r)),U.fromAffine(this,t,r)},q.prototype.isInfinity=function(e){return e===this.infinity||0===e.z.compare(F)&&0!==e.y.compare(F)},q.prototype.isOnCurve=function(e){if(this.isInfinity(e))return!0;var t=e.affineX,n=e.affineY,r=this.a,i=this.b,a=this.p;if(t.compare(F)<0||t.compareTo(a)>=0)return!1;if(n.compare(F)<0||n.compareTo(a)>=0)return!1;var s=n.square().mod(a),o=t.pow(3).add(r.multiply(t)).add(i).mod(a);return s.equals(o)},q.prototype.validate=function(e){L(!this.isInfinity(e),"Point is at infinity"),L(this.isOnCurve(e),"Point is not on the curve");var t=e.multiply(this.n);return L(this.isInfinity(t),"Point is not a scalar multiple of G"),!0};var z={p:"fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f",a:"00",b:"07",n:"fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141",h:"01",Gx:"79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798",Gy:"483ada7726a3c4655da4fbfc0e1108a8fd17b448a68554199c47d08ffb10d4b8"};function j(e,t){return new i.SHA3(256).update(e).digest(t)}function H(t){return e.from((new l.RIPEMD160).update(t).digest())}function W(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;if(R(t,"expecting keyBuffer<Buffer>"),"sha256x2"===n){var r=j(j(t)).slice(0,4);return f.encode(e.concat([t,r]))}var i=[t];n&&i.push(e.from(n));var a=H(e.concat(i)).slice(0,4);return f.encode(e.concat([t,a]))}function K(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;L(t,"private key expected");var r,i=new e(f.decode(t)),a=i.slice(-4),s=i.slice(0,-4);if("sha256x2"===n)r=j(j(s)).slice(0,4);else{var o=[s];n&&o.push(e.from(n)),r=H(e.concat(o)).slice(0,4)}if(a.toString("hex")!==r.toString("hex"))throw new Error("Invalid checksum, "+"".concat(a.toString("hex")," != ").concat(r.toString("hex")));return s}var Z=function(e){var t=z;if(!t)return null;var n=o(t.p,16),r=o(t.a,16),i=o(t.b,16),a=o(t.n,16),s=o(t.h,16);return new q(n,r,i,o(t.Gx,16),o(t.Gy,16),a,s)}();function X(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"EOS";if("string"==typeof t)return X.fromString(t,n);if(e.isBuffer(t))return X.fromBuffer(t);if("object"==typeof t&&t.Q)return X(t.Q);function r(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:t.compressed;return t.getEncoded(e)}function i(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"EOS";return e+W(r())}function a(){return r().toString("hex")}return{Q:t,toString:i,toBuffer:r,toHex:a}}X.isValid=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"EOS";try{return X(e,t),!0}catch(e){return!1}},X.fromBuffer=function(e){return X(U.decodeFrom(Z,e))},X.fromString=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"EOS";try{return X.fromStringOrThrow(e,t)}catch(e){return null}},X.fromStringOrThrow=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"EOS",n=e.match(/^PUB_([A-Za-z0-9]+)_([A-Za-z0-9]+)$/);if(null===n){var r=new RegExp("^"+t);return r.test(e)&&(e=e.substring(t.length)),X.fromBuffer(K(e))}var i=n[1],a=n[2];return X.fromBuffer(K(a,i))},X.fromHex=function(t){return X.fromBuffer(new e(t,"hex"))},X.fromStringHex=function(t){return X.fromString(new e(t,"hex"))};var J=a("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"),Y=J.encode,G=J.decode,Q=function(e){return void 0===e},ee={ed25519PublicKey:48,ed25519SecretSeed:144,preAuthTx:152,sha256Hash:184},te=function(t){var n=e.alloc(2);return n.writeUInt16LE(function(t,n){e.isBuffer(t)||(t=new e);for(var r=0,i=0;i<t.length;i++){var a=r>>>8&255;a^=255&t[i],r=r<<8&65535,r^=a^=a>>>4,r^=a=a<<5&65535,r^=a=a<<7&65535}return r}(t),0),n};function ne(e){return(ne=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function re(e,t){return(re=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function ie(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Date.prototype.toString.call(Reflect.construct(Date,[],function(){})),!0}catch(t){return!1}}function se(e,t,n){return(se=ie()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var i=new(Function.bind.apply(e,r));return n&&re(i,n.prototype),i}).apply(null,arguments)}function le(e){var t="function"==typeof Map?new Map:void 0;return(le=function(e){if(null===e||-1===Function.toString.call(e).indexOf("[native code]"))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return se(e,arguments,ne(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),re(n,e)})(e)}var pe=[0,1,2,42,43,68,69],de=function(e){for(var t=new Uint8Array(e.length),n=0;n<e.length;n++)t[n]=e.charCodeAt(n);return t}("SS58PRE"),ye=function(e){var t,n;function r(){return e.apply(this,arguments)||this}return n=e,(t=r).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n,r.prototype.toJSON=function(){return{_type:"AccountIndex",data:this+0}},r}(le(Number));function ce(e,t){e.length||(e=[e]),t.length||(t=[t]);var n=new Uint8Array(e.length+t.length);return n.set(e),n.set(t,e.length),n}function ue(e){var t=new Error;this.name=t.name="ValidationError",this.message=t.message=e,this.stack=t.stack}function me(e,t){if(null==t&&(t="Assertion failed."),!e)throw new ue(t)}ue.prototype=Object.create(Error.prototype);var be=function(){function e(e,t){this.hi=0|e,this.lo=0|t}return e.prototype.ushrn32=function(e){var t=this.lo;return 0==(e&=63)||(e<32?(t>>>=e,t|=this.hi<<32-e):t=this.hi>>>e-32),t},e}(),ge=e.allocUnsafe(105),he="qpzry9x8gf2tvdw0s3jn54khce6mua7l",ve=[-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,15,-1,10,17,21,20,26,30,7,5,-1,-1,-1,-1,-1,-1,-1,29,-1,24,13,25,9,8,23,-1,18,22,31,27,19,-1,1,0,3,16,11,28,12,14,6,4,2,-1,-1,-1,-1,-1,-1,29,-1,24,13,25,9,8,23,-1,18,22,31,27,19,-1,1,0,3,16,11,28,12,14,6,4,2,-1,-1,-1,-1,-1],_e=new be(7,4294967295),De=[new be(152,4072443489),new be(121,3077413346),new be(243,1046459332),new be(174,783016616),new be(30,1329849456)];function Se(e,t){var n=e,r=n.hi>>>3;n.hi&=_e.hi,n.lo&=_e.lo,n.hi<<=5,n.hi|=n.lo>>>27,n.lo<<=5;for(var i=0;i<De.length;i++)r>>>i&1&&(n.hi^=De[i].hi,n.lo^=De[i].lo);return n.lo^=t,n}function Ie(t,n,r,i,a,s,o){me(e.isBuffer(t)),me(n>>>0===n),me(e.isBuffer(r)),me(i>>>0===i),me((255&a)===a),me((255&s)===s),me("boolean"==typeof o);for(var f=(1<<s)-1,l=0,p=0;n<t.length;n++){var d=t[n];if(d>>>a!=0)throw new Error("Invalid bits.");for(l=l<<a|d,p+=a;p>=s;)r[i++]=l>>>(p-=s)&f}if(o)p&&(r[i++]=l<<s-p&f);else if(p>=a||l<<s-p&f)throw new Error("Invalid bits.");return me(i<=r.length),r.slice(0,i)}var we=function(t){function n(e){var n=e.slice(0,-4),r=e.slice(-4),i=t(n);if(!(r[0]^i[0]|r[1]^i[1]|r[2]^i[2]|r[3]^i[3]))return n}return{bs58Encode:function(n){var r=t(n);return f.encode(e.concat([n,r],n.length+4))},bs58Decode:function(e){var t=n(f.decode(e));if(!t)throw new Error("Invalid checksum");return t},decodeUnsafe:function(e){var t=f.decodeUnsafe(e);if(t)return n(t)}}}(function(e){var t=(new T).update(e).digest();return(new T).update(t).digest()}),Ee=we.bs58Decode,Ne=we.bs58Encode;n.b32decode=c,n.b32encode=function(e){var t=[],n=Math.floor(e.length/5),r=e.length%5;if(0!=r){for(var i=0;i<5-r;i++)e+="\0";n+=1}for(var a=0;a<n;a++)t.push(d.charAt(e.charCodeAt(5*a)>>3)),t.push(d.charAt((7&e.charCodeAt(5*a))<<2|e.charCodeAt(5*a+1)>>6)),t.push(d.charAt((63&e.charCodeAt(5*a+1))>>1)),t.push(d.charAt((1&e.charCodeAt(5*a+1))<<4|e.charCodeAt(5*a+2)>>4)),t.push(d.charAt((15&e.charCodeAt(5*a+2))<<1|e.charCodeAt(5*a+3)>>7)),t.push(d.charAt((127&e.charCodeAt(5*a+3))>>2)),t.push(d.charAt((3&e.charCodeAt(5*a+3))<<3|e.charCodeAt(5*a+4)>>5)),t.push(d.charAt(31&e.charCodeAt(5*a+4)));var s=0;1==r?s=6:2==r?s=4:3==r?s=3:4==r&&(s=1);for(var o=0;o<s;o++)t.pop();for(var f=0;f<s;f++)t.push("=");return t.join("")},n.bs58Decode=Ee,n.bs58Encode=Ne,n.calculateChecksum=te,n.cashaddrDecode=function(t,n){void 0===n&&(n="bitcoincash"),me("string"==typeof t),me("string"==typeof n);var r=function(t,n){if(me("string"==typeof t),t.length<8||t.length>196)throw new Error("Invalid cashaddr data length.");for(var r=!1,i=!1,a=!1,s=0,o=0;o<t.length;o++){var f=t.charCodeAt(o);if(f>=97&&f<=122)r=!0;else if(f>=65&&f<=90)i=!0;else if(f>=48&&f<=57)a=!0;else{if(58!==f)throw new Error("Invalid cashaddr character.");if(a||0===o||o>83)throw new Error("Invalid cashaddr prefix.");if(0!==s)throw new Error("Invalid cashaddr separators.");s=o}}if(i&&r)throw new Error("Invalid cashaddr casing.");var l,p=new be(0,1);0===s?l=n.toLowerCase():(l=t.substring(0,s).toLowerCase(),s+=1);for(var d=0;d<l.length;d++)Se(p,31&(32|l.charCodeAt(d)));Se(p,0);var y=t.length-s;if(y<=8||y>112)throw new Error("Invalid cashaddr data length.");for(var c=e.allocUnsafe(y),u=s;u<t.length;u++){var m=t.charCodeAt(u),b=65408&m?-1:ve[m];if(-1===b)throw new Error("Invalid cashaddr character.");Se(p,b),u+8<t.length&&(c[u-s]=b)}if(0!==p.hi||1!==p.lo||l!==n)throw new Error("Invalid cashaddr checksum.");return[l,c.slice(0,-8)]}(t,n),i=r[0],a=r[1],s=5*a.length&7;if(s>=5)throw new Error("Invalid padding in data.");if(a[a.length-1]&(1<<s)-1)throw new Error("Non zero padding.");var o=Ie(a,0,a,0,5,8,!1),f=o[0]>>>3&31,l=o.slice(1),p=20+4*(3&o[0]);if(4&o[0]&&(p*=2),p!==l.length)throw new Error("Invalid cashaddr data length.");return{prefix:i,type:f,hash:l}},n.cashaddrEncode=function(t,n,r){if(me("string"==typeof t),me((15&n)===n,"Invalid cashaddr type."),me(e.isBuffer(r)),0===t.length||t.length>83)throw new Error("Invalid cashaddr prefix.");var i=function(e){switch(me(e>>>0===e),e){case 20:return 0;case 24:return 1;case 28:return 2;case 32:return 3;case 40:return 4;case 48:return 5;case 56:return 6;case 64:return 7;default:throw new Error("Non standard length.")}}(r.length),a=e.allocUnsafe(r.length+1);return a[0]=n<<3|i,r.copy(a,1),function(t,n){me("string"==typeof t),me(e.isBuffer(n));for(var r=new be(0,1),i="",a=!1,s=!1,o=0;o<t.length;o++){var f=t.charCodeAt(o);if(65280&f||f>>>5==0)throw new Error("Invalid cashaddr character.");if(f>=97&&f<=122)s=!0;else if(f>=65&&f<=90)a=!0,f=f-65+97;else if(f>=48&&f<=57)throw new Error("Invalid cashaddr prefix.");Se(r,31&f),i+=String.fromCharCode(f)}if(s&&a)throw new Error("Invalid cashaddr prefix.");Se(r,0),i+=":";for(var l=0;l<n.length;l++){var p=n[l];if(p>>>5!=0)throw new Error("Invalid cashaddr value.");Se(r,p),i+=he[p]}for(var d=0;d<8;d++)Se(r,0);r.lo^=1;for(var y=0;y<8;y++){var c=31&r.ushrn32(5*(7-y));i+=he[c]}return i}(t,Ie(a,0,ge,0,8,5,!0))},n.codec=N,n.decodeCheck=function(t,n){if("string"!=typeof n)throw new TypeError("encoded argument must be of type String");var r=G(n),i=r[0],a=r.slice(0,-2),s=a.slice(1),o=r.slice(-2);if(n!==Y(r))throw new Error("invalid encoded string");var f=ee[t];if(Q(f))throw new Error(t+' is not a valid version byte name. expected one of "accountId" or "seed"');if(i!==f)throw new Error("invalid version byte. expected "+f+", got "+i);if(!function(e,t){if(e.length!==t.length)return!1;if(0===e.length)return!0;for(var n=0;n<e.length;n+=1)if(e[n]!==t[n])return!1;return!0}(te(a),o))throw new Error("invalid checksum");return e.from(s)},n.encodeCheck=function(t,n){if(null===n||Q(n))throw new Error("cannot encode null data");var r=ee[t];if(Q(r))throw new Error(t+' is not a valid version byte name. expected one of "ed25519PublicKey", "ed25519SecretSeed", "preAuthTx", "sha256Hash"');n=e.from(n);var i=e.from([r]),a=e.concat([i,n]),s=te(a),o=e.concat([a,s]);return Y(o)},n.eosPublicKey=X,n.hex2a=function(e){for(var t=e.toString(),n="",r=0;r<t.length;r+=2)n+=String.fromCharCode(parseInt(t.substr(r,2),16));return n},n.isValid=function(t){var n=t.toString().toUpperCase().replace(/-/g,"");if(!n||40!==n.length)return!1;var r,a=function(e){for(var t="",n=0;n<e.length;n++){var r=Math.round(e[n]).toString(16);1===r.length&&(r="0"+r),t+=r}return t}(c(n));return r=e.from(a.slice(0,42),"hex"),new i.Keccak(256).update(r).digest("hex").toString().substr(0,8)===a.slice(42)},n.isValidChecksumAddress=function(e,t){return function(e){return/^0x[0-9a-fA-F]{40}$/.test(e)}(e)&&x(e,t)===e},n.ss58Decode=function(t,n){var r;void 0===n&&(n=0);try{r=f.decode(t)}catch(t){return null}if(-1===pe.indexOf(r[0]))return null;if(r.length<3)return null;var i,a=r.length<=3?1:r.length<=5?2:r.length<=9?4:r.length<=17?8:32,s=r.length-1-a,o=r.slice(1,1+a);r.slice(1+r.length),32===a&&(i=o);var l=a<32?new ye(function(e){var t=0,n=1;return e.forEach(function(e){t+=e*n,n*=256}),t}(o)):new e.from(o);if(r[0]%1&&!i&&!n)return null;for(var d=p.blake2b(ce(de,r[0]%1?i||n(l):r.slice(0,1+a))),y=0;y<s;++y)if(d[y]!==r[1+a+y])return null;return l},n.ss58Encode=function(t,n,r,i,a){var s;if(void 0===n&&(n=42),void 0===r&&(r=null),void 0===i&&(i=null),-1===pe.indexOf(n))throw new Error("Unknown ss58 address type",n);if("number"==typeof t||t instanceof ye){var o=t<256?1:t<65536?2:t<1?4:8;if(-1===[1,2,4,8].indexOf(i=i||o))throw new Error("Invalid length");if(i=Math.max(o,i),r&&"number"!=typeof r)throw new Error("Invalid checksum length");switch(i){case 1:r=1;break;case 2:r=[1,2].indexOf(r)+1||1;break;case 4:r=[1,2,3,4].indexOf(r)+1||1;break;case 8:r=[1,2,3,4,5,6,7,8].indexOf(r)+1||1}s=function(e,t){var n=!1;e<0&&(e=-e-1,n=!0);for(var r=new Uint8Array(t),i=0;i<t;++i)r[i]=e%256,n&&(r[i]=255&~r[i]),e/=256;return r}(t,i)}else{if(!(t instanceof Uint8Array)||32!==t.length&&35!==t.length)throw new Error("Unknown item to encode as ss58. Passing back.",t);r=2,a=s=35===t.length?t.slice(1,33):t}var l=p.blake2b(ce(de,1&n?a:ce(n,s))),d=ce(ce(n,s),l.slice(0,r));return f.encode(e.from(d))},n.stripHexPrefix=V,n.toChecksumAddress=x,n.ua2hex=function(e){for(var t="",n=0;n<e.length;n++){var r=e[n];t+=y[r>>>4],t+=y[15&r]}return t}});const je="13456789abcdefghijkmnopqrstuwxyz";function He(e){var t=je.indexOf(e);if(-1===t)throw new Error("Invalid character found: "+e);return t}var We=function(e){if(e.constructor!==Uint8Array)throw new Error("View must be a Uint8Array!");const t=e.length,n=8*t%5,r=0===n?0:5-n;let i=0,a="",s=0;for(var o=0;o<t;o++)for(i=i<<8|e[o],s+=8;s>=5;)a+=je[i>>>s+r-5&31],s-=5;return s>0&&(a+=je[i<<5-(s+r)&31]),a},Ke=n("Z7Q3"),Ze=function(){function t(t){void 0===t&&(t=e.from([])),this.buffer=t,this.bytesRead=0}var n=t.prototype;return n.read=function(e){var t=this.buffer.slice(0,e);return this.buffer=this.buffer.slice(e),this.bytesRead+=e,t},n.write=function(t){this.buffer=e.concat([this.buffer,e.from(t)])},t}(),Xe=function(){function e(e){if(!e||e.length<1)throw new Error("Missing str in address");this.str=e}var t=e.prototype;return t.protocol=function(){if(this.str.length<1)throw Error("No address found.");return this.str[0]},t.payload=function(){if(this.str.length<1)throw Error("No address found.");return this.str.slice(1,this.str.length)},e}();function Je(e){return W.blake2b(e,null,4)}function Ye(t,n){if(!n||!n.str)throw Error("Invalid address");var r="",i=n.payload(),a=n.protocol();switch(a){case 0:var s=function(e){return function(e){for(var t,n=new Ke(0),r=0;t=e.read(1)[0],n.ior(new Ke(127&t).shln(r)),t>>7!=0;)r+=7;return n}(new Ze(e)).toString()}(i);r=t+String(a)+s;break;default:var o=e.from([a]),f=Je(e.concat([o,i])),l=e.concat([i,e.from(f)]),p=ze.hex2a(l.toString("hex")),d=ze.b32encode(p).replace(/=/g,"").toLowerCase();r=String(t)+String(a)+d}return r}function Ge(t,n){var r=e.from([t]),i=e.concat([r,n]);return new Xe(i)}function Qe(t,n){return function(r){var i;switch(r.readUInt8(0)){case 118:if(169!==r.readUInt8(1)||136!==r.readUInt8(r.length-2)||172!==r.readUInt8(r.length-1))throw Error("Unrecognised address format");return i=e.concat([e.from(t),r.slice(3,3+r.readUInt8(2))]),ze.bs58Encode(i);case 169:if(135!==r.readUInt8(r.length-1))throw Error("Unrecognised address format");return i=e.concat([e.from(n),r.slice(2,2+r.readUInt8(1))]),ze.bs58Encode(i);default:throw Error("Unrecognised address format")}}}function et(t,n){return function(r){var i=ze.bs58Decode(r),a=function(e){return e.every(function(e,t){return t<i.length&&e===i.readUInt8(t)})};if(t.some(a))return e.concat([e.from([118,169,20]),i.slice(t[0].length),e.from([136,172])]);if(n.some(a))return e.concat([e.from([169,20]),i.slice(n[0].length),e.from([135])]);throw Error("Unrecognised address format")}}var tt=function(e,t,n,r){return{coinType:t,decoder:et(n,r),encoder:Qe(n[0],r[0]),name:e}};function nt(e,t,n){var r=function(e){return function(t){var n=t.readUInt8(0);if(n>=81&&n<=96)n-=80;else if(0!==n)throw Error("Unrecognised address format");var r=[n].concat(c(t.slice(2,t.readUInt8(1)+2)));return y(e,r)}}(e),i=Qe(t,n);return function(e){try{return i(e)}catch(t){return r(e)}}}function rt(t,n,r){var i=function(t){return function(n){var r=d(n),i=r.words;if(r.prefix!==t)throw Error("Unexpected human-readable part in bech32 encoded address");var a=u(i.slice(1)),s=i[0];return s>0&&(s+=80),e.concat([e.from([s,a.length]),e.from(a)])}}(t),a=et(n,r);return function(e){return e.toLowerCase().startsWith(t+"1")?i(e):a(e)}}var it=function(e,t,n,r,i){return{coinType:t,decoder:rt(n,r,i),encoder:nt(n,r[0],i[0]),name:e}};function at(e){return function(t){return ze.toChecksumAddress(t.toString("hex"),e||null)}}function st(t){return function(n){var r=ze.stripHexPrefix(n);if(!ze.isValidChecksumAddress(n,t||null)&&r!==r.toLowerCase()&&r!==r.toUpperCase())throw Error("Invalid address checksum");return e.from(ze.stripHexPrefix(n),"hex")}}var ot=function(e,t,n){return{coinType:t,decoder:st(n),encoder:at(n),name:e}};function ft(e){return function(t){return y(e,c(t))}}function lt(t){return function(n){var r=d(n),i=r.words;if(r.prefix!==t)throw Error("Unrecognised address format");return e.from(u(i))}}var pt=function(e,t,n){return{coinType:t,decoder:lt(n),encoder:ft(n),name:e}};function dt(t){return new e(ze.ss58Decode(t))}function yt(t){var r=(new(n("tcrS"))).update(t).digest();return"STM"+fe.encode(e.concat([t,r.slice(0,4)]))}function ct(t){var r=n("tcrS");if("STM"!==t.slice(0,3))throw Error("Unrecognised address format");t=t.slice(3);var i=fe.decode(t),a=i.slice(-4),s=i.slice(0,-4);if(!(new r).update(s).digest().slice(0,4).equals(a))throw Error("Invalid checksum");return e.from(s)}function ut(e){return Object(r.createHash)("SHA512-256").update(e).digest("hex").substr(-8)}var mt,bt,gt,ht,vt,Tt,_t=function(e,t,n,r){return{coinType:t,decoder:r,encoder:n,name:e}},Dt=[it("BTC",0,"bc",[[0]],[[5]]),it("LTC",2,"ltc",[[48]],[[50],[5]]),tt("DOGE",3,[[30]],[[22]]),tt("RDD",4,[[61]],[[5]]),tt("DASH",5,[[76]],[[16]]),tt("PPC",6,[[55]],[[117]]),_t("NMC",7,ze.bs58Encode,ze.bs58Decode),it("MONA",22,"mona",[[50]],[[55],[5]]),_t("DCR",42,fe.encode,fe.decode),_t("XEM",43,function(e){return ze.b32encode(ze.hex2a(e.toString("hex")))},function(e){if(!ze.isValid(e))throw Error("Unrecognised address format");var t=e.toString().toUpperCase().replace(/-/g,"");return ze.b32decode(t)}),tt("AIB",55,[[23]],[[5]]),it("SYS",57,"sys",[[63]],[[5]]),ot("ETH",60),ot("ETC",61),_t("ICX",74,function(e){if(21!==e.length)throw Error("Unrecognised address format");switch(e.readUInt8(0)){case 0:return"hx"+e.slice(1).toString("hex");case 1:return"cx"+e.slice(1).toString("hex");default:throw Error("Unrecognised address format")}},function(t){var n=t.slice(0,2),r=t.slice(2);switch(n){case"hx":return e.concat([e.from([0]),e.from(r,"hex")]);case"cx":return e.concat([e.from([1]),e.from(r,"hex")]);default:throw Error("Unrecognised address format")}}),_t("ARK",111,ze.bs58Encode,function(e){var t=ze.bs58Decode(e);if(23!==t[0])throw Error("Unrecognised address format");return t}),pt("ATOM",118,"cosmos"),pt("ZIL",119,"zil"),pt("EGLD",120,"erd"),(mt=[[28,184]],bt=[[28,189]],{coinType:133,decoder:function(e,t,n){var r=et(t,n),i=lt("zs");return function(e){return e.toLowerCase().startsWith("zs")?i(e):r(e)}}(0,mt,bt),encoder:(gt=mt[0],ht=bt[0],vt=ft("zs"),Tt=Qe(gt,ht),function(e){try{return Tt(e)}catch(i){return vt(e)}}),name:"ZEC"}),_t("LSK",134,function(e){return b(e.toString("hex"),16).toString(10)+"L"},function(t){return function(e){if(e.length<2||e.length>22)throw new Error("Address length does not match requirements. Expected between 2 and 22 characters.");if("L"!==e[e.length-1])throw new Error('Address format does not match requirements. Expected "L" at the end.');if(e.includes("."))throw new Error("Address format does not match requirements. Address includes invalid character: `.`.")}(t),e.from(b(t.slice(0,-1)).toString(16),"hex")}),_t("STEEM",135,yt,ct),ot("RSK",137,30),_t("XRP",144,function(e){return ze.codec.encodeChecked(e)},function(e){return ze.codec.decodeChecked(e)}),_t("BCH",145,function(e){switch(e.readUInt8(0)){case 118:if(169!==e.readUInt8(1)||136!==e.readUInt8(e.length-2)||172!==e.readUInt8(e.length-1))throw Error("Unrecognised address format");return ze.cashaddrEncode("bitcoincash",0,e.slice(3,3+e.readUInt8(2)));case 169:if(135!==e.readUInt8(e.length-1))throw Error("Unrecognised address format");return ze.cashaddrEncode("bitcoincash",1,e.slice(2,2+e.readUInt8(1)));default:throw Error("Unrecognised address format")}},function(t){var n=et([[0]],[[5]]);try{return n(t)}catch(n){return function(t){var n=ze.cashaddrDecode(t),r=n.type,i=n.hash;if(0===r)return e.concat([e.from([118,169,20]),e.from(i),e.from([136,172])]);if(1===r)return e.concat([e.from([169,20]),e.from(i),e.from([135])]);throw Error("Unrecognised address format")}(t)}}),_t("XLM",148,function(e){return ze.encodeCheck("ed25519PublicKey",e)},function(e){return ze.decodeCheck("ed25519PublicKey",e)}),_t("NANO",165,function(e){var t=We(Uint8Array.from(e)),n=W.blake2b(e,null,5).reverse();return"nano_"+t+We(n)},function(t){var n=function(e){if("string"!=typeof e)throw new Error("Input must be a string!");var t=e.length;const n=5*t%8,r=0===n?0:8-n;for(var i=0,a=0,s=0,o=new Uint8Array(Math.ceil(5*t/8)),f=0;f<t;f++)a=a<<5|He(e[f]),(i+=5)>=8&&(o[s++]=a>>>i+r-8&255,i-=8);return i>0&&(o[s++]=a<<i+r-8&255),0!==n&&(o=o.slice(1)),o}(t.slice(5));return e.from(n).slice(0,-5)}),_t("EOS",194,function(e){if(!ze.eosPublicKey.isValid(e))throw Error("Unrecognised address format");return ze.eosPublicKey.fromHex(e).toString()},function(e){if(!ze.eosPublicKey.isValid(e))throw Error("Unrecognised address format");return ze.eosPublicKey(e).toBuffer()}),_t("TRX",195,ze.bs58Encode,ze.bs58Decode),_t("NEO",239,ze.bs58Encode,ze.bs58Decode),_t("ALGO",283,function(e){var t=ut(e);return ze.b32encode(ze.hex2a(e.toString("hex").concat(t))).replace(/=/g,"")},function(e){var t=ze.b32decode(e);if(36!==t.length)throw Error("Unrecognised address format");var n=t.slice(0,-4),r=t.slice(-4),i=ut(n);if(r.toString("hex")!==i)throw Error("Unrecognised address format");return n}),tt("DIVI",301,[[30]],[[13]]),pt("IOTX",304,"io"),_t("DOT",354,function(e){return ze.ss58Encode(Uint8Array.from(e),0)},dt),_t("KSM",434,function(e){return ze.ss58Encode(Uint8Array.from(e),2)},dt),_t("FIL",461,function(e){return Ye("f",Ge(e[0],e.slice(1))).toString()},function(t){return function(t){!function(e){if(!e)throw Error("No bytes to validate.");if(e.length<3)throw Error("Address is too short to validate.");if("f"!==e[0]&&"t"!==e[0])throw Error("Unknown address network.");switch(e[1]){case"0":if(e.length>22)throw Error("Invalid ID address length.");break;case"1":if(41!==e.length)throw Error("Invalid secp256k1 address length.");break;case"2":if(41!==e.length)throw Error("Invalid Actor address length.");break;case"3":if(86!==e.length)throw Error("Invalid BLS address length.");break;default:throw new Error("Invalid address protocol.")}}(t);var n,r=t[0],i=parseInt(t[1],10),a=e.from([i]),s=t.slice(2);if(0===i)return Ge(i,e.from((function(e,t){for(var n=new Ke(e);;){var r=n.maskn(7).toNumber();if(n.ishrn(7),n.isZero()){t.write([r]);break}t.write([128|r])}}(s,n=new Ze),n.buffer)));var o,f,l=e.from(ze.b32decode(s.toUpperCase())),p=l.length,d=l.slice(0,p-4);if(o=l.slice(p-4,p),f=Je(e.concat([a,d])),e.compare(e.from(f),o))throw Error("Checksums don't match");var y=Ge(i,d);if(Ye(r,y)!==t)throw Error("Did not encode this address properly: "+t);return y}(t).str}),tt("CCA",489,[[11]],[[5]]),_t("SOL",501,fe.encode,fe.decode),tt("LRG",568,[[30]],[[13]]),it("CCXX",571,"ccx",[[137]],[[75],[5]]),tt("BPS",576,[[0]],[[5]]),ot("XDAI",700),ot("VET",703),pt("BNB",714,"bnb"),_t("HIVE",825,yt,ct),pt("ONE",1023,"one"),_t("ONT",1024,function(t){return ze.bs58Encode(e.concat([e.from([23]),t]))},function(e){var t=ze.bs58Decode(e);switch(t.readUInt8(0)){case 23:return t.slice(1);default:throw Error("Unrecognised address format")}}),{coinType:1729,decoder:function(t){var n=ze.bs58Decode(t).slice(3);switch(t.substring(0,3)){case"tz1":return e.concat([e.from([0,0]),n]);case"tz2":return e.concat([e.from([0,1]),n]);case"tz3":return e.concat([e.from([0,2]),n]);case"KT1":return e.concat([e.from([1]),n,e.from([0])]);default:throw Error("Unrecognised address format")}},encoder:function(t){if(22!==t.length&&21!==t.length)throw Error("Unrecognised address format");var n;switch(t.readUInt8(0)){case 0:if(0===t.readUInt8(1))n=e.from([6,161,159]);else if(1===t.readUInt8(1))n=e.from([6,161,161]);else{if(2!==t.readUInt8(1))throw Error("Unrecognised address format");n=e.from([6,161,164])}return ze.bs58Encode(e.concat([n,t.slice(2)]));case 1:return n=e.from([2,90,121]),ze.bs58Encode(e.concat([n,t.slice(1,21)]));default:throw Error("Unrecognised address format")}},name:"XTZ"},pt("ADA",1815,"addr"),_t("QTUM",2301,ze.bs58Encode,ze.bs58Decode),_t("ELA",2305,fe.encode,fe.decode),{coinType:3030,decoder:function(t){var n=e.alloc(20),r=new DataView(n.buffer,0,20),i=t.split(".");if(3!==i.length)throw Error("Unrecognised address format");var a=Number(i[0]),s=BigInt(i[1]),o=BigInt(i[2]);return r.setUint32(0,a),r.setBigUint64(4,s),r.setBigUint64(12,o),n},encoder:function(e){if(20!==e.length)throw Error("Unrecognised address format");var t=new DataView(e.buffer,0);return[t.getUint32(0),t.getBigUint64(4),t.getBigUint64(12)].join(".")},name:"HBAR"},_t("HNS",5353,function(e){if(20!==e.length)throw Error("P2WPKH must be 20 bytes");var t=[0].concat(c(e));return y("hs",t)},function(t){var n=d(t),r=n.words;if("hs"!==n.prefix)throw Error("Unrecognised address format");var i=r[0],a=u(r.slice(1));if(0!==i)throw Error("Bad program version");if(20!==a.length)throw Error("Witness program hash is the wrong size");return e.from(a)}),ot("CELO",52752)],St=Object.assign.apply(Object,[{}].concat(Dt.map(function(e){var t;return(t={})[e.name]=e,t}))),It=Object.assign.apply(Object,[{}].concat(Dt.map(function(e){var t;return(t={})[e.coinType]=e,t})))}).call(this,n("tjlA").Buffer)},m0LI:function(e,t){e.exports=function(e,t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e)){var n=[],r=!0,i=!1,a=void 0;try{for(var s,o=e[Symbol.iterator]();!(r=(s=o.next()).done)&&(n.push(s.value),!t||n.length!==t);r=!0);}catch(f){i=!0,a=f}finally{try{r||null==o.return||o.return()}finally{if(i)throw a}}return n}}},sDqg:function(e,t,n){"use strict";(function(e){var r=n("TqRt");Object.defineProperty(t,"__esModule",{value:!0}),t.decodeContenthash=function(e){var t,n,r;if(e.error)return{protocolType:null,decoded:e.error};if(e)try{t=i.default.decode(e);var a=i.default.getCodec(e);"ipfs-ns"===a?n="ipfs":"ipns-ns"===a?(t=s.default.decode(t).slice(2).toString(),n="ipns"):"swarm-ns"===a?n="bzz":"onion"===a?n="onion":"onion3"===a?n="onion3":t=e}catch(o){r=o.message}return{protocolType:n,decoded:t,error:r}},t.validateContent=function(e){return i.default.isHashOfType(e,i.default.Types.ipfs)||i.default.isHashOfType(e,i.default.Types.swarm)},t.isValidContenthash=function(e){try{var t=i.default.getCodec(e);return f.isHexString(e)&&o.includes(t)}catch(n){console.log(n)}},t.encodeContenthash=function(t){var n,r,a=!1;if(t){var o=t.match(/^(ipfs|ipns|bzz|onion|onion3):\/\/(.*)/)||t.match(/\/(ipfs)\/(.*)/)||t.match(/\/(ipns)\/(.*)/);o&&(r=o[1],n=o[2]);try{if("ipfs"===r)n.length>=4&&(a="0x"+i.default.encode("ipfs-ns",n));else if("ipns"===r){var f=s.default.encode(e.concat([e.from([0,n.length]),e.from(n)]));a="0x"+i.default.encode("ipns-ns",f)}else"bzz"===r?n.length>=4&&(a="0x"+i.default.fromSwarm(n)):"onion"===r?16==n.length&&(a="0x"+i.default.encode("onion",n)):"onion3"===r?56==n.length&&(a="0x"+i.default.encode("onion3",n)):console.warn("Unsupported protocol or invalid value",{contentType:r,text:t})}catch(l){console.warn("Error encoding content hash",{text:t,encoded:a})}}return a};var i=r(n("Voyk")),a=n("4VAs"),s=r(n("B3Rj")),o=["ipns-ns","ipfs-ns","swarm-ns","onion","onion3"],f=a.ethers.utils}).call(this,n("tjlA").Buffer)},vUID:function(e,t,n){"use strict";(function(e){Object.defineProperty(t,"__esModule",{value:!0}),t.namehash=function(t){for(var n="",s=0;s<32;s++)n+="00";if(t)for(var o=t.split("."),f=o.length-1;f>=0;f--){var l=void 0;if((0,r.isEncodedLabelhash)(o[f]))l=(0,r.decodeLabelhash)(o[f]);else{var p=(0,i.normalize)(o[f]);l=a(p)}n=a(new e(n+l,"hex"))}return"0x"+n};var r=n("2LwN"),i=n("LAvi"),a=n("HFX+").keccak_256}).call(this,n("tjlA").Buffer)},wTVA:function(e,t){e.exports=function(e){if(Array.isArray(e))return e}},wkBT:function(e,t){e.exports=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}}}]);