{
  "_format": "hh-sol-artifact-1",
  "contractName": "DatasetsRequirement",
  "sourceName": "src/v0.8/module/dataset/DatasetsRequirement.sol",
  "abi": [
    {
      "inputs": [
        {
          "internalType": "uint64",
          "name": "datasetId",
          "type": "uint64"
        }
      ],
      "name": "InvalidDatasetState",
      "type": "error"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "address",
          "name": "previousAdmin",
          "type": "address"
        },
        {
          "indexed": false,
          "internalType": "address",
          "name": "newAdmin",
          "type": "address"
        }
      ],
      "name": "AdminChanged",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "beacon",
          "type": "address"
        }
      ],
      "name": "BeaconUpgraded",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "uint64",
          "name": "_datasetId",
          "type": "uint64"
        },
        {
          "indexed": true,
          "internalType": "address",
          "name": "_provider",
          "type": "address"
        }
      ],
      "name": "DatasetReplicaRequirementSubmitted",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "internalType": "uint8",
          "name": "version",
          "type": "uint8"
        }
      ],
      "name": "Initialized",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "internalType": "address",
          "name": "implementation",
          "type": "address"
        }
      ],
      "name": "Upgraded",
      "type": "event"
    },
    {
      "inputs": [],
      "name": "escrow",
      "outputs": [
        {
          "internalType": "contract IEscrow",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint64",
          "name": "_datasetId",
          "type": "uint64"
        }
      ],
      "name": "getDatasetPreCollateralRequirements",
      "outputs": [
        {
          "internalType": "uint256",
          "name": "",
          "type": "uint256"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint64",
          "name": "_datasetId",
          "type": "uint64"
        },
        {
          "internalType": "uint64",
          "name": "_index",
          "type": "uint64"
        }
      ],
      "name": "getDatasetReplicaRequirement",
      "outputs": [
        {
          "internalType": "address[]",
          "name": "",
          "type": "address[]"
        },
        {
          "internalType": "address[]",
          "name": "",
          "type": "address[]"
        },
        {
          "internalType": "uint16",
          "name": "",
          "type": "uint16"
        },
        {
          "internalType": "uint16",
          "name": "",
          "type": "uint16"
        },
        {
          "internalType": "uint32[]",
          "name": "",
          "type": "uint32[]"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint64",
          "name": "_datasetId",
          "type": "uint64"
        }
      ],
      "name": "getDatasetReplicasCount",
      "outputs": [
        {
          "internalType": "uint16",
          "name": "",
          "type": "uint16"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "getImplementation",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "governanceAddress",
      "outputs": [
        {
          "internalType": "address",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "_governanceAddress",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "_roles",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "_filplus",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "_datasets",
          "type": "address"
        },
        {
          "internalType": "address",
          "name": "_escrow",
          "type": "address"
        }
      ],
      "name": "initialize",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "proxiableUUID",
      "outputs": [
        {
          "internalType": "bytes32",
          "name": "",
          "type": "bytes32"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [],
      "name": "roles",
      "outputs": [
        {
          "internalType": "contract IRoles",
          "name": "",
          "type": "address"
        }
      ],
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "uint64",
          "name": "_datasetId",
          "type": "uint64"
        },
        {
          "internalType": "address[][]",
          "name": "_dataPreparers",
          "type": "address[][]"
        },
        {
          "internalType": "address[][]",
          "name": "_storageProviders",
          "type": "address[][]"
        },
        {
          "internalType": "uint16[]",
          "name": "_regions",
          "type": "uint16[]"
        },
        {
          "internalType": "uint16[]",
          "name": "_countrys",
          "type": "uint16[]"
        },
        {
          "internalType": "uint32[][]",
          "name": "_citys",
          "type": "uint32[][]"
        },
        {
          "internalType": "uint256",
          "name": "_amount",
          "type": "uint256"
        }
      ],
      "name": "submitDatasetReplicaRequirements",
      "outputs": [],
      "stateMutability": "payable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "newImplementation",
          "type": "address"
        }
      ],
      "name": "upgradeTo",
      "outputs": [],
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "internalType": "address",
          "name": "newImplementation",
          "type": "address"
        },
        {
          "internalType": "bytes",
          "name": "data",
          "type": "bytes"
        }
      ],
      "name": "upgradeToAndCall",
      "outputs": [],
      "stateMutability": "payable",
      "type": "function"
    }
  ],
  "bytecode": "0x60a06040523060805234801561001457600080fd5b50608051612a4361004c60003960008181610545015281816105850152818161060d0152818161064d01526106c90152612a436000f3fe6080604052600436106100975760003560e01c80630827153a1461009c5780631459457a146100d2578063146846a8146100f457806314a41d85146101255780633659cfe614610152578063392f5f64146101725780634f1ef2861461019f57806352d1902d146101b2578063795053d3146101c7578063aaf10f42146101f4578063e2fdcc1714610209578063f9eb00c114610229575b600080fd5b3480156100a857600080fd5b506100bc6100b736600461153e565b61023c565b6040516100c99190611567565b60405180910390f35b3480156100de57600080fd5b506100f26100ed3660046115a0565b610352565b005b34801561010057600080fd5b5061011461010f366004611618565b610483565b6040516100c995949392919061171b565b34801561013157600080fd5b5061014561014036600461153e565b6104ec565b6040516100c99190611779565b34801561015e57600080fd5b506100f261016d366004611787565b61053b565b34801561017e57600080fd5b50606754610192906001600160a01b031681565b6040516100c991906117e0565b6100f26101ad3660046118f3565b610603565b3480156101be57600080fd5b506100bc6106bc565b3480156101d357600080fd5b506066546101e7906001600160a01b031681565b6040516100c99190611940565b34801561020057600080fd5b506101e7610719565b34801561021557600080fd5b50606a54610192906001600160a01b031681565b6100f2610237366004611c39565b610728565b600081806001600160401b03166000036102715760405162461bcd60e51b815260040161026890611d8a565b60405180910390fd5b606954604051630619ff9560e51b81526000916001600160a01b03169063c33ff2a0906102a2908790600401611da3565b600060405180830381865afa1580156102bf573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526102e79190810190611e56565b5050985050505050505050506000600160281b9050600081670de0b6b3a7640000610312919061200e565b6001600160401b0316905080610327876104ec565b6103359061ffff1685612038565b6001600160401b03166103489190612074565b9695505050505050565b600054610100900460ff16158080156103725750600054600160ff909116105b80610393575061038130610b06565b158015610393575060005460ff166001145b6103af5760405162461bcd60e51b8152600401610268906120da565b6000805460ff1916600117905580156103d2576000805461ff0019166101001790555b606680546001600160a01b03199081166001600160a01b0389811691909117909255606780548216888416179055606a8054821685841617905560688054821687841617905560698054909116918516919091179055610430610b15565b801561047b576000805461ff00191690556040517f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890610472906001906120fe565b60405180910390a15b505050505050565b606080600080606086806001600160401b03166000036104b55760405162461bcd60e51b815260040161026890611d8a565b6001600160401b03881660009081526065602052604090206104d78189610b3e565b939d929c50909a509850909650945050505050565b600081806001600160401b03166000036105185760405162461bcd60e51b815260040161026890611d8a565b6001600160401b038316600090815260656020526040902080545b949350505050565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036105835760405162461bcd60e51b815260040161026890612143565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166105b5610dc8565b6001600160a01b0316146105db5760405162461bcd60e51b81526004016102689061218a565b6105e481610de4565b6040805160008082526020820190925261060091839190610e7d565b50565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361064b5760405162461bcd60e51b815260040161026890612143565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661067d610dc8565b6001600160a01b0316146106a35760405162461bcd60e51b81526004016102689061218a565b6106ac82610de4565b6106b882826001610e7d565b5050565b6000306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146107065760405162461bcd60e51b8152600401610268906121ef565b506000805160206129c783398151915290565b6000610723610dc8565b905090565b6069546040516315b536bd60e11b81526001600160a01b039091169088906000908390632b6a6d7a9061075f908590600401611da3565b602060405180830381865afa15801561077c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107a09190612217565b60068111156107b1576107b1612238565b8160068111156107c3576107c3612238565b146107e357816040516311bc7abb60e21b81526004016102689190611da3565b60695460405163293a9a8160e11b81526001600160a01b0390911690635275350290610813908d90600401611da3565b602060405180830381865afa158015610830573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610854919061224e565b336001600160a01b0382161461087c5760405162461bcd60e51b8152600401610268906122a3565b606854604051636f52df7160e01b81526001600160a01b0390911690636f52df71906108b4908d908d908d908d908d90600401612450565b602060405180830381865afa1580156108d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f591906124b1565b6109115760405162461bcd60e51b8152600401610268906124ff565b6068546040516350cc591f60e01b81526001600160a01b03909116906350cc591f90610945908b908b908b9060040161250f565b602060405180830381865afa158015610962573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061098691906124b1565b6109a25760405162461bcd60e51b815260040161026890612583565b6109ac8b86610f5f565b6001600160401b038b166000908152606560205260409081902060695491516368832a6b60e01b815290916001600160a01b0316906368832a6b906109f5908f90600401611da3565b602060405180830381865afa158015610a12573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a3691906124b1565b610a525760405162461bcd60e51b8152600401610268906125ba565b610a60818c8c8c8c8c61107f565b60695460405163571e0d3760e11b81526001600160a01b039091169063ae3c1a6e90610a90908f90600401611da3565b600060405180830381600087803b158015610aaa57600080fd5b505af1158015610abe573d6000803e3d6000fd5b50506040513392506001600160401b038f1691507f0fef45e2bc3d07f1d932196fb01116018edd1d61613d87e3f8fec6e1cbc85b2d90600090a3505050505050505050505050565b6001600160a01b03163b151590565b600054610100900460ff16610b3c5760405162461bcd60e51b815260040161026890612612565b565b60608060008060608660000180549050866001600160401b031610610b755760405162461bcd60e51b815260040161026890612646565b86600001866001600160401b031681548110610b9357610b93612656565b906000526020600020906004020160000187600001876001600160401b031681548110610bc257610bc2612656565b906000526020600020906004020160010188600001886001600160401b031681548110610bf157610bf1612656565b6000918252602090912060026004909202010154895461ffff909116908a906001600160401b038b16908110610c2957610c29612656565b906000526020600020906004020160020160000160029054906101000a900461ffff168a6000018a6001600160401b031681548110610c6a57610c6a612656565b906000526020600020906004020160020160010184805480602002602001604051908101604052809291908181526020018280548015610cd357602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610cb5575b5050505050945083805480602002602001604051908101604052809291908181526020018280548015610d2f57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610d11575b5050505050935080805480602002602001604051908101604052809291908181526020018280548015610dad57602002820191906000526020600020906000905b82829054906101000a900463ffffffff1663ffffffff1681526020019060040190602082600301049283019260010382029150808411610d705790505b50505050509050945094509450945094509295509295909350565b6000805160206129c7833981519152546001600160a01b031690565b606754604051632474521560e21b81526001600160a01b039091169060009082906391d1485490610e1b908490339060040161266c565b602060405180830381865afa158015610e38573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e5c91906124b1565b610e785760405162461bcd60e51b8152600401610268906126b8565b505050565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615610eb057610e7883611220565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610f0a575060408051601f3d908101601f19168201909252610f07918101906126d3565b60015b610f265760405162461bcd60e51b81526004016102689061273f565b6000805160206129c78339815191528114610f535760405162461bcd60e51b815260040161026890612795565b50610e78838383611274565b6000610f6a8361023c565b90506000610f7883346127a5565b9050610f8483836127b8565b341015610fa35760405162461bcd60e51b8152600401610268906127ff565b606a5460405163ce37bde760e01b81526001600160a01b039091169063ce37bde7908390610fdc9060009033908a90899060040161283d565b6000604051808303818588803b158015610ff557600080fd5b505af1158015611009573d6000803e3d6000fd5b5050606a5460405163750963a160e11b81526001600160a01b03909116935063ea12c74292508691506110479060059033908a90859060040161283d565b6000604051808303818588803b15801561106057600080fd5b505af1158015611074573d6000803e3d6000fd5b505050505050505050565b60005b83518163ffffffff16101561121757866000016040518060600160405280888463ffffffff16815181106110b8576110b8612656565b60200260200101518152602001878463ffffffff16815181106110dd576110dd612656565b602002602001015181526020016040518060600160405280888663ffffffff168151811061110d5761110d612656565b602002602001015161ffff168152602001878663ffffffff168151811061113657611136612656565b602002602001015161ffff168152602001868663ffffffff168151811061115f5761115f612656565b602090810291909101810151909152915282546001810184556000938452928190208251805193946004029091019261119b92849201906113f3565b5060208281015180516111b492600185019201906113f3565b50604082810151805160028401805460208085015161ffff908116620100000263ffffffff199093169416939093171781559282015180519293926111ff9260038701920190611458565b5050505050808061120f90612872565b915050611082565b50505050505050565b61122981610b06565b6112455760405162461bcd60e51b8152600401610268906128df565b6000805160206129c783398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b61127d8361129f565b60008251118061128a5750805b15610e785761129983836112df565b50505050565b6112a881611220565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061130483836040518060600160405280602781526020016129e76027913961130d565b90505b92915050565b6060600080856001600160a01b03168560405161132a9190612911565b600060405180830381855af49150503d8060008114611365576040519150601f19603f3d011682016040523d82523d6000602084013e61136a565b606091505b509150915061137b86838387611387565b925050505b9392505050565b606083156113c45782516000036113bd576113a185610b06565b6113bd5760405162461bcd60e51b815260040161026890612951565b5081610533565b61053383838151156113d95781518083602001fd5b8060405162461bcd60e51b81526004016102689190612995565b828054828255906000526020600020908101928215611448579160200282015b8281111561144857825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190611413565b506114549291506114fe565b5090565b828054828255906000526020600020906007016008900481019282156114485791602002820160005b838211156114c557835183826101000a81548163ffffffff021916908363ffffffff1602179055509260200192600401602081600301049283019260010302611481565b80156114f55782816101000a81549063ffffffff02191690556004016020816003010492830192600103026114c5565b50506114549291505b5b8082111561145457600081556001016114ff565b6001600160401b031690565b61152881611513565b811461060057600080fd5b80356113078161151f565b60006020828403121561155357611553600080fd5b60006105338484611533565b805b82525050565b60208101611307828461155f565b6001600160a01b031690565b600061130782611575565b61152881611581565b80356113078161158c565b600080600080600060a086880312156115bb576115bb600080fd5b60006115c78888611595565b95505060206115d888828901611595565b94505060406115e988828901611595565b93505060606115fa88828901611595565b925050608061160b88828901611595565b9150509295509295909350565b6000806040838503121561162e5761162e600080fd5b600061163a8585611533565b925050602061164b85828601611533565b9150509250929050565b61156181611581565b600061166a8383611655565b505060200190565b600061167c825190565b80845260209384019383018060005b838110156116b057815161169f888261165e565b97506020830192505060010161168b565b509495945050505050565b61ffff8116611561565b63ffffffff8116611561565b600061166a83836116c5565b60006116e7825190565b80845260209384019383018060005b838110156116b057815161170a88826116d1565b9750602083019250506001016116f6565b60a0808252810161172c8188611672565b905081810360208301526117408187611672565b905061174f60408301866116bb565b61175c60608301856116bb565b818103608083015261176e81846116dd565b979650505050505050565b6020810161130782846116bb565b60006020828403121561179c5761179c600080fd5b60006105338484611595565b60006113076117bc6117b984611575565b90565b611575565b6000611307826117a8565b6000611307826117c1565b611561816117cc565b6020810161130782846117d7565b601f01601f191690565b634e487b7160e01b600052604160045260246000fd5b611817826117ee565b81018181106001600160401b0382111715611834576118346117f8565b6040525050565b600061184660405190565b9050611852828261180e565b919050565b60006001600160401b03821115611870576118706117f8565b611879826117ee565b60200192915050565b82818337506000910152565b60006118a161189c84611857565b61183b565b9050828152602081018484840111156118bc576118bc600080fd5b6118c7848285611882565b509392505050565b600082601f8301126118e3576118e3600080fd5b813561053384826020860161188e565b6000806040838503121561190957611909600080fd5b60006119158585611595565b92505060208301356001600160401b0381111561193457611934600080fd5b61164b858286016118cf565b602081016113078284611655565b60006001600160401b03821115611967576119676117f8565b5060209081020190565b600061197f61189c8461194e565b8381529050602080820190840283018581111561199e5761199e600080fd5b835b818110156119c257806119b38882611595565b845250602092830192016119a0565b5050509392505050565b600082601f8301126119e0576119e0600080fd5b8135610533848260208601611971565b60006119fe61189c8461194e565b83815290506020808201908402830185811115611a1d57611a1d600080fd5b835b818110156119c25780356001600160401b03811115611a4057611a40600080fd5b808601611a4d89826119cc565b8552505060209283019201611a1f565b600082601f830112611a7157611a71600080fd5b81356105338482602086016119f0565b61ffff8116611528565b803561130781611a81565b6000611aa461189c8461194e565b83815290506020808201908402830185811115611ac357611ac3600080fd5b835b818110156119c25780611ad88882611a8b565b84525060209283019201611ac5565b600082601f830112611afb57611afb600080fd5b8135610533848260208601611a96565b63ffffffff8116611528565b803561130781611b0b565b6000611b3061189c8461194e565b83815290506020808201908402830185811115611b4f57611b4f600080fd5b835b818110156119c25780611b648882611b17565b84525060209283019201611b51565b600082601f830112611b8757611b87600080fd5b8135610533848260208601611b22565b6000611ba561189c8461194e565b83815290506020808201908402830185811115611bc457611bc4600080fd5b835b818110156119c25780356001600160401b03811115611be757611be7600080fd5b808601611bf48982611b73565b8552505060209283019201611bc6565b600082601f830112611c1857611c18600080fd5b8135610533848260208601611b97565b80611528565b803561130781611c28565b600080600080600080600060e0888a031215611c5757611c57600080fd5b6000611c638a8a611533565b97505060208801356001600160401b03811115611c8257611c82600080fd5b611c8e8a828b01611a5d565b96505060408801356001600160401b03811115611cad57611cad600080fd5b611cb98a828b01611a5d565b95505060608801356001600160401b03811115611cd857611cd8600080fd5b611ce48a828b01611ae7565b94505060808801356001600160401b03811115611d0357611d03600080fd5b611d0f8a828b01611ae7565b93505060a08801356001600160401b03811115611d2e57611d2e600080fd5b611d3a8a828b01611c04565b92505060c0611d4b8a828b01611c2e565b91505092959891949750929550565b601681526000602082017556616c7565206d757374206e6f74206265207a65726f60501b815291505b5060200190565b6020808252810161130781611d5a565b61156181611513565b602081016113078284611d9a565b60005b83811015611dcc578181015183820152602001611db4565b50506000910152565b6000611de361189c84611857565b905082815260208101848484011115611dfe57611dfe600080fd5b6118c7848285611db1565b600082601f830112611e1d57611e1d600080fd5b8151610533848260208601611dd5565b80516113078161158c565b80516113078161151f565b801515611528565b805161130781611e43565b60008060008060008060008060008060006101608c8e031215611e7b57611e7b600080fd5b8b516001600160401b03811115611e9457611e94600080fd5b611ea08e828f01611e09565b9b505060208c01516001600160401b03811115611ebf57611ebf600080fd5b611ecb8e828f01611e09565b9a505060408c01516001600160401b03811115611eea57611eea600080fd5b611ef68e828f01611e09565b99505060608c01516001600160401b03811115611f1557611f15600080fd5b611f218e828f01611e09565b98505060808c01516001600160401b03811115611f4057611f40600080fd5b611f4c8e828f01611e09565b97505060a08c01516001600160401b03811115611f6b57611f6b600080fd5b611f778e828f01611e09565b96505060c0611f888e828f01611e2d565b95505060e0611f998e828f01611e38565b945050610100611fab8e828f01611e38565b935050610120611fbd8e828f01611e4b565b925050610140611fcf8e828f01611e38565b9150509295989b509295989b9093969950565b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600061201982611513565b915061202483611513565b92508261203357612033611fe2565b500490565b600061204382611513565b915061204e83611513565b925082820261205c81611513565b915080821461206d5761206d611ff8565b5092915050565b81810280821583820485141761206d5761206d611ff8565b602e81526000602082017f496e697469616c697a61626c653a20636f6e747261637420697320616c72656181526d191e481a5b9a5d1a585b1a5e995960921b602082015291505b5060400190565b602080825281016113078161208c565b600060ff8216611307565b611561816120ea565b6020810161130782846120f5565b602c81526000602082016000805160206129a783398151915281526b19195b1959d85d1958d85b1b60a21b602082015291506120d3565b602080825281016113078161210c565b602c81526000602082016000805160206129a783398151915281526b6163746976652070726f787960a01b602082015291506120d3565b6020808252810161130781612153565b603881526000602082017f555550535570677261646561626c653a206d757374206e6f742062652063616c8152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b602082015291506120d3565b602080825281016113078161219a565b6007811061060057600080fd5b8051611307816121ff565b60006020828403121561222c5761222c600080fd5b6000610533848461220c565b634e487b7160e01b600052602160045260246000fd5b60006020828403121561226357612263600080fd5b60006105338484611e2d565b601d81526000602082017f4f6e6c7920616c6c6f77656420616464726573732063616e2063616c6c00000081529150611d83565b602080825281016113078161226f565b60006122bd825190565b80845260209384019383018060005b838110156116b05781516122e0888261165e565b9750602083019250506001016122cc565b600061130483836122b3565b6000612307825190565b808452602084019350836020820285016123218560200190565b8060005b85811015612356578484038952815161233e85826122f1565b94506020830160209a909a0199925050600101612325565b5091979650505050505050565b600061166a83836116bb565b6000612379825190565b80845260209384019383018060005b838110156116b057815161239c8882612363565b975060208301925050600101612388565b60006123b7825190565b80845260209384019383018060005b838110156116b05781516123da88826116d1565b9750602083019250506001016123c6565b600061130483836123ad565b6000612401825190565b8084526020840193508360208202850161241b8560200190565b8060005b85811015612356578484038952815161243885826123eb565b94506020830160209a909a019992505060010161241f565b60a0808252810161246181886122fd565b9050818103602083015261247581876122fd565b90508181036040830152612489818661236f565b9050818103606083015261249d818561236f565b9050818103608083015261176e81846123f7565b6000602082840312156124c6576124c6600080fd5b60006105338484611e4b565b6016815260006020820175125b9d985b1a59081c995c1b1a58d85cc818dbdd5b9d60521b81529150611d83565b60208082528101611307816124d2565b60608082528101612520818661236f565b90508181036020830152612534818561236f565b9050818103604083015261254881846123f7565b95945050505050565b601b81526000602082017a24b73b30b634b2103932b3b4b7b7103234b9ba3934b13aba34b7b760291b81529150611d83565b6020808252810161130781612551565b601081526000602082016f496e76616c6964204d6574616461746160801b81529150611d83565b6020808252810161130781612593565b602b81526000602082017f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206981526a6e697469616c697a696e6760a81b602082015291506120d3565b60208082528101611307816125ca565b600d81526000602082016c092dcecc2d8d2c840d2dcc8caf609b1b81529150611d83565b6020808252810161130781612622565b634e487b7160e01b600052603260045260246000fd5b6040810161267a828561155f565b6113806020830184611655565b601a81526000602082017913db9b1e48185b1b1bddd959081c9bdb194818d85b8818d85b1b60321b81529150611d83565b6020808252810161130781612687565b805161130781611c28565b6000602082840312156126e8576126e8600080fd5b600061053384846126c8565b602e81526000602082017f45524331393637557067726164653a206e657720696d706c656d656e7461746981526d6f6e206973206e6f74205555505360901b602082015291506120d3565b60208082528101611307816126f4565b602981526000602082017f45524331393637557067726164653a20756e737570706f727465642070726f788152681a58589b195555525160ba1b602082015291506120d3565b602080825281016113078161274f565b8181038181111561130757611307611ff8565b8082018082111561130757611307611ff8565b601d81526000602082017f496e73756666696369656e7420636f6c6c61746572616c2066756e647300000081529150611d83565b60208082528101611307816127cb565b6008811061060057610600612238565b806118528161280f565b60006113078261281f565b61156181612829565b6080810161284b8287612834565b6128586020830186611655565b6128656040830185611d9a565b612548606083018461155f565b63ffffffff16600063fffffffe19820161288e5761288e611ff8565b5060010190565b602d81526000602082017f455243313936373a206e657720696d706c656d656e746174696f6e206973206e81526c1bdd08184818dbdb9d1c9858dd609a1b602082015291506120d3565b6020808252810161130781612895565b60006128f9825190565b612907818560208601611db1565b9290920192915050565b600061138082846128ef565b601d81526000602082017f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000081529150611d83565b602080825281016113078161291d565b600061296b825190565b808452602084019350612982818560208601611db1565b61298b816117ee565b9093019392505050565b60208082528101611304818461296156fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220be3cf51140e2899708f6e3c61cd4896217e45b014c8c534fc9f9cf25280b0b9c64736f6c63430008150033",
  "deployedBytecode": "0x6080604052600436106100975760003560e01c80630827153a1461009c5780631459457a146100d2578063146846a8146100f457806314a41d85146101255780633659cfe614610152578063392f5f64146101725780634f1ef2861461019f57806352d1902d146101b2578063795053d3146101c7578063aaf10f42146101f4578063e2fdcc1714610209578063f9eb00c114610229575b600080fd5b3480156100a857600080fd5b506100bc6100b736600461153e565b61023c565b6040516100c99190611567565b60405180910390f35b3480156100de57600080fd5b506100f26100ed3660046115a0565b610352565b005b34801561010057600080fd5b5061011461010f366004611618565b610483565b6040516100c995949392919061171b565b34801561013157600080fd5b5061014561014036600461153e565b6104ec565b6040516100c99190611779565b34801561015e57600080fd5b506100f261016d366004611787565b61053b565b34801561017e57600080fd5b50606754610192906001600160a01b031681565b6040516100c991906117e0565b6100f26101ad3660046118f3565b610603565b3480156101be57600080fd5b506100bc6106bc565b3480156101d357600080fd5b506066546101e7906001600160a01b031681565b6040516100c99190611940565b34801561020057600080fd5b506101e7610719565b34801561021557600080fd5b50606a54610192906001600160a01b031681565b6100f2610237366004611c39565b610728565b600081806001600160401b03166000036102715760405162461bcd60e51b815260040161026890611d8a565b60405180910390fd5b606954604051630619ff9560e51b81526000916001600160a01b03169063c33ff2a0906102a2908790600401611da3565b600060405180830381865afa1580156102bf573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526102e79190810190611e56565b5050985050505050505050506000600160281b9050600081670de0b6b3a7640000610312919061200e565b6001600160401b0316905080610327876104ec565b6103359061ffff1685612038565b6001600160401b03166103489190612074565b9695505050505050565b600054610100900460ff16158080156103725750600054600160ff909116105b80610393575061038130610b06565b158015610393575060005460ff166001145b6103af5760405162461bcd60e51b8152600401610268906120da565b6000805460ff1916600117905580156103d2576000805461ff0019166101001790555b606680546001600160a01b03199081166001600160a01b0389811691909117909255606780548216888416179055606a8054821685841617905560688054821687841617905560698054909116918516919091179055610430610b15565b801561047b576000805461ff00191690556040517f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb384740249890610472906001906120fe565b60405180910390a15b505050505050565b606080600080606086806001600160401b03166000036104b55760405162461bcd60e51b815260040161026890611d8a565b6001600160401b03881660009081526065602052604090206104d78189610b3e565b939d929c50909a509850909650945050505050565b600081806001600160401b03166000036105185760405162461bcd60e51b815260040161026890611d8a565b6001600160401b038316600090815260656020526040902080545b949350505050565b6001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001630036105835760405162461bcd60e51b815260040161026890612143565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166105b5610dc8565b6001600160a01b0316146105db5760405162461bcd60e51b81526004016102689061218a565b6105e481610de4565b6040805160008082526020820190925261060091839190610e7d565b50565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016300361064b5760405162461bcd60e51b815260040161026890612143565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031661067d610dc8565b6001600160a01b0316146106a35760405162461bcd60e51b81526004016102689061218a565b6106ac82610de4565b6106b882826001610e7d565b5050565b6000306001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146107065760405162461bcd60e51b8152600401610268906121ef565b506000805160206129c783398151915290565b6000610723610dc8565b905090565b6069546040516315b536bd60e11b81526001600160a01b039091169088906000908390632b6a6d7a9061075f908590600401611da3565b602060405180830381865afa15801561077c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107a09190612217565b60068111156107b1576107b1612238565b8160068111156107c3576107c3612238565b146107e357816040516311bc7abb60e21b81526004016102689190611da3565b60695460405163293a9a8160e11b81526001600160a01b0390911690635275350290610813908d90600401611da3565b602060405180830381865afa158015610830573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610854919061224e565b336001600160a01b0382161461087c5760405162461bcd60e51b8152600401610268906122a3565b606854604051636f52df7160e01b81526001600160a01b0390911690636f52df71906108b4908d908d908d908d908d90600401612450565b602060405180830381865afa1580156108d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108f591906124b1565b6109115760405162461bcd60e51b8152600401610268906124ff565b6068546040516350cc591f60e01b81526001600160a01b03909116906350cc591f90610945908b908b908b9060040161250f565b602060405180830381865afa158015610962573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061098691906124b1565b6109a25760405162461bcd60e51b815260040161026890612583565b6109ac8b86610f5f565b6001600160401b038b166000908152606560205260409081902060695491516368832a6b60e01b815290916001600160a01b0316906368832a6b906109f5908f90600401611da3565b602060405180830381865afa158015610a12573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a3691906124b1565b610a525760405162461bcd60e51b8152600401610268906125ba565b610a60818c8c8c8c8c61107f565b60695460405163571e0d3760e11b81526001600160a01b039091169063ae3c1a6e90610a90908f90600401611da3565b600060405180830381600087803b158015610aaa57600080fd5b505af1158015610abe573d6000803e3d6000fd5b50506040513392506001600160401b038f1691507f0fef45e2bc3d07f1d932196fb01116018edd1d61613d87e3f8fec6e1cbc85b2d90600090a3505050505050505050505050565b6001600160a01b03163b151590565b600054610100900460ff16610b3c5760405162461bcd60e51b815260040161026890612612565b565b60608060008060608660000180549050866001600160401b031610610b755760405162461bcd60e51b815260040161026890612646565b86600001866001600160401b031681548110610b9357610b93612656565b906000526020600020906004020160000187600001876001600160401b031681548110610bc257610bc2612656565b906000526020600020906004020160010188600001886001600160401b031681548110610bf157610bf1612656565b6000918252602090912060026004909202010154895461ffff909116908a906001600160401b038b16908110610c2957610c29612656565b906000526020600020906004020160020160000160029054906101000a900461ffff168a6000018a6001600160401b031681548110610c6a57610c6a612656565b906000526020600020906004020160020160010184805480602002602001604051908101604052809291908181526020018280548015610cd357602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610cb5575b5050505050945083805480602002602001604051908101604052809291908181526020018280548015610d2f57602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610d11575b5050505050935080805480602002602001604051908101604052809291908181526020018280548015610dad57602002820191906000526020600020906000905b82829054906101000a900463ffffffff1663ffffffff1681526020019060040190602082600301049283019260010382029150808411610d705790505b50505050509050945094509450945094509295509295909350565b6000805160206129c7833981519152546001600160a01b031690565b606754604051632474521560e21b81526001600160a01b039091169060009082906391d1485490610e1b908490339060040161266c565b602060405180830381865afa158015610e38573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e5c91906124b1565b610e785760405162461bcd60e51b8152600401610268906126b8565b505050565b7f4910fdfa16fed3260ed0e7147f7cc6da11a60208b5b9406d12a635614ffd91435460ff1615610eb057610e7883611220565b826001600160a01b03166352d1902d6040518163ffffffff1660e01b8152600401602060405180830381865afa925050508015610f0a575060408051601f3d908101601f19168201909252610f07918101906126d3565b60015b610f265760405162461bcd60e51b81526004016102689061273f565b6000805160206129c78339815191528114610f535760405162461bcd60e51b815260040161026890612795565b50610e78838383611274565b6000610f6a8361023c565b90506000610f7883346127a5565b9050610f8483836127b8565b341015610fa35760405162461bcd60e51b8152600401610268906127ff565b606a5460405163ce37bde760e01b81526001600160a01b039091169063ce37bde7908390610fdc9060009033908a90899060040161283d565b6000604051808303818588803b158015610ff557600080fd5b505af1158015611009573d6000803e3d6000fd5b5050606a5460405163750963a160e11b81526001600160a01b03909116935063ea12c74292508691506110479060059033908a90859060040161283d565b6000604051808303818588803b15801561106057600080fd5b505af1158015611074573d6000803e3d6000fd5b505050505050505050565b60005b83518163ffffffff16101561121757866000016040518060600160405280888463ffffffff16815181106110b8576110b8612656565b60200260200101518152602001878463ffffffff16815181106110dd576110dd612656565b602002602001015181526020016040518060600160405280888663ffffffff168151811061110d5761110d612656565b602002602001015161ffff168152602001878663ffffffff168151811061113657611136612656565b602002602001015161ffff168152602001868663ffffffff168151811061115f5761115f612656565b602090810291909101810151909152915282546001810184556000938452928190208251805193946004029091019261119b92849201906113f3565b5060208281015180516111b492600185019201906113f3565b50604082810151805160028401805460208085015161ffff908116620100000263ffffffff199093169416939093171781559282015180519293926111ff9260038701920190611458565b5050505050808061120f90612872565b915050611082565b50505050505050565b61122981610b06565b6112455760405162461bcd60e51b8152600401610268906128df565b6000805160206129c783398151915280546001600160a01b0319166001600160a01b0392909216919091179055565b61127d8361129f565b60008251118061128a5750805b15610e785761129983836112df565b50505050565b6112a881611220565b6040516001600160a01b038216907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a250565b606061130483836040518060600160405280602781526020016129e76027913961130d565b90505b92915050565b6060600080856001600160a01b03168560405161132a9190612911565b600060405180830381855af49150503d8060008114611365576040519150601f19603f3d011682016040523d82523d6000602084013e61136a565b606091505b509150915061137b86838387611387565b925050505b9392505050565b606083156113c45782516000036113bd576113a185610b06565b6113bd5760405162461bcd60e51b815260040161026890612951565b5081610533565b61053383838151156113d95781518083602001fd5b8060405162461bcd60e51b81526004016102689190612995565b828054828255906000526020600020908101928215611448579160200282015b8281111561144857825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190611413565b506114549291506114fe565b5090565b828054828255906000526020600020906007016008900481019282156114485791602002820160005b838211156114c557835183826101000a81548163ffffffff021916908363ffffffff1602179055509260200192600401602081600301049283019260010302611481565b80156114f55782816101000a81549063ffffffff02191690556004016020816003010492830192600103026114c5565b50506114549291505b5b8082111561145457600081556001016114ff565b6001600160401b031690565b61152881611513565b811461060057600080fd5b80356113078161151f565b60006020828403121561155357611553600080fd5b60006105338484611533565b805b82525050565b60208101611307828461155f565b6001600160a01b031690565b600061130782611575565b61152881611581565b80356113078161158c565b600080600080600060a086880312156115bb576115bb600080fd5b60006115c78888611595565b95505060206115d888828901611595565b94505060406115e988828901611595565b93505060606115fa88828901611595565b925050608061160b88828901611595565b9150509295509295909350565b6000806040838503121561162e5761162e600080fd5b600061163a8585611533565b925050602061164b85828601611533565b9150509250929050565b61156181611581565b600061166a8383611655565b505060200190565b600061167c825190565b80845260209384019383018060005b838110156116b057815161169f888261165e565b97506020830192505060010161168b565b509495945050505050565b61ffff8116611561565b63ffffffff8116611561565b600061166a83836116c5565b60006116e7825190565b80845260209384019383018060005b838110156116b057815161170a88826116d1565b9750602083019250506001016116f6565b60a0808252810161172c8188611672565b905081810360208301526117408187611672565b905061174f60408301866116bb565b61175c60608301856116bb565b818103608083015261176e81846116dd565b979650505050505050565b6020810161130782846116bb565b60006020828403121561179c5761179c600080fd5b60006105338484611595565b60006113076117bc6117b984611575565b90565b611575565b6000611307826117a8565b6000611307826117c1565b611561816117cc565b6020810161130782846117d7565b601f01601f191690565b634e487b7160e01b600052604160045260246000fd5b611817826117ee565b81018181106001600160401b0382111715611834576118346117f8565b6040525050565b600061184660405190565b9050611852828261180e565b919050565b60006001600160401b03821115611870576118706117f8565b611879826117ee565b60200192915050565b82818337506000910152565b60006118a161189c84611857565b61183b565b9050828152602081018484840111156118bc576118bc600080fd5b6118c7848285611882565b509392505050565b600082601f8301126118e3576118e3600080fd5b813561053384826020860161188e565b6000806040838503121561190957611909600080fd5b60006119158585611595565b92505060208301356001600160401b0381111561193457611934600080fd5b61164b858286016118cf565b602081016113078284611655565b60006001600160401b03821115611967576119676117f8565b5060209081020190565b600061197f61189c8461194e565b8381529050602080820190840283018581111561199e5761199e600080fd5b835b818110156119c257806119b38882611595565b845250602092830192016119a0565b5050509392505050565b600082601f8301126119e0576119e0600080fd5b8135610533848260208601611971565b60006119fe61189c8461194e565b83815290506020808201908402830185811115611a1d57611a1d600080fd5b835b818110156119c25780356001600160401b03811115611a4057611a40600080fd5b808601611a4d89826119cc565b8552505060209283019201611a1f565b600082601f830112611a7157611a71600080fd5b81356105338482602086016119f0565b61ffff8116611528565b803561130781611a81565b6000611aa461189c8461194e565b83815290506020808201908402830185811115611ac357611ac3600080fd5b835b818110156119c25780611ad88882611a8b565b84525060209283019201611ac5565b600082601f830112611afb57611afb600080fd5b8135610533848260208601611a96565b63ffffffff8116611528565b803561130781611b0b565b6000611b3061189c8461194e565b83815290506020808201908402830185811115611b4f57611b4f600080fd5b835b818110156119c25780611b648882611b17565b84525060209283019201611b51565b600082601f830112611b8757611b87600080fd5b8135610533848260208601611b22565b6000611ba561189c8461194e565b83815290506020808201908402830185811115611bc457611bc4600080fd5b835b818110156119c25780356001600160401b03811115611be757611be7600080fd5b808601611bf48982611b73565b8552505060209283019201611bc6565b600082601f830112611c1857611c18600080fd5b8135610533848260208601611b97565b80611528565b803561130781611c28565b600080600080600080600060e0888a031215611c5757611c57600080fd5b6000611c638a8a611533565b97505060208801356001600160401b03811115611c8257611c82600080fd5b611c8e8a828b01611a5d565b96505060408801356001600160401b03811115611cad57611cad600080fd5b611cb98a828b01611a5d565b95505060608801356001600160401b03811115611cd857611cd8600080fd5b611ce48a828b01611ae7565b94505060808801356001600160401b03811115611d0357611d03600080fd5b611d0f8a828b01611ae7565b93505060a08801356001600160401b03811115611d2e57611d2e600080fd5b611d3a8a828b01611c04565b92505060c0611d4b8a828b01611c2e565b91505092959891949750929550565b601681526000602082017556616c7565206d757374206e6f74206265207a65726f60501b815291505b5060200190565b6020808252810161130781611d5a565b61156181611513565b602081016113078284611d9a565b60005b83811015611dcc578181015183820152602001611db4565b50506000910152565b6000611de361189c84611857565b905082815260208101848484011115611dfe57611dfe600080fd5b6118c7848285611db1565b600082601f830112611e1d57611e1d600080fd5b8151610533848260208601611dd5565b80516113078161158c565b80516113078161151f565b801515611528565b805161130781611e43565b60008060008060008060008060008060006101608c8e031215611e7b57611e7b600080fd5b8b516001600160401b03811115611e9457611e94600080fd5b611ea08e828f01611e09565b9b505060208c01516001600160401b03811115611ebf57611ebf600080fd5b611ecb8e828f01611e09565b9a505060408c01516001600160401b03811115611eea57611eea600080fd5b611ef68e828f01611e09565b99505060608c01516001600160401b03811115611f1557611f15600080fd5b611f218e828f01611e09565b98505060808c01516001600160401b03811115611f4057611f40600080fd5b611f4c8e828f01611e09565b97505060a08c01516001600160401b03811115611f6b57611f6b600080fd5b611f778e828f01611e09565b96505060c0611f888e828f01611e2d565b95505060e0611f998e828f01611e38565b945050610100611fab8e828f01611e38565b935050610120611fbd8e828f01611e4b565b925050610140611fcf8e828f01611e38565b9150509295989b509295989b9093969950565b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b600061201982611513565b915061202483611513565b92508261203357612033611fe2565b500490565b600061204382611513565b915061204e83611513565b925082820261205c81611513565b915080821461206d5761206d611ff8565b5092915050565b81810280821583820485141761206d5761206d611ff8565b602e81526000602082017f496e697469616c697a61626c653a20636f6e747261637420697320616c72656181526d191e481a5b9a5d1a585b1a5e995960921b602082015291505b5060400190565b602080825281016113078161208c565b600060ff8216611307565b611561816120ea565b6020810161130782846120f5565b602c81526000602082016000805160206129a783398151915281526b19195b1959d85d1958d85b1b60a21b602082015291506120d3565b602080825281016113078161210c565b602c81526000602082016000805160206129a783398151915281526b6163746976652070726f787960a01b602082015291506120d3565b6020808252810161130781612153565b603881526000602082017f555550535570677261646561626c653a206d757374206e6f742062652063616c8152771b1959081d1a1c9bdd59da0819195b1959d85d1958d85b1b60421b602082015291506120d3565b602080825281016113078161219a565b6007811061060057600080fd5b8051611307816121ff565b60006020828403121561222c5761222c600080fd5b6000610533848461220c565b634e487b7160e01b600052602160045260246000fd5b60006020828403121561226357612263600080fd5b60006105338484611e2d565b601d81526000602082017f4f6e6c7920616c6c6f77656420616464726573732063616e2063616c6c00000081529150611d83565b602080825281016113078161226f565b60006122bd825190565b80845260209384019383018060005b838110156116b05781516122e0888261165e565b9750602083019250506001016122cc565b600061130483836122b3565b6000612307825190565b808452602084019350836020820285016123218560200190565b8060005b85811015612356578484038952815161233e85826122f1565b94506020830160209a909a0199925050600101612325565b5091979650505050505050565b600061166a83836116bb565b6000612379825190565b80845260209384019383018060005b838110156116b057815161239c8882612363565b975060208301925050600101612388565b60006123b7825190565b80845260209384019383018060005b838110156116b05781516123da88826116d1565b9750602083019250506001016123c6565b600061130483836123ad565b6000612401825190565b8084526020840193508360208202850161241b8560200190565b8060005b85811015612356578484038952815161243885826123eb565b94506020830160209a909a019992505060010161241f565b60a0808252810161246181886122fd565b9050818103602083015261247581876122fd565b90508181036040830152612489818661236f565b9050818103606083015261249d818561236f565b9050818103608083015261176e81846123f7565b6000602082840312156124c6576124c6600080fd5b60006105338484611e4b565b6016815260006020820175125b9d985b1a59081c995c1b1a58d85cc818dbdd5b9d60521b81529150611d83565b60208082528101611307816124d2565b60608082528101612520818661236f565b90508181036020830152612534818561236f565b9050818103604083015261254881846123f7565b95945050505050565b601b81526000602082017a24b73b30b634b2103932b3b4b7b7103234b9ba3934b13aba34b7b760291b81529150611d83565b6020808252810161130781612551565b601081526000602082016f496e76616c6964204d6574616461746160801b81529150611d83565b6020808252810161130781612593565b602b81526000602082017f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206981526a6e697469616c697a696e6760a81b602082015291506120d3565b60208082528101611307816125ca565b600d81526000602082016c092dcecc2d8d2c840d2dcc8caf609b1b81529150611d83565b6020808252810161130781612622565b634e487b7160e01b600052603260045260246000fd5b6040810161267a828561155f565b6113806020830184611655565b601a81526000602082017913db9b1e48185b1b1bddd959081c9bdb194818d85b8818d85b1b60321b81529150611d83565b6020808252810161130781612687565b805161130781611c28565b6000602082840312156126e8576126e8600080fd5b600061053384846126c8565b602e81526000602082017f45524331393637557067726164653a206e657720696d706c656d656e7461746981526d6f6e206973206e6f74205555505360901b602082015291506120d3565b60208082528101611307816126f4565b602981526000602082017f45524331393637557067726164653a20756e737570706f727465642070726f788152681a58589b195555525160ba1b602082015291506120d3565b602080825281016113078161274f565b8181038181111561130757611307611ff8565b8082018082111561130757611307611ff8565b601d81526000602082017f496e73756666696369656e7420636f6c6c61746572616c2066756e647300000081529150611d83565b60208082528101611307816127cb565b6008811061060057610600612238565b806118528161280f565b60006113078261281f565b61156181612829565b6080810161284b8287612834565b6128586020830186611655565b6128656040830185611d9a565b612548606083018461155f565b63ffffffff16600063fffffffe19820161288e5761288e611ff8565b5060010190565b602d81526000602082017f455243313936373a206e657720696d706c656d656e746174696f6e206973206e81526c1bdd08184818dbdb9d1c9858dd609a1b602082015291506120d3565b6020808252810161130781612895565b60006128f9825190565b612907818560208601611db1565b9290920192915050565b600061138082846128ef565b601d81526000602082017f416464726573733a2063616c6c20746f206e6f6e2d636f6e747261637400000081529150611d83565b602080825281016113078161291d565b600061296b825190565b808452602084019350612982818560208601611db1565b61298b816117ee565b9093019392505050565b60208082528101611304818461296156fe46756e6374696f6e206d7573742062652063616c6c6564207468726f75676820360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc416464726573733a206c6f772d6c6576656c2064656c65676174652063616c6c206661696c6564a2646970667358221220be3cf51140e2899708f6e3c61cd4896217e45b014c8c534fc9f9cf25280b0b9c64736f6c63430008150033",
  "linkReferences": {},
  "deployedLinkReferences": {}
}
