@settlemint/solidity-diamond-bond
Version:
Smart contract set to build an enterprise bond usecase in SettleMint
315 lines (314 loc) • 27.5 kB
JSON
{
"_format": "hh-sol-artifact-1",
"contractName": "DiamondTestContract",
"sourceName": "contracts/DiamondTestContract.sol",
"abi": [
{
"inputs": [
{
"internalType": "bytes4",
"name": "_selector",
"type": "bytes4"
}
],
"name": "CannotAddFunctionToDiamondThatAlreadyExists",
"type": "error"
},
{
"inputs": [
{
"internalType": "bytes4[]",
"name": "_selectors",
"type": "bytes4[]"
}
],
"name": "CannotAddSelectorsToZeroAddress",
"type": "error"
},
{
"inputs": [
{
"internalType": "bytes4",
"name": "_selector",
"type": "bytes4"
}
],
"name": "CannotRemoveFunctionThatDoesNotExist",
"type": "error"
},
{
"inputs": [
{
"internalType": "bytes4",
"name": "_selector",
"type": "bytes4"
}
],
"name": "CannotRemoveImmutableFunction",
"type": "error"
},
{
"inputs": [
{
"internalType": "bytes4",
"name": "_selector",
"type": "bytes4"
}
],
"name": "CannotReplaceFunctionThatDoesNotExists",
"type": "error"
},
{
"inputs": [
{
"internalType": "bytes4",
"name": "_selector",
"type": "bytes4"
}
],
"name": "CannotReplaceFunctionWithTheSameFunctionFromTheSameFacet",
"type": "error"
},
{
"inputs": [
{
"internalType": "bytes4[]",
"name": "_selectors",
"type": "bytes4[]"
}
],
"name": "CannotReplaceFunctionsFromFacetWithZeroAddress",
"type": "error"
},
{
"inputs": [
{
"internalType": "bytes4",
"name": "_selector",
"type": "bytes4"
}
],
"name": "CannotReplaceImmutableFunction",
"type": "error"
},
{
"inputs": [
{
"internalType": "uint8",
"name": "_action",
"type": "uint8"
}
],
"name": "IncorrectFacetCutAction",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "_initializationContractAddress",
"type": "address"
},
{
"internalType": "bytes",
"name": "_calldata",
"type": "bytes"
}
],
"name": "InitializationFunctionReverted",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "_contractAddress",
"type": "address"
},
{
"internalType": "string",
"name": "_message",
"type": "string"
}
],
"name": "NoBytecodeAtAddress",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "_facetAddress",
"type": "address"
}
],
"name": "NoSelectorsProvidedForFacetForCut",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "_user",
"type": "address"
},
{
"internalType": "address",
"name": "_contractOwner",
"type": "address"
}
],
"name": "NotContractOwner",
"type": "error"
},
{
"inputs": [
{
"internalType": "address",
"name": "_facetAddress",
"type": "address"
}
],
"name": "RemoveFacetAddressMustBeZeroAddress",
"type": "error"
},
{
"anonymous": false,
"inputs": [
{
"components": [
{
"internalType": "address",
"name": "facetAddress",
"type": "address"
},
{
"internalType": "enum IDiamond.FacetCutAction",
"name": "action",
"type": "uint8"
},
{
"internalType": "bytes4[]",
"name": "functionSelectors",
"type": "bytes4[]"
}
],
"indexed": false,
"internalType": "struct IDiamond.FacetCut[]",
"name": "_diamondCut",
"type": "tuple[]"
},
{
"indexed": false,
"internalType": "address",
"name": "_init",
"type": "address"
},
{
"indexed": false,
"internalType": "bytes",
"name": "_calldata",
"type": "bytes"
}
],
"name": "DiamondCut",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "previousOwner",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "newOwner",
"type": "address"
}
],
"name": "OwnershipTransferred",
"type": "event"
},
{
"inputs": [],
"name": "contractOwner",
"outputs": [
{
"internalType": "address",
"name": "",
"type": "address"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"components": [
{
"internalType": "address",
"name": "facetAddress",
"type": "address"
},
{
"internalType": "enum IDiamond.FacetCutAction",
"name": "action",
"type": "uint8"
},
{
"internalType": "bytes4[]",
"name": "functionSelectors",
"type": "bytes4[]"
}
],
"internalType": "struct IDiamond.FacetCut[]",
"name": "_diamondCut",
"type": "tuple[]"
},
{
"internalType": "address",
"name": "_init",
"type": "address"
},
{
"internalType": "bytes",
"name": "_calldata",
"type": "bytes"
}
],
"name": "diamondCut",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "enforceIsContractOwner",
"outputs": [],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"internalType": "address",
"name": "_newOwner",
"type": "address"
}
],
"name": "setContractOwner",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
}
],
"bytecode": "0x60808060405234601557611408908161001b8239f35b600080fdfe6080604052600436101561001257600080fd5b60003560e01c80631f931c1c14610276578063a34d42b81461015f578063ce606ee0146100ee5763d16709141461004857600080fd5b346100e95760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100e95773ffffffffffffffffffffffffffffffffffffffff7fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131f54168033036100b857005b7fff4127cb000000000000000000000000000000000000000000000000000000006000523360045260245260446000fd5b600080fd5b346100e95760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100e957602073ffffffffffffffffffffffffffffffffffffffff7fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131f5416604051908152f35b346100e95760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100e95760043573ffffffffffffffffffffffffffffffffffffffff81168091036100e95773ffffffffffffffffffffffffffffffffffffffff7fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131f5416817fffffffffffffffffffffffff00000000000000000000000000000000000000007fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131f5416177fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131f557f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0600080a3005b346100e95760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100e95760043567ffffffffffffffff81116100e957366023820112156100e95780600401356102d86102d382611084565b611040565b9160208383815201906024829360051b820101903682116100e95760248101925b828410610ee75785856024359073ffffffffffffffffffffffffffffffffffffffff8216918281036100e9576044359067ffffffffffffffff82116100e957366023830112156100e95781600401356103546102d38261109c565b9281845236602483830101116100e957858460006020858b9660248b970183860137830101526000935b8051851015610d9857604061039386836110d6565b5101519273ffffffffffffffffffffffffffffffffffffffff6103b687846110d6565b51511694845115610d6a5760206103cd88856110d6565b5101516003811015610d3b5760008161073857505085156107005761ffff7fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131d54169361047261041c6060611040565b602481527f4c69624469616d6f6e644375743a2041646420666163657420686173206e6f2060208201527f636f64650000000000000000000000000000000000000000000000000000000060408201528861136c565b6000945b86518610156106e9577fffffffff000000000000000000000000000000000000000000000000000000006104aa87896110d6565b5116806000527fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c60205273ffffffffffffffffffffffffffffffffffffffff604060002054166106bc576105c66104ff611020565b8a815261ffff8060208301951694858152846000527fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c60205273ffffffffffffffffffffffffffffffffffffffff806040600020945116167fffffffffffffffffffffffff000000000000000000000000000000000000000084541617835551167fffffffffffffffffffff0000ffffffffffffffffffffffffffffffffffffffff75ffff000000000000000000000000000000000000000083549260a01b169116179055565b7fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131d54906801000000000000000082101561068d5761062c82600161064994017fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131d55611178565b90919063ffffffff83549160031b9260e01c831b921b1916179055565b61ffff811461065e5760019586019501610476565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7febbf5d070000000000000000000000000000000000000000000000000000000060005260045260246000fd5b5094509450946001919692505b019391909461037e565b6040517f0ae3681c0000000000000000000000000000000000000000000000000000000081528061073487600483016111f7565b0390fd5b509597956001810361098457508715610950579294926107b161075b6060611040565b602881527f4c69624469616d6f6e644375743a205265706c6163652066616365742068617360208201527f206e6f20636f646500000000000000000000000000000000000000000000000060408201528961136c565b73ffffffffffffffffffffffffffffffffffffffff88169560005b8651811015610940577fffffffff0000000000000000000000000000000000000000000000000000000061080082896110d6565b5116806000527fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c60205273ffffffffffffffffffffffffffffffffffffffff60406000205416308114610912578b81146108e457156108b757906001916000527fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c6020526040600020897fffffffffffffffffffffffff0000000000000000000000000000000000000000825416179055016107cc565b7f7479f9390000000000000000000000000000000000000000000000000000000060005260045260246000fd5b507f358d9d1a0000000000000000000000000000000000000000000000000000000060005260045260246000fd5b507f520300da0000000000000000000000000000000000000000000000000000000060005260045260246000fd5b50945094509460019196506106f6565b6040517fcd98a96f0000000000000000000000000000000000000000000000000000000081528061073487600483016111f7565b6000969596949192939460028214600014610d085750507fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131d549780610cdb575060005b8651811015610ccb577fffffffff000000000000000000000000000000000000000000000000000000006109fb82896110d6565b511690816000527fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c602052604060002099610a34611020565b9a549a73ffffffffffffffffffffffffffffffffffffffff8c1680825261ffff602083019d60a01c168d5215610c9d575173ffffffffffffffffffffffffffffffffffffffff163014610c6f57801561065e577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff018a8161ffff819d511603610ba6575b50507fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131d54918215610b77577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60019301610b1181611178565b63ffffffff82549160031b1b191690557fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131d556000527fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c60205260006040812055016109c7565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b7fffffffff0000000000000000000000000000000000000000000000000000000061ffff610bd6610c6894611178565b90549060031b1c60e01b92610bf18461062c84845116611178565b511691166000527fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c6020526040600020907fffffffffffffffffffff0000ffffffffffffffffffffffffffffffffffffffff75ffff000000000000000000000000000000000000000083549260a01b169116179055565b898b610ab8565b827f6fafeb080000000000000000000000000000000000000000000000000000000060005260045260246000fd5b837f7a08a22d0000000000000000000000000000000000000000000000000000000060005260045260246000fd5b50939296509350936001906106f6565b7fd091bc810000000000000000000000000000000000000000000000000000000060005260045260246000fd5b60ff9250507f7fe9a41e000000000000000000000000000000000000000000000000000000006000521660045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b857fe767f91f0000000000000000000000000000000000000000000000000000000060005260045260246000fd5b8591926040519160608301906060845251809152608083019060808160051b85010196916000905b828210610e1157610e0f88887f8faa70878671ccd212d20771b795c50af8fd3ff6cf27f4bde57e5d4de0aeb6738980610e078f8c6020840152828103604084015286611119565b0390a1611253565b005b909192977fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff808682030182528851606082019073ffffffffffffffffffffffffffffffffffffffff81511683526020810151906003821015610d3b57604060809160209384870152015193606060408201528451809452019201906000905b808210610ead575050506020806001929a0192019201909291610dc0565b9091926020806001927fffffffff000000000000000000000000000000000000000000000000000000008751168152019401920190610e8f565b833567ffffffffffffffff81116100e957820160607fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdc82360301126100e957604051906060820182811067ffffffffffffffff82111761068d57604052602481013573ffffffffffffffffffffffffffffffffffffffff811681036100e9578252604481013560038110156100e9576020830152606481013567ffffffffffffffff81116100e957602491010136601f820112156100e9578035610fad6102d382611084565b9160208084848152019260051b820101903682116100e957602001915b818310610fe75750505060408201528152602093840193016102f9565b82357fffffffff00000000000000000000000000000000000000000000000000000000811681036100e957815260209283019201610fca565b604051906040820182811067ffffffffffffffff82111761068d57604052565b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f604051930116820182811067ffffffffffffffff82111761068d57604052565b67ffffffffffffffff811161068d5760051b60200190565b67ffffffffffffffff811161068d57601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b80518210156110ea5760209160051b010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b919082519283825260005b8481106111635750507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8460006020809697860101520116010190565b80602080928401015182828601015201611124565b907fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131d548210156110ea577fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131d600052600382901c7fc0d727610ea16241eff4447d08bb1b4595f7d2ec4515282437a13b7d0df4b922019160021b601c1690565b602060408183019282815284518094520192019060005b81811061121b5750505090565b82517fffffffff000000000000000000000000000000000000000000000000000000001684526020938401939092019160010161120e565b9073ffffffffffffffffffffffffffffffffffffffff821691821561136757600080916112d96112836060611040565b602881527f4c69624469616d6f6e644375743a205f696e697420616464726573732068617360208201527f206e6f20636f646500000000000000000000000000000000000000000000000060408201528261136c565b83519060208501905af4913d1561135f573d926112f86102d38561109c565b9384523d6000602086013e5b1561130e57505050565b82511561131d57825160208401fd5b6107346040519283927f192105d70000000000000000000000000000000000000000000000000000000084526004840152604060248401526044830190611119565b606092611304565b505050565b90813b15611378575050565b9061073473ffffffffffffffffffffffffffffffffffffffff926040519384937f919834b900000000000000000000000000000000000000000000000000000000855216600484015260406024840152604483019061111956fea2646970667358221220b546685607c50113a59fc252500dad891a3f95c3315e259469ca24e00500bbf464736f6c634300081b0033",
"deployedBytecode": "0x6080604052600436101561001257600080fd5b60003560e01c80631f931c1c14610276578063a34d42b81461015f578063ce606ee0146100ee5763d16709141461004857600080fd5b346100e95760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100e95773ffffffffffffffffffffffffffffffffffffffff7fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131f54168033036100b857005b7fff4127cb000000000000000000000000000000000000000000000000000000006000523360045260245260446000fd5b600080fd5b346100e95760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100e957602073ffffffffffffffffffffffffffffffffffffffff7fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131f5416604051908152f35b346100e95760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100e95760043573ffffffffffffffffffffffffffffffffffffffff81168091036100e95773ffffffffffffffffffffffffffffffffffffffff7fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131f5416817fffffffffffffffffffffffff00000000000000000000000000000000000000007fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131f5416177fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131f557f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0600080a3005b346100e95760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc3601126100e95760043567ffffffffffffffff81116100e957366023820112156100e95780600401356102d86102d382611084565b611040565b9160208383815201906024829360051b820101903682116100e95760248101925b828410610ee75785856024359073ffffffffffffffffffffffffffffffffffffffff8216918281036100e9576044359067ffffffffffffffff82116100e957366023830112156100e95781600401356103546102d38261109c565b9281845236602483830101116100e957858460006020858b9660248b970183860137830101526000935b8051851015610d9857604061039386836110d6565b5101519273ffffffffffffffffffffffffffffffffffffffff6103b687846110d6565b51511694845115610d6a5760206103cd88856110d6565b5101516003811015610d3b5760008161073857505085156107005761ffff7fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131d54169361047261041c6060611040565b602481527f4c69624469616d6f6e644375743a2041646420666163657420686173206e6f2060208201527f636f64650000000000000000000000000000000000000000000000000000000060408201528861136c565b6000945b86518610156106e9577fffffffff000000000000000000000000000000000000000000000000000000006104aa87896110d6565b5116806000527fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c60205273ffffffffffffffffffffffffffffffffffffffff604060002054166106bc576105c66104ff611020565b8a815261ffff8060208301951694858152846000527fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c60205273ffffffffffffffffffffffffffffffffffffffff806040600020945116167fffffffffffffffffffffffff000000000000000000000000000000000000000084541617835551167fffffffffffffffffffff0000ffffffffffffffffffffffffffffffffffffffff75ffff000000000000000000000000000000000000000083549260a01b169116179055565b7fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131d54906801000000000000000082101561068d5761062c82600161064994017fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131d55611178565b90919063ffffffff83549160031b9260e01c831b921b1916179055565b61ffff811461065e5760019586019501610476565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7febbf5d070000000000000000000000000000000000000000000000000000000060005260045260246000fd5b5094509450946001919692505b019391909461037e565b6040517f0ae3681c0000000000000000000000000000000000000000000000000000000081528061073487600483016111f7565b0390fd5b509597956001810361098457508715610950579294926107b161075b6060611040565b602881527f4c69624469616d6f6e644375743a205265706c6163652066616365742068617360208201527f206e6f20636f646500000000000000000000000000000000000000000000000060408201528961136c565b73ffffffffffffffffffffffffffffffffffffffff88169560005b8651811015610940577fffffffff0000000000000000000000000000000000000000000000000000000061080082896110d6565b5116806000527fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c60205273ffffffffffffffffffffffffffffffffffffffff60406000205416308114610912578b81146108e457156108b757906001916000527fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c6020526040600020897fffffffffffffffffffffffff0000000000000000000000000000000000000000825416179055016107cc565b7f7479f9390000000000000000000000000000000000000000000000000000000060005260045260246000fd5b507f358d9d1a0000000000000000000000000000000000000000000000000000000060005260045260246000fd5b507f520300da0000000000000000000000000000000000000000000000000000000060005260045260246000fd5b50945094509460019196506106f6565b6040517fcd98a96f0000000000000000000000000000000000000000000000000000000081528061073487600483016111f7565b6000969596949192939460028214600014610d085750507fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131d549780610cdb575060005b8651811015610ccb577fffffffff000000000000000000000000000000000000000000000000000000006109fb82896110d6565b511690816000527fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c602052604060002099610a34611020565b9a549a73ffffffffffffffffffffffffffffffffffffffff8c1680825261ffff602083019d60a01c168d5215610c9d575173ffffffffffffffffffffffffffffffffffffffff163014610c6f57801561065e577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff018a8161ffff819d511603610ba6575b50507fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131d54918215610b77577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60019301610b1181611178565b63ffffffff82549160031b1b191690557fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131d556000527fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c60205260006040812055016109c7565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b7fffffffff0000000000000000000000000000000000000000000000000000000061ffff610bd6610c6894611178565b90549060031b1c60e01b92610bf18461062c84845116611178565b511691166000527fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c6020526040600020907fffffffffffffffffffff0000ffffffffffffffffffffffffffffffffffffffff75ffff000000000000000000000000000000000000000083549260a01b169116179055565b898b610ab8565b827f6fafeb080000000000000000000000000000000000000000000000000000000060005260045260246000fd5b837f7a08a22d0000000000000000000000000000000000000000000000000000000060005260045260246000fd5b50939296509350936001906106f6565b7fd091bc810000000000000000000000000000000000000000000000000000000060005260045260246000fd5b60ff9250507f7fe9a41e000000000000000000000000000000000000000000000000000000006000521660045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b857fe767f91f0000000000000000000000000000000000000000000000000000000060005260045260246000fd5b8591926040519160608301906060845251809152608083019060808160051b85010196916000905b828210610e1157610e0f88887f8faa70878671ccd212d20771b795c50af8fd3ff6cf27f4bde57e5d4de0aeb6738980610e078f8c6020840152828103604084015286611119565b0390a1611253565b005b909192977fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff808682030182528851606082019073ffffffffffffffffffffffffffffffffffffffff81511683526020810151906003821015610d3b57604060809160209384870152015193606060408201528451809452019201906000905b808210610ead575050506020806001929a0192019201909291610dc0565b9091926020806001927fffffffff000000000000000000000000000000000000000000000000000000008751168152019401920190610e8f565b833567ffffffffffffffff81116100e957820160607fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffdc82360301126100e957604051906060820182811067ffffffffffffffff82111761068d57604052602481013573ffffffffffffffffffffffffffffffffffffffff811681036100e9578252604481013560038110156100e9576020830152606481013567ffffffffffffffff81116100e957602491010136601f820112156100e9578035610fad6102d382611084565b9160208084848152019260051b820101903682116100e957602001915b818310610fe75750505060408201528152602093840193016102f9565b82357fffffffff00000000000000000000000000000000000000000000000000000000811681036100e957815260209283019201610fca565b604051906040820182811067ffffffffffffffff82111761068d57604052565b907fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f604051930116820182811067ffffffffffffffff82111761068d57604052565b67ffffffffffffffff811161068d5760051b60200190565b67ffffffffffffffff811161068d57601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01660200190565b80518210156110ea5760209160051b010190565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b919082519283825260005b8481106111635750507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8460006020809697860101520116010190565b80602080928401015182828601015201611124565b907fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131d548210156110ea577fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131d600052600382901c7fc0d727610ea16241eff4447d08bb1b4595f7d2ec4515282437a13b7d0df4b922019160021b601c1690565b602060408183019282815284518094520192019060005b81811061121b5750505090565b82517fffffffff000000000000000000000000000000000000000000000000000000001684526020938401939092019160010161120e565b9073ffffffffffffffffffffffffffffffffffffffff821691821561136757600080916112d96112836060611040565b602881527f4c69624469616d6f6e644375743a205f696e697420616464726573732068617360208201527f206e6f20636f646500000000000000000000000000000000000000000000000060408201528261136c565b83519060208501905af4913d1561135f573d926112f86102d38561109c565b9384523d6000602086013e5b1561130e57505050565b82511561131d57825160208401fd5b6107346040519283927f192105d70000000000000000000000000000000000000000000000000000000084526004840152604060248401526044830190611119565b606092611304565b505050565b90813b15611378575050565b9061073473ffffffffffffffffffffffffffffffffffffffff926040519384937f919834b900000000000000000000000000000000000000000000000000000000855216600484015260406024840152604483019061111956fea2646970667358221220b546685607c50113a59fc252500dad891a3f95c3315e259469ca24e00500bbf464736f6c634300081b0033",
"linkReferences": {},
"deployedLinkReferences": {}
}