{
 "ok": true,
 "product": "contract-powers",
 "chain": "polygon",
 "chainId": 137,
 "address": "0x1bfd67037b42cf73acf2047067bd4f2c47d9bfd6",
 "type": "contract",
 "explorer": "https://polygonscan.com/address/0x1bfd67037b42cf73acf2047067bd4f2c47d9bfd6",
 "verified": true,
 "name": "UChildERC20Proxy",
 "compiler": "v0.6.6+commit.6c089d02",
 "license": "None",
 "sourceLookup": "etherscan-v2",
 "proxy": {
  "isProxy": true,
  "pattern": "etherscan-declared",
  "implementation": "0x7ffb3d637014488b63fb9858e279385685afc1e2",
  "implementationVerified": true,
  "evidence": [
   {
    "slot": "etherscan.Implementation",
    "value": "0x7ffb3d637014488b63fb9858e279385685afc1e2"
   }
  ],
  "implementationName": "UChildERC20"
 },
 "admin": {
  "owner": null,
  "source": null,
  "ownerType": null,
  "isContract": null,
  "note": "no owner()/getOwner()/admin() responded — access control may use roles (AccessControl) or be renounced"
 },
 "powers": [
  {
   "power": "ownership",
   "confidence": "declared",
   "evidence": [
    {
     "sig": "grantRole(bytes32,address)",
     "from": "implementation-abi"
    },
    {
     "sig": "revokeRole(bytes32,address)",
     "from": "implementation-abi"
    },
    {
     "selector": "0xd547741f",
     "sig": "revokeRole(bytes32,address)",
     "from": "implementation-bytecode"
    },
    {
     "selector": "0x2f2ff15d",
     "sig": "grantRole(bytes32,address)",
     "from": "implementation-bytecode"
    }
   ]
  },
  {
   "power": "upgrade",
   "confidence": "declared",
   "evidence": [
    {
     "sig": "updateImplementation(address)",
     "from": "abi"
    },
    {
     "selector": "0x025b22bc",
     "sig": "updateImplementation(address)",
     "from": "bytecode-selector"
    }
   ]
  }
 ],
 "bytecode": {
  "sizeBytes": 2949,
  "delegatecall": true,
  "selfdestruct": false,
  "create2": false,
  "knownSelectors": 6,
  "implementationSizeBytes": 14791
 },
 "bounty": {
  "covered": false,
  "match": "none",
  "corpus": {
   "immunefi": 186,
   "cantina": 52
  },
  "note": "Matched the contract name against a corpus of live bug-bounty programs (Immunefi + Cantina). A name match is NOT proof this address is in scope — open the program page and check the asset list.",
  "programs": []
 },
 "summary": "upgradeable proxy (etherscan-declared); retained powers: ownership, upgrade",
 "notAnAudit": "Facts read from chain state, bytecode and (where verified) the ABI. This is not a security audit, not a safety score, and not investment advice. Absence of a flag is not proof of absence.",
 "caveats": [
  "confidence=\"declared\" means the ABI exposes the function. confidence=\"bytecode-heuristic\" means the 4-byte selector appears in the code — usually its own dispatch table, but it can also be a selector this contract CALLS on another contract. Only a verified ABI settles it.",
  "admin.ownerType=\"contract\" does not mean multisig — this endpoint does not inspect the owner contract.",
  "bounty.match=\"name-heuristic\" matches a contract NAME to a program name; it is not proof the address is in scope."
 ],
 "latencyMs": 1504,
 "builtAt": "2026-08-29T01:54:38.128Z",
 "canonical": "https://agent.zbang.net/c/polygon/0x1bfd67037b42cf73acf2047067bd4f2c47d9bfd6/",
 "label": "WBTC (Polygon)"
}