{
  "_format": "hh-sol-artifact-1",
  "contractName": "OracleTest",
  "sourceName": "contracts/elixir-periphery/test/OracleTest.sol",
  "abi": [
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "pool",
          "type": "address"
        },
        {
          "internalType": "uint32",
          "name": "secondsAgo",
          "type": "uint32"
        }
      ],
      "name": "consult",
      "outputs": [
        {
          "internalType": "int24",
          "name": "arithmeticMeanTick",
          "type": "int24"
        },
        {
          "internalType": "uint128",
          "name": "harmonicMeanLiquidity",
          "type": "uint128"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "pool",
          "type": "address"
        }
      ],
      "name": "getBlockStartingTickAndLiquidity",
      "outputs": [
        {
          "internalType": "int24",
          "name": "",
          "type": "int24"
        },
        {
          "internalType": "uint128",
          "name": "",
          "type": "uint128"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address[]",
          "name": "tokens",
          "type": "address[]"
        },
        {
          "internalType": "int24[]",
          "name": "ticks",
          "type": "int24[]"
        }
      ],
      "name": "getChainedPrice",
      "outputs": [
        {
          "internalType": "int256",
          "name": "syntheticTick",
          "type": "int256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "pool",
          "type": "address"
        },
        {
          "internalType": "uint32",
          "name": "period",
          "type": "uint32"
        }
      ],
      "name": "getGasCostOfConsult",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "int24",
          "name": "tick",
          "type": "int24"
        },
        {
          "internalType": "uint128",
          "name": "baseAmount",
          "type": "uint128"
        },
        {
          "internalType": "address",
          "name": "baseToken",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "quoteToken",
          "type": "address"
        }
      ],
      "name": "getGasCostOfGetQuoteAtTick",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "pool",
          "type": "address"
        }
      ],
      "name": "getOldestObservationSecondsAgo",
      "outputs": [
        {
          "internalType": "uint32",
          "name": "secondsAgo",
          "type": "uint32"
        },
        {
          "internalType": "uint32",
          "name": "currentTimestamp",
          "type": "uint32"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "int24",
          "name": "tick",
          "type": "int24"
        },
        {
          "internalType": "uint128",
          "name": "baseAmount",
          "type": "uint128"
        },
        {
          "internalType": "address",
          "name": "baseToken",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "quoteToken",
          "type": "address"
        }
      ],
      "name": "getQuoteAtTick",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "quoteAmount",
          "type": "uint256"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "inputs": [
        {
          "components": [
            {
              "internalType": "int24",
              "name": "tick",
              "type": "int24"
            },
            {
              "internalType": "uint128",
              "name": "weight",
              "type": "uint128"
            }
          ],
          "internalType": "struct OracleLibrary.WeightedTickData[]",
          "name": "observations",
          "type": "tuple[]"
        }
      ],
      "name": "getWeightedArithmeticMeanTick",
      "outputs": [
        {
          "internalType": "int24",
          "name": "arithmeticMeanWeightedTick",
          "type": "int24"
        }
      ],
      "stateMutability": "pure",
      "type": "function"
    }
  ],
  "bytecode": "0x608060405234801561001057600080fd5b50611573806100206000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c8063824134891161005b57806382413489146100fd578063ab34b0fc14610110578063bbe8f41914610130578063e6c4fbe01461014357610088565b8063333b19a81461008d57806343c57a27146100b75780636a816ff9146100d75780637059b38a146100ea575b600080fd5b6100a061009b366004611272565b610164565b6040516100ae9291906114bf565b60405180910390f35b6100ca6100c536600461145e565b61017a565b6040516100ae91906114db565b6100ca6100e536600461145e565b610191565b6100ca6100f83660046112ca565b6101b0565b6100a061010b36600461128c565b6101c3565b61012361011e366004611388565b6101db565b6040516100ae91906114b1565b6100ca61013e36600461128c565b6101ee565b610156610151366004611272565b61020a565b6040516100ae9291906114e4565b6000806101708361021f565b915091505b915091565b600061018885858585610565565b95945050505050565b6000805a90506101a386868686610565565b505a900395945050505050565b60006101bc838361065c565b9392505050565b6000806101d0848461073d565b915091509250929050565b60006101e682610b53565b90505b919050565b6000805a90506101fe848461073d565b50505a90039392505050565b60008061021683610c0f565b93429350915050565b6000806000806000856001600160a01b0316633850c7bd6040518163ffffffff1660e01b815260040160e06040518083038186803b15801561026057600080fd5b505afa158015610274573d6000803e3d6000fd5b505050506040513d60e081101561028a57600080fd5b50602081015160408201516060909201519094509092509050600161ffff8216116102e2576040805162461bcd60e51b81526020600482015260036024820152624e454f60e81b604482015290519081900360640190fd5b6000806000886001600160a01b031663252c09d7866040518263ffffffff1660e01b8152600401808261ffff16815260200191505060a06040518083038186803b15801561032f57600080fd5b505afa158015610343573d6000803e3d6000fd5b505050506040513d60a081101561035957600080fd5b508051602082015160409092015190945090925090504263ffffffff908116908416146103f75785896001600160a01b0316631a6865026040518163ffffffff1660e01b815260040160206040518083038186803b1580156103ba57600080fd5b505afa1580156103ce573d6000803e3d6000fd5b505050506040513d60208110156103e457600080fd5b5051909850965061017595505050505050565b60008461ffff1660018661ffff168861ffff1601038161041357fe5b0690506000806000808d6001600160a01b031663252c09d7866040518263ffffffff1660e01b81526004018082815260200191505060a06040518083038186803b15801561046057600080fd5b505afa158015610474573d6000803e3d6000fd5b505050506040513d60a081101561048a57600080fd5b5080516020820151604083015160609093015191965094509092509050806104df576040805162461bcd60e51b81526020600482015260036024820152624f4e4960e81b604482015290519081900360640190fd5b83880363ffffffff811684890360060b816104f657fe5b059b50600077ffffffffffffffffffffffffffffffffffffffff0000000084890360201b1663ffffffff83166001600160a01b030277ffffffffffffffffffffffffffffffffffffffffffffffff168161054c57fe5b9d9f50909c049c50505050505050505050505050915091565b60008061057186610dde565b90506001600160801b036001600160a01b038216116105e0576001600160a01b03808216800290848116908616106105c0576105bb600160c01b876001600160801b031683611110565b6105d8565b6105d881876001600160801b0316600160c01b611110565b925050610653565b60006105ff6001600160a01b0383168068010000000000000000611110565b9050836001600160a01b0316856001600160a01b03161061063757610632600160801b876001600160801b031683611110565b61064f565b61064f81876001600160801b0316600160801b611110565b9250505b50949350505050565b6000815160018451031461069c576040805162461bcd60e51b8152602060048201526002602482015261111360f21b604482015290519081900360640190fd5b60015b82518111610736578381815181106106b357fe5b60200260200101516001600160a01b03168460018303815181106106d357fe5b60200260200101516001600160a01b03161061070d578260018203815181106106f857fe5b602002602001015160020b820391508161072d565b82600182038151811061071c57fe5b602002602001015160020b82019150815b5060010161069f565b5092915050565b60008063ffffffff831661077d576040805162461bcd60e51b8152602060048201526002602482015261042560f41b604482015290519081900360640190fd5b60408051600280825260608201835260009260208301908036833701905050905083816000815181106107ac57fe5b602002602001019063ffffffff16908163ffffffff16815250506000816001815181106107d557fe5b63ffffffff90921660209283029190910182015260405163883bdbfd60e01b81526004810182815283516024830152835160009384936001600160a01b038b169363883bdbfd9388939192839260449091019185820191028083838b5b8381101561084a578181015183820152602001610832565b505050509050019250505060006040518083038186803b15801561086d57600080fd5b505afa158015610881573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405260608110156108aa57600080fd5b81019080805160405193929190846401000000008211156108ca57600080fd5b9083019060208201858111156108df57600080fd5b82518660208202830111640100000000821117156108fc57600080fd5b82525081516020918201928201910280838360005b83811015610929578181015183820152602001610911565b505050509050016040526020018051604051939291908464010000000082111561095257600080fd5b90830190602082018581111561096757600080fd5b825186602082028301116401000000008211171561098457600080fd5b82525081516020918201928201910280838360005b838110156109b1578181015183820152602001610999565b50505050905001604052602001805160405193929190846401000000008211156109da57600080fd5b9083019060208201858111156109ef57600080fd5b8251866020820283011164010000000082111715610a0c57600080fd5b82525081516020918201928201910280838360005b83811015610a39578181015183820152602001610a21565b505050509050016040525050505091509150600082600081518110610a5a57fe5b602002602001015183600181518110610a6f57fe5b6020026020010151039050600082600081518110610a8957fe5b602002602001015183600181518110610a9e57fe5b60200260200101510390508763ffffffff168260060b81610abb57fe5b05965060008260060b128015610ae557508763ffffffff168260060b81610ade57fe5b0760060b15155b15610af257600019909601955b63ffffffff88166001600160a01b030277ffffffffffffffffffffffffffffffffffffffff00000000602083901b1677ffffffffffffffffffffffffffffffffffffffffffffffff821681610b4357fe5b0496505050505050509250929050565b6000806000805b8451811015610bd657848181518110610b6f57fe5b6020026020010151602001516001600160801b0316858281518110610b9057fe5b60200260200101516000015160020b0283019250848181518110610bb057fe5b6020026020010151602001516001600160801b0316820191508080600101915050610b5a565b50808281610be057fe5b059250600082128015610bfb5750808281610bf757fe5b0715155b15610c0857600019909201915b5050919050565b6000806000836001600160a01b0316633850c7bd6040518163ffffffff1660e01b815260040160e06040518083038186803b158015610c4d57600080fd5b505afa158015610c61573d6000803e3d6000fd5b505050506040513d60e0811015610c7757600080fd5b506040810151606090910151909250905061ffff8116610cc3576040805162461bcd60e51b81526020600482015260026024820152614e4960f01b604482015290519081900360640190fd5b600080856001600160a01b031663252c09d78461ffff168660010161ffff1681610ce957fe5b066040518263ffffffff1660e01b8152600401808261ffff16815260200191505060a06040518083038186803b158015610d2257600080fd5b505afa158015610d36573d6000803e3d6000fd5b505050506040513d60a0811015610d4c57600080fd5b508051606090910151909250905080610dd357856001600160a01b031663252c09d760006040518263ffffffff1660e01b81526004018082815260200191505060a06040518083038186803b158015610da457600080fd5b505afa158015610db8573d6000803e3d6000fd5b505050506040513d60a0811015610dce57600080fd5b505191505b504203949350505050565b60008060008360020b12610df5578260020b610dfd565b8260020b6000035b9050620d89e8811115610e3b576040805162461bcd60e51b81526020600482015260016024820152601560fa1b604482015290519081900360640190fd5b600060018216610e4f57600160801b610e61565b6ffffcb933bd6fad37aa2d162d1a5940015b70ffffffffffffffffffffffffffffffffff1690506002821615610e95576ffff97272373d413259a46990580e213a0260801c5b6004821615610eb4576ffff2e50f5f656932ef12357cf3c7fdcc0260801c5b6008821615610ed3576fffe5caca7e10e4e61c3624eaa0941cd00260801c5b6010821615610ef2576fffcb9843d60f6159c9db58835c9266440260801c5b6020821615610f11576fff973b41fa98c081472e6896dfb254c00260801c5b6040821615610f30576fff2ea16466c96a3843ec78b326b528610260801c5b6080821615610f4f576ffe5dee046a99a2a811c461f1969c30530260801c5b610100821615610f6f576ffcbe86c7900a88aedcffc83b479aa3a40260801c5b610200821615610f8f576ff987a7253ac413176f2b074cf7815e540260801c5b610400821615610faf576ff3392b0822b70005940c7a398e4b70f30260801c5b610800821615610fcf576fe7159475a2c29b7443b29c7fa6e889d90260801c5b611000821615610fef576fd097f3bdfd2022b8845ad8f792aa58250260801c5b61200082161561100f576fa9f746462d870fdf8a65dc1f90e061e50260801c5b61400082161561102f576f70d869a156d2a1b890bb3df62baf32f70260801c5b61800082161561104f576f31be135f97d08fd981231505542fcfa60260801c5b62010000821615611070576f09aa508b5b7a84e1c677de54f3e99bc90260801c5b62020000821615611090576e5d6af8dedb81196699c329225ee6040260801c5b620400008216156110af576d2216e584f5fa1ea926041bedfe980260801c5b620800008216156110cc576b048a170391f7dc42444e8fa20260801c5b60008460020b13156110e75780600019816110e357fe5b0490505b6401000000008106156110fb5760016110fe565b60005b60ff16602082901c0192505050919050565b6000808060001985870986860292508281109083900303905080611146576000841161113b57600080fd5b5082900490506101bc565b80841161115257600080fd5b6000848688096000868103871696879004966002600389028118808a02820302808a02820302808a02820302808a02820302808a02820302808a02909103029181900381900460010186841190950394909402919094039290920491909117919091029150509392505050565b80356001600160a01b03811681146101e957600080fd5b600082601f8301126111e6578081fd5b813560206111fb6111f68361151f565b6114fb565b8281528181019085830183850287018401881015611217578586fd5b855b8581101561123c5761122a82611249565b84529284019290840190600101611219565b5090979650505050505050565b8035600281900b81146101e957600080fd5b80356001600160801b03811681146101e957600080fd5b600060208284031215611283578081fd5b6101bc826111bf565b6000806040838503121561129e578081fd5b6112a7836111bf565b9150602083013563ffffffff811681146112bf578182fd5b809150509250929050565b600080604083850312156112dc578182fd5b823567ffffffffffffffff808211156112f3578384fd5b818501915085601f830112611306578384fd5b813560206113166111f68361151f565b82815281810190858301838502870184018b1015611332578889fd5b8896505b8487101561135b57611347816111bf565b835260019690960195918301918301611336565b5096505086013592505080821115611371578283fd5b5061137e858286016111d6565b9150509250929050565b6000602080838503121561139a578182fd5b823567ffffffffffffffff808211156113b1578384fd5b818501915085601f8301126113c4578384fd5b81356113d26111f68261151f565b818152848101908486016040808502870188018b10156113f0578889fd5b8896505b8487101561144f5780828c03121561140a578889fd5b8051818101818110888211171561141d57fe5b825261142883611249565b815261143589840161125b565b818a015284526001969096019592870192908101906113f4565b50909998505050505050505050565b60008060008060808587031215611473578182fd5b61147c85611249565b935061148a6020860161125b565b9250611498604086016111bf565b91506114a6606086016111bf565b905092959194509250565b60029190910b815260200190565b60029290920b82526001600160801b0316602082015260400190565b90815260200190565b63ffffffff92831681529116602082015260400190565b60405181810167ffffffffffffffff8111828210171561151757fe5b604052919050565b600067ffffffffffffffff82111561153357fe5b506020908102019056fea26469706673582212202d6cccf7b6851fa809e8d669f6be0fd84c2cdcc2b90c02abba822dc3ac9cb12b64736f6c63430007060033",
  "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100885760003560e01c8063824134891161005b57806382413489146100fd578063ab34b0fc14610110578063bbe8f41914610130578063e6c4fbe01461014357610088565b8063333b19a81461008d57806343c57a27146100b75780636a816ff9146100d75780637059b38a146100ea575b600080fd5b6100a061009b366004611272565b610164565b6040516100ae9291906114bf565b60405180910390f35b6100ca6100c536600461145e565b61017a565b6040516100ae91906114db565b6100ca6100e536600461145e565b610191565b6100ca6100f83660046112ca565b6101b0565b6100a061010b36600461128c565b6101c3565b61012361011e366004611388565b6101db565b6040516100ae91906114b1565b6100ca61013e36600461128c565b6101ee565b610156610151366004611272565b61020a565b6040516100ae9291906114e4565b6000806101708361021f565b915091505b915091565b600061018885858585610565565b95945050505050565b6000805a90506101a386868686610565565b505a900395945050505050565b60006101bc838361065c565b9392505050565b6000806101d0848461073d565b915091509250929050565b60006101e682610b53565b90505b919050565b6000805a90506101fe848461073d565b50505a90039392505050565b60008061021683610c0f565b93429350915050565b6000806000806000856001600160a01b0316633850c7bd6040518163ffffffff1660e01b815260040160e06040518083038186803b15801561026057600080fd5b505afa158015610274573d6000803e3d6000fd5b505050506040513d60e081101561028a57600080fd5b50602081015160408201516060909201519094509092509050600161ffff8216116102e2576040805162461bcd60e51b81526020600482015260036024820152624e454f60e81b604482015290519081900360640190fd5b6000806000886001600160a01b031663252c09d7866040518263ffffffff1660e01b8152600401808261ffff16815260200191505060a06040518083038186803b15801561032f57600080fd5b505afa158015610343573d6000803e3d6000fd5b505050506040513d60a081101561035957600080fd5b508051602082015160409092015190945090925090504263ffffffff908116908416146103f75785896001600160a01b0316631a6865026040518163ffffffff1660e01b815260040160206040518083038186803b1580156103ba57600080fd5b505afa1580156103ce573d6000803e3d6000fd5b505050506040513d60208110156103e457600080fd5b5051909850965061017595505050505050565b60008461ffff1660018661ffff168861ffff1601038161041357fe5b0690506000806000808d6001600160a01b031663252c09d7866040518263ffffffff1660e01b81526004018082815260200191505060a06040518083038186803b15801561046057600080fd5b505afa158015610474573d6000803e3d6000fd5b505050506040513d60a081101561048a57600080fd5b5080516020820151604083015160609093015191965094509092509050806104df576040805162461bcd60e51b81526020600482015260036024820152624f4e4960e81b604482015290519081900360640190fd5b83880363ffffffff811684890360060b816104f657fe5b059b50600077ffffffffffffffffffffffffffffffffffffffff0000000084890360201b1663ffffffff83166001600160a01b030277ffffffffffffffffffffffffffffffffffffffffffffffff168161054c57fe5b9d9f50909c049c50505050505050505050505050915091565b60008061057186610dde565b90506001600160801b036001600160a01b038216116105e0576001600160a01b03808216800290848116908616106105c0576105bb600160c01b876001600160801b031683611110565b6105d8565b6105d881876001600160801b0316600160c01b611110565b925050610653565b60006105ff6001600160a01b0383168068010000000000000000611110565b9050836001600160a01b0316856001600160a01b03161061063757610632600160801b876001600160801b031683611110565b61064f565b61064f81876001600160801b0316600160801b611110565b9250505b50949350505050565b6000815160018451031461069c576040805162461bcd60e51b8152602060048201526002602482015261111360f21b604482015290519081900360640190fd5b60015b82518111610736578381815181106106b357fe5b60200260200101516001600160a01b03168460018303815181106106d357fe5b60200260200101516001600160a01b03161061070d578260018203815181106106f857fe5b602002602001015160020b820391508161072d565b82600182038151811061071c57fe5b602002602001015160020b82019150815b5060010161069f565b5092915050565b60008063ffffffff831661077d576040805162461bcd60e51b8152602060048201526002602482015261042560f41b604482015290519081900360640190fd5b60408051600280825260608201835260009260208301908036833701905050905083816000815181106107ac57fe5b602002602001019063ffffffff16908163ffffffff16815250506000816001815181106107d557fe5b63ffffffff90921660209283029190910182015260405163883bdbfd60e01b81526004810182815283516024830152835160009384936001600160a01b038b169363883bdbfd9388939192839260449091019185820191028083838b5b8381101561084a578181015183820152602001610832565b505050509050019250505060006040518083038186803b15801561086d57600080fd5b505afa158015610881573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405260608110156108aa57600080fd5b81019080805160405193929190846401000000008211156108ca57600080fd5b9083019060208201858111156108df57600080fd5b82518660208202830111640100000000821117156108fc57600080fd5b82525081516020918201928201910280838360005b83811015610929578181015183820152602001610911565b505050509050016040526020018051604051939291908464010000000082111561095257600080fd5b90830190602082018581111561096757600080fd5b825186602082028301116401000000008211171561098457600080fd5b82525081516020918201928201910280838360005b838110156109b1578181015183820152602001610999565b50505050905001604052602001805160405193929190846401000000008211156109da57600080fd5b9083019060208201858111156109ef57600080fd5b8251866020820283011164010000000082111715610a0c57600080fd5b82525081516020918201928201910280838360005b83811015610a39578181015183820152602001610a21565b505050509050016040525050505091509150600082600081518110610a5a57fe5b602002602001015183600181518110610a6f57fe5b6020026020010151039050600082600081518110610a8957fe5b602002602001015183600181518110610a9e57fe5b60200260200101510390508763ffffffff168260060b81610abb57fe5b05965060008260060b128015610ae557508763ffffffff168260060b81610ade57fe5b0760060b15155b15610af257600019909601955b63ffffffff88166001600160a01b030277ffffffffffffffffffffffffffffffffffffffff00000000602083901b1677ffffffffffffffffffffffffffffffffffffffffffffffff821681610b4357fe5b0496505050505050509250929050565b6000806000805b8451811015610bd657848181518110610b6f57fe5b6020026020010151602001516001600160801b0316858281518110610b9057fe5b60200260200101516000015160020b0283019250848181518110610bb057fe5b6020026020010151602001516001600160801b0316820191508080600101915050610b5a565b50808281610be057fe5b059250600082128015610bfb5750808281610bf757fe5b0715155b15610c0857600019909201915b5050919050565b6000806000836001600160a01b0316633850c7bd6040518163ffffffff1660e01b815260040160e06040518083038186803b158015610c4d57600080fd5b505afa158015610c61573d6000803e3d6000fd5b505050506040513d60e0811015610c7757600080fd5b506040810151606090910151909250905061ffff8116610cc3576040805162461bcd60e51b81526020600482015260026024820152614e4960f01b604482015290519081900360640190fd5b600080856001600160a01b031663252c09d78461ffff168660010161ffff1681610ce957fe5b066040518263ffffffff1660e01b8152600401808261ffff16815260200191505060a06040518083038186803b158015610d2257600080fd5b505afa158015610d36573d6000803e3d6000fd5b505050506040513d60a0811015610d4c57600080fd5b508051606090910151909250905080610dd357856001600160a01b031663252c09d760006040518263ffffffff1660e01b81526004018082815260200191505060a06040518083038186803b158015610da457600080fd5b505afa158015610db8573d6000803e3d6000fd5b505050506040513d60a0811015610dce57600080fd5b505191505b504203949350505050565b60008060008360020b12610df5578260020b610dfd565b8260020b6000035b9050620d89e8811115610e3b576040805162461bcd60e51b81526020600482015260016024820152601560fa1b604482015290519081900360640190fd5b600060018216610e4f57600160801b610e61565b6ffffcb933bd6fad37aa2d162d1a5940015b70ffffffffffffffffffffffffffffffffff1690506002821615610e95576ffff97272373d413259a46990580e213a0260801c5b6004821615610eb4576ffff2e50f5f656932ef12357cf3c7fdcc0260801c5b6008821615610ed3576fffe5caca7e10e4e61c3624eaa0941cd00260801c5b6010821615610ef2576fffcb9843d60f6159c9db58835c9266440260801c5b6020821615610f11576fff973b41fa98c081472e6896dfb254c00260801c5b6040821615610f30576fff2ea16466c96a3843ec78b326b528610260801c5b6080821615610f4f576ffe5dee046a99a2a811c461f1969c30530260801c5b610100821615610f6f576ffcbe86c7900a88aedcffc83b479aa3a40260801c5b610200821615610f8f576ff987a7253ac413176f2b074cf7815e540260801c5b610400821615610faf576ff3392b0822b70005940c7a398e4b70f30260801c5b610800821615610fcf576fe7159475a2c29b7443b29c7fa6e889d90260801c5b611000821615610fef576fd097f3bdfd2022b8845ad8f792aa58250260801c5b61200082161561100f576fa9f746462d870fdf8a65dc1f90e061e50260801c5b61400082161561102f576f70d869a156d2a1b890bb3df62baf32f70260801c5b61800082161561104f576f31be135f97d08fd981231505542fcfa60260801c5b62010000821615611070576f09aa508b5b7a84e1c677de54f3e99bc90260801c5b62020000821615611090576e5d6af8dedb81196699c329225ee6040260801c5b620400008216156110af576d2216e584f5fa1ea926041bedfe980260801c5b620800008216156110cc576b048a170391f7dc42444e8fa20260801c5b60008460020b13156110e75780600019816110e357fe5b0490505b6401000000008106156110fb5760016110fe565b60005b60ff16602082901c0192505050919050565b6000808060001985870986860292508281109083900303905080611146576000841161113b57600080fd5b5082900490506101bc565b80841161115257600080fd5b6000848688096000868103871696879004966002600389028118808a02820302808a02820302808a02820302808a02820302808a02820302808a02909103029181900381900460010186841190950394909402919094039290920491909117919091029150509392505050565b80356001600160a01b03811681146101e957600080fd5b600082601f8301126111e6578081fd5b813560206111fb6111f68361151f565b6114fb565b8281528181019085830183850287018401881015611217578586fd5b855b8581101561123c5761122a82611249565b84529284019290840190600101611219565b5090979650505050505050565b8035600281900b81146101e957600080fd5b80356001600160801b03811681146101e957600080fd5b600060208284031215611283578081fd5b6101bc826111bf565b6000806040838503121561129e578081fd5b6112a7836111bf565b9150602083013563ffffffff811681146112bf578182fd5b809150509250929050565b600080604083850312156112dc578182fd5b823567ffffffffffffffff808211156112f3578384fd5b818501915085601f830112611306578384fd5b813560206113166111f68361151f565b82815281810190858301838502870184018b1015611332578889fd5b8896505b8487101561135b57611347816111bf565b835260019690960195918301918301611336565b5096505086013592505080821115611371578283fd5b5061137e858286016111d6565b9150509250929050565b6000602080838503121561139a578182fd5b823567ffffffffffffffff808211156113b1578384fd5b818501915085601f8301126113c4578384fd5b81356113d26111f68261151f565b818152848101908486016040808502870188018b10156113f0578889fd5b8896505b8487101561144f5780828c03121561140a578889fd5b8051818101818110888211171561141d57fe5b825261142883611249565b815261143589840161125b565b818a015284526001969096019592870192908101906113f4565b50909998505050505050505050565b60008060008060808587031215611473578182fd5b61147c85611249565b935061148a6020860161125b565b9250611498604086016111bf565b91506114a6606086016111bf565b905092959194509250565b60029190910b815260200190565b60029290920b82526001600160801b0316602082015260400190565b90815260200190565b63ffffffff92831681529116602082015260400190565b60405181810167ffffffffffffffff8111828210171561151757fe5b604052919050565b600067ffffffffffffffff82111561153357fe5b506020908102019056fea26469706673582212202d6cccf7b6851fa809e8d669f6be0fd84c2cdcc2b90c02abba822dc3ac9cb12b64736f6c63430007060033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
