{
  "_format": "hh-sol-artifact-1",
  "contractName": "StkBNBOracle",
  "sourceName": "contracts/oracles/StkBNBOracle.sol",
  "abi": [
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "stakePool",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "stkBNB",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "resilientOracle",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "annualGrowthRate",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "_snapshotInterval",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "initialSnapshotMaxExchangeRate",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "initialSnapshotTimestamp",
          "type": "uint256"
        },
        {
          "internalType": "address",
          "name": "accessControlManager",
          "type": "address"
        },
        {
          "internalType": "uint256",
          "name": "_snapshotGap",
          "type": "uint256"
        }
      ],
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "inputs": [],
      "name": "InvalidGrowthRate",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "InvalidInitialSnapshot",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "InvalidSnapshotMaxExchangeRate",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "InvalidTokenAddress",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "PoolTokenSupplyIsZero",
      "type": "error"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "sender",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "calledContract",
          "type": "address"
        },
        {
          "internalType": "string",
          "name": "methodSignature",
          "type": "string"
        }
      ],
      "name": "Unauthorized",
      "type": "error"
    },
    {
      "inputs": [],
      "name": "ZeroAddressNotAllowed",
      "type": "error"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "uint256",
          "name": "oldGrowthRatePerSecond",
          "type": "uint256"
        },
        {
          "indexed": true,
          "internalType": "uint256",
          "name": "newGrowthRatePerSecond",
          "type": "uint256"
        },
        {
          "indexed": true,
          "internalType": "uint256",
          "name": "oldSnapshotInterval",
          "type": "uint256"
        },
        {
          "indexed": false,
          "internalType": "uint256",
          "name": "newSnapshotInterval",
          "type": "uint256"
        }
      ],
      "name": "GrowthRateUpdated",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "uint256",
          "name": "oldSnapshotGap",
          "type": "uint256"
        },
        {
          "indexed": true,
          "internalType": "uint256",
          "name": "newSnapshotGap",
          "type": "uint256"
        }
      ],
      "name": "SnapshotGapUpdated",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "uint256",
          "name": "maxExchangeRate",
          "type": "uint256"
        },
        {
          "indexed": true,
          "internalType": "uint256",
          "name": "timestamp",
          "type": "uint256"
        }
      ],
      "name": "SnapshotUpdated",
      "type": "event"
    },
    {
      "inputs": [],
      "name": "ACCESS_CONTROL_MANAGER",
      "outputs": [
        {
          "internalType": "contract IAccessControlManagerV8",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "CORRELATED_TOKEN",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "NATIVE_TOKEN_ADDR",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "RESILIENT_ORACLE",
      "outputs": [
        {
          "internalType": "contract ResilientOracleInterface",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "STAKE_POOL",
      "outputs": [
        {
          "internalType": "contract IPStakePool",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "UNDERLYING_TOKEN",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getMaxAllowedExchangeRate",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "asset",
          "type": "address"
        }
      ],
      "name": "getPrice",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getUnderlyingAmount",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "growthRatePerSecond",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "isCapped",
      "outputs": [
        {
          "internalType": "bool",
          "name": "",
          "type": "bool"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "_annualGrowthRate",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "_snapshotInterval",
          "type": "uint256"
        }
      ],
      "name": "setGrowthRate",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "_snapshotMaxExchangeRate",
          "type": "uint256"
        },
        {
          "internalType": "uint256",
          "name": "_snapshotTimestamp",
          "type": "uint256"
        }
      ],
      "name": "setSnapshot",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint256",
          "name": "_snapshotGap",
          "type": "uint256"
        }
      ],
      "name": "setSnapshotGap",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "snapshotGap",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "snapshotInterval",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "snapshotMaxExchangeRate",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "snapshotTimestamp",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "updateSnapshot",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    }
  ],
  "bytecode": "0x610120604052348015610010575f80fd5b506040516111ed3803806111ed83398101604081905261002f916101b6565b8773bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb8888888888888861005a6301e133808761028a565b5f81905515801561006a57505f85115b8061007e57505f805411801561007e575084155b1561009c576040516353b7e64560e11b815260040160405180910390fd5b8315806100a7575082155b80156100b257505f85115b156100d05760405163b8a5589b60e01b815260040160405180910390fd5b6100d98961014b565b6100e28861014b565b6100eb8761014b565b6100f48261014b565b6001600160a01b0398891660805296881660a05294871660c052600192909255600255600355506004919091551660e05261012e8961014b565b5050506001600160a01b03909516610100525061029d9350505050565b6001600160a01b038116610172576040516342bcdf7f60e11b815260040160405180910390fd5b50565b5f6001600160a01b0382165b92915050565b61019081610175565b8114610172575f80fd5b805161018181610187565b80610190565b8051610181816101a5565b5f805f805f805f805f6101208a8c0312156101d2576101d25f80fd5b5f6101dd8c8c61019a565b99505060206101ee8c828d0161019a565b98505060406101ff8c828d0161019a565b97505060606102108c828d016101ab565b96505060806102218c828d016101ab565b95505060a06102328c828d016101ab565b94505060c06102438c828d016101ab565b93505060e06102548c828d0161019a565b9250506101006102668c828d016101ab565b9150509295985092959850929598565b634e487b7160e01b5f52601260045260245ffd5b5f8261029857610298610276565b500490565b60805160a05160c05160e05161010051610edb6103125f395f818161017801526106ce01525f81816101c8015261095901525f81816102800152818161059a01526107ec01525f8181610144015281816105c7015261081b01525f818161023d015281816102d8015261089a0152610edb5ff3fe608060405234801561000f575f80fd5b506004361061011c575f3560e01c8063671528d4116100a9578063a4edcd4c1161006e578063a4edcd4c1461027b578063a9534f8a146102a2578063abb85613146102bd578063ac5a693e146102c5578063bdf13af2146102cd575f80fd5b8063671528d41461021b578063692404261461023057806369818a35146102385780637fc4e4a01461025f5780639c43eb5414610272575f80fd5b806341976e09116100ef57806341976e09146101b057806345be2dc7146101c35780635213f9c8146101ea578063596efe6f146101ff578063643d813d14610208575f80fd5b806307d0413c1461012057806329db1be61461013f5780633a26dc4f146101735780634169d245146101a7575b5f80fd5b61012960015481565b6040516101369190610a0a565b60405180910390f35b6101667f000000000000000000000000000000000000000000000000000000000000000081565b6040516101369190610a37565b61019a7f000000000000000000000000000000000000000000000000000000000000000081565b6040516101369190610a62565b61012960045481565b6101296101be366004610a91565b6102d5565b61019a7f000000000000000000000000000000000000000000000000000000000000000081565b6101fd6101f8366004610ac8565b610386565b005b61012960025481565b6101fd610216366004610ae6565b6103f7565b6102236104cb565b6040516101369190610b28565b6101fd610506565b6101667f000000000000000000000000000000000000000000000000000000000000000081565b6101fd61026d366004610ae6565b610652565b61012960035481565b61019a7f000000000000000000000000000000000000000000000000000000000000000081565b61016673bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb81565b6101296106ca565b6101295f5481565b61012961079b565b5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b03161461032857604051630f58058360e11b815260040160405180910390fd5b5f6103316106ca565b90506001545f0361034c57610345816107e8565b9392505050565b5f61035561079b565b90505f818311801561036657508115155b6103705782610372565b815b905061037d816107e8565b95945050505050565b6103c46040518060400160405280601781526020017f736574536e617073686f744761702875696e7432353629000000000000000000815250610940565b6004546040518291907feb3716d3f8388c182853c1dc98b18931f3a600bbab31f2ff48631f6412e4997f905f90a3600455565b6104356040518060400160405280601e81526020017f73657447726f777468526174652875696e743235362c75696e74323536290000815250610940565b5f546104456301e1338084610b5e565b5f81905515801561045557505f82115b8061046957505f8054118015610469575081155b15610487576040516353b7e64560e11b815260040160405180910390fd5b6001545f54827fa65cbeb0e28a8803a912daac67c472c160aa01e2c988755fa424f290321de608856040516104bc9190610a0a565b60405180910390a45060015550565b5f6001545f036104da57505f90565b5f6104e361079b565b9050805f036104f3575f91505090565b5f6104fc6106ca565b9190911192915050565b6001546003546105169042610b71565b10806105225750600154155b1561052957565b5f6105326106ca565b90505f61053d61079b565b905060045481831161054f5782610551565b815b61055b9190610b84565b6002819055426003555f0361058357604051635f18388760e01b815260040160405180910390fd5b60405163b62cad6960e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063b62cad69906105ef907f000000000000000000000000000000000000000000000000000000000000000090600401610a37565b5f604051808303815f87803b158015610606575f80fd5b505af1158015610618573d5f803e3d5ffd5b505050506003546002547f2c8c8fcb8c77a0ca21dcc3ab8fc0ade761557e76b1240cb40ebbef9fcee00f7d60405160405180910390a35050565b6106906040518060400160405280601c81526020017f736574536e617073686f742875696e743235362c75696e743235362900000000815250610940565b60028290556003819055604051819083907f2c8c8fcb8c77a0ca21dcc3ab8fc0ade761557e76b1240cb40ebbef9fcee00f7d905f90a35050565b5f807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316633ba0b9a96040518163ffffffff1660e01b81526004016040805180830381865afa158015610727573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061074b9190610c45565b905080602001515f036107715760405163386c978360e21b815260040160405180910390fd5b6020810151815161078b90670de0b6b3a764000090610c63565b6107959190610b5e565b91505090565b5f80600354426107ab9190610b71565b90505f670de0b6b3a7640000825f546002546107c79190610c63565b6107d19190610c63565b6107db9190610b5e565b6002546103459190610b84565b5f807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166341976e097f00000000000000000000000000000000000000000000000000000000000000006040518263ffffffff1660e01b81526004016108569190610a37565b602060405180830381865afa158015610871573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108959190610c82565b90505f7f000000000000000000000000000000000000000000000000000000000000000090505f816001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108f8573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061091c9190610cb4565b60ff16905061092c81600a610dde565b6109368487610c63565b61037d9190610b5e565b6040516318c5e8ab60e01b81525f906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906318c5e8ab906109909033908690600401610e27565b602060405180830381865afa1580156109ab573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109cf9190610e5a565b9050806109fe57333083604051634a3fa29360e01b81526004016109f593929190610e78565b60405180910390fd5b5050565b805b82525050565b60208101610a188284610a02565b92915050565b5f6001600160a01b038216610a18565b610a0481610a1e565b60208101610a188284610a2e565b5f610a1882610a1e565b5f610a1882610a45565b610a0481610a4f565b60208101610a188284610a59565b610a7981610a1e565b8114610a83575f80fd5b50565b8035610a1881610a70565b5f60208284031215610aa457610aa45f80fd5b5f610aaf8484610a86565b949350505050565b80610a79565b8035610a1881610ab7565b5f60208284031215610adb57610adb5f80fd5b5f610aaf8484610abd565b5f8060408385031215610afa57610afa5f80fd5b5f610b058585610abd565b9250506020610b1685828601610abd565b9150509250929050565b801515610a04565b60208101610a188284610b20565b634e487b7160e01b5f52601260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f82610b6c57610b6c610b36565b500490565b81810381811115610a1857610a18610b4a565b80820180821115610a1857610a18610b4a565b634e487b7160e01b5f52604160045260245ffd5b601f19601f830116810181811067ffffffffffffffff82111715610bd157610bd1610b97565b6040525050565b5f610be260405190565b9050610bee8282610bab565b919050565b8051610a1881610ab7565b5f60408284031215610c1157610c115f80fd5b610c1b6040610bd8565b90505f610c288484610bf3565b8252506020610c3984848301610bf3565b60208301525092915050565b5f60408284031215610c5857610c585f80fd5b5f610aaf8484610bfe565b818102808215838204851417610c7b57610c7b610b4a565b5092915050565b5f60208284031215610c9557610c955f80fd5b5f610aaf8484610bf3565b60ff8116610a79565b8051610a1881610ca0565b5f60208284031215610cc757610cc75f80fd5b5f610aaf8484610ca9565b80825b6001851115610d1157808604811115610cf057610cf0610b4a565b6001851615610cfe57908102905b8002610d0a8560011c90565b9450610cd5565b94509492505050565b5f82610d2857506001610345565b81610d3457505f610345565b8160018114610d4a5760028114610d5457610d81565b6001915050610345565b60ff841115610d6557610d65610b4a565b8360020a915084821115610d7b57610d7b610b4a565b50610345565b5060208310610133831016604e8410600b8410161715610db4575081810a83811115610daf57610daf610b4a565b610345565b610dc18484846001610cd2565b92509050818404811115610dd757610dd7610b4a565b0292915050565b5f6103455f198484610d1a565b8281835e505f910152565b5f610dff825190565b808452602084019350610e16818560208601610deb565b601f01601f19169290920192915050565b60408101610e358285610a2e565b8181036020830152610aaf8184610df6565b801515610a79565b8051610a1881610e47565b5f60208284031215610e6d57610e6d5f80fd5b5f610aaf8484610e4f565b60608101610e868286610a2e565b610e936020830185610a2e565b818103604083015261037d8184610df656fea2646970667358221220e61f3c3a4be851eb2dda7266d7c9ab7da72c08ae150bff35b79a7042d1ed0a8864736f6c63430008190033",
  "deployedBytecode": "0x608060405234801561000f575f80fd5b506004361061011c575f3560e01c8063671528d4116100a9578063a4edcd4c1161006e578063a4edcd4c1461027b578063a9534f8a146102a2578063abb85613146102bd578063ac5a693e146102c5578063bdf13af2146102cd575f80fd5b8063671528d41461021b578063692404261461023057806369818a35146102385780637fc4e4a01461025f5780639c43eb5414610272575f80fd5b806341976e09116100ef57806341976e09146101b057806345be2dc7146101c35780635213f9c8146101ea578063596efe6f146101ff578063643d813d14610208575f80fd5b806307d0413c1461012057806329db1be61461013f5780633a26dc4f146101735780634169d245146101a7575b5f80fd5b61012960015481565b6040516101369190610a0a565b60405180910390f35b6101667f000000000000000000000000000000000000000000000000000000000000000081565b6040516101369190610a37565b61019a7f000000000000000000000000000000000000000000000000000000000000000081565b6040516101369190610a62565b61012960045481565b6101296101be366004610a91565b6102d5565b61019a7f000000000000000000000000000000000000000000000000000000000000000081565b6101fd6101f8366004610ac8565b610386565b005b61012960025481565b6101fd610216366004610ae6565b6103f7565b6102236104cb565b6040516101369190610b28565b6101fd610506565b6101667f000000000000000000000000000000000000000000000000000000000000000081565b6101fd61026d366004610ae6565b610652565b61012960035481565b61019a7f000000000000000000000000000000000000000000000000000000000000000081565b61016673bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb81565b6101296106ca565b6101295f5481565b61012961079b565b5f7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316826001600160a01b03161461032857604051630f58058360e11b815260040160405180910390fd5b5f6103316106ca565b90506001545f0361034c57610345816107e8565b9392505050565b5f61035561079b565b90505f818311801561036657508115155b6103705782610372565b815b905061037d816107e8565b95945050505050565b6103c46040518060400160405280601781526020017f736574536e617073686f744761702875696e7432353629000000000000000000815250610940565b6004546040518291907feb3716d3f8388c182853c1dc98b18931f3a600bbab31f2ff48631f6412e4997f905f90a3600455565b6104356040518060400160405280601e81526020017f73657447726f777468526174652875696e743235362c75696e74323536290000815250610940565b5f546104456301e1338084610b5e565b5f81905515801561045557505f82115b8061046957505f8054118015610469575081155b15610487576040516353b7e64560e11b815260040160405180910390fd5b6001545f54827fa65cbeb0e28a8803a912daac67c472c160aa01e2c988755fa424f290321de608856040516104bc9190610a0a565b60405180910390a45060015550565b5f6001545f036104da57505f90565b5f6104e361079b565b9050805f036104f3575f91505090565b5f6104fc6106ca565b9190911192915050565b6001546003546105169042610b71565b10806105225750600154155b1561052957565b5f6105326106ca565b90505f61053d61079b565b905060045481831161054f5782610551565b815b61055b9190610b84565b6002819055426003555f0361058357604051635f18388760e01b815260040160405180910390fd5b60405163b62cad6960e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063b62cad69906105ef907f000000000000000000000000000000000000000000000000000000000000000090600401610a37565b5f604051808303815f87803b158015610606575f80fd5b505af1158015610618573d5f803e3d5ffd5b505050506003546002547f2c8c8fcb8c77a0ca21dcc3ab8fc0ade761557e76b1240cb40ebbef9fcee00f7d60405160405180910390a35050565b6106906040518060400160405280601c81526020017f736574536e617073686f742875696e743235362c75696e743235362900000000815250610940565b60028290556003819055604051819083907f2c8c8fcb8c77a0ca21dcc3ab8fc0ade761557e76b1240cb40ebbef9fcee00f7d905f90a35050565b5f807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316633ba0b9a96040518163ffffffff1660e01b81526004016040805180830381865afa158015610727573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061074b9190610c45565b905080602001515f036107715760405163386c978360e21b815260040160405180910390fd5b6020810151815161078b90670de0b6b3a764000090610c63565b6107959190610b5e565b91505090565b5f80600354426107ab9190610b71565b90505f670de0b6b3a7640000825f546002546107c79190610c63565b6107d19190610c63565b6107db9190610b5e565b6002546103459190610b84565b5f807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166341976e097f00000000000000000000000000000000000000000000000000000000000000006040518263ffffffff1660e01b81526004016108569190610a37565b602060405180830381865afa158015610871573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108959190610c82565b90505f7f000000000000000000000000000000000000000000000000000000000000000090505f816001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108f8573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061091c9190610cb4565b60ff16905061092c81600a610dde565b6109368487610c63565b61037d9190610b5e565b6040516318c5e8ab60e01b81525f906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906318c5e8ab906109909033908690600401610e27565b602060405180830381865afa1580156109ab573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109cf9190610e5a565b9050806109fe57333083604051634a3fa29360e01b81526004016109f593929190610e78565b60405180910390fd5b5050565b805b82525050565b60208101610a188284610a02565b92915050565b5f6001600160a01b038216610a18565b610a0481610a1e565b60208101610a188284610a2e565b5f610a1882610a1e565b5f610a1882610a45565b610a0481610a4f565b60208101610a188284610a59565b610a7981610a1e565b8114610a83575f80fd5b50565b8035610a1881610a70565b5f60208284031215610aa457610aa45f80fd5b5f610aaf8484610a86565b949350505050565b80610a79565b8035610a1881610ab7565b5f60208284031215610adb57610adb5f80fd5b5f610aaf8484610abd565b5f8060408385031215610afa57610afa5f80fd5b5f610b058585610abd565b9250506020610b1685828601610abd565b9150509250929050565b801515610a04565b60208101610a188284610b20565b634e487b7160e01b5f52601260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b5f82610b6c57610b6c610b36565b500490565b81810381811115610a1857610a18610b4a565b80820180821115610a1857610a18610b4a565b634e487b7160e01b5f52604160045260245ffd5b601f19601f830116810181811067ffffffffffffffff82111715610bd157610bd1610b97565b6040525050565b5f610be260405190565b9050610bee8282610bab565b919050565b8051610a1881610ab7565b5f60408284031215610c1157610c115f80fd5b610c1b6040610bd8565b90505f610c288484610bf3565b8252506020610c3984848301610bf3565b60208301525092915050565b5f60408284031215610c5857610c585f80fd5b5f610aaf8484610bfe565b818102808215838204851417610c7b57610c7b610b4a565b5092915050565b5f60208284031215610c9557610c955f80fd5b5f610aaf8484610bf3565b60ff8116610a79565b8051610a1881610ca0565b5f60208284031215610cc757610cc75f80fd5b5f610aaf8484610ca9565b80825b6001851115610d1157808604811115610cf057610cf0610b4a565b6001851615610cfe57908102905b8002610d0a8560011c90565b9450610cd5565b94509492505050565b5f82610d2857506001610345565b81610d3457505f610345565b8160018114610d4a5760028114610d5457610d81565b6001915050610345565b60ff841115610d6557610d65610b4a565b8360020a915084821115610d7b57610d7b610b4a565b50610345565b5060208310610133831016604e8410600b8410161715610db4575081810a83811115610daf57610daf610b4a565b610345565b610dc18484846001610cd2565b92509050818404811115610dd757610dd7610b4a565b0292915050565b5f6103455f198484610d1a565b8281835e505f910152565b5f610dff825190565b808452602084019350610e16818560208601610deb565b601f01601f19169290920192915050565b60408101610e358285610a2e565b8181036020830152610aaf8184610df6565b801515610a79565b8051610a1881610e47565b5f60208284031215610e6d57610e6d5f80fd5b5f610aaf8484610e4f565b60608101610e868286610a2e565b610e936020830185610a2e565b818103604083015261037d8184610df656fea2646970667358221220e61f3c3a4be851eb2dda7266d7c9ab7da72c08ae150bff35b79a7042d1ed0a8864736f6c63430008190033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
