From 8556774de2ea9797cb847a15443f3c9a275d112e Mon Sep 17 00:00:00 2001 From: Sarvagnya Purohit Date: Thu, 16 Feb 2023 00:49:17 +0530 Subject: [PATCH] registration changes --- artifacts/Charity.json | 18853 ++++++ artifacts/Charity_metadata.json | 941 + artifacts/OrgCreation.json | 11946 ++++ artifacts/OrgCreation_metadata.json | 456 + .../contracts/OrgOperation-solc-output.json | 52278 ++++++++++++++++ bin/hardhat/contracts/OrgOperation.abi | 1 + bin/hardhat/contracts/OrgOperation.bin | 1 + bin/hardhat/contracts/OrgOperation.json | 16375 +++++ frontend/constants/index.js | 1355 +- frontend/package-lock.json | 10615 ++-- frontend/package.json | 8 +- frontend/pages/login.js | 122 + frontend/pages/orgRegistration.js | 458 + frontend/yarn.lock | 108 +- hardhat/contracts/Charity.sol | 793 + hardhat/contracts/OrgCreation.sol | 303 + hardhat/contracts/OrgOperation.sol | 372 + 17 files changed, 109725 insertions(+), 5260 deletions(-) create mode 100644 artifacts/Charity.json create mode 100644 artifacts/Charity_metadata.json create mode 100644 artifacts/OrgCreation.json create mode 100644 artifacts/OrgCreation_metadata.json create mode 100644 bin/hardhat/contracts/OrgOperation-solc-output.json create mode 100644 bin/hardhat/contracts/OrgOperation.abi create mode 100644 bin/hardhat/contracts/OrgOperation.bin create mode 100644 bin/hardhat/contracts/OrgOperation.json create mode 100644 frontend/pages/login.js create mode 100644 frontend/pages/orgRegistration.js create mode 100644 hardhat/contracts/Charity.sol create mode 100644 hardhat/contracts/OrgCreation.sol create mode 100644 hardhat/contracts/OrgOperation.sol diff --git a/artifacts/Charity.json b/artifacts/Charity.json new file mode 100644 index 0000000..1da5bdd --- /dev/null +++ b/artifacts/Charity.json @@ -0,0 +1,18853 @@ +{ + "deploy": { + "VM:-": { + "linkReferences": {}, + "autoDeployLib": true + }, + "main:1": { + "linkReferences": {}, + "autoDeployLib": true + }, + "ropsten:3": { + "linkReferences": {}, + "autoDeployLib": true + }, + "rinkeby:4": { + "linkReferences": {}, + "autoDeployLib": true + }, + "kovan:42": { + "linkReferences": {}, + "autoDeployLib": true + }, + "görli:5": { + "linkReferences": {}, + "autoDeployLib": true + }, + "Custom": { + "linkReferences": {}, + "autoDeployLib": true + } + }, + "data": { + "bytecode": { + "functionDebugData": { + "@_183": { + "entryPoint": null, + "id": 183, + "parameterSlots": 0, + "returnSlots": 0 + } + }, + "generatedSources": [], + "linkReferences": {}, + "object": "60806040523480156200001157600080fd5b5033600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506706f05b59d3b2000060118190555060006012819055506188f5806200007a6000396000f3fe608060405234801561001057600080fd5b506004361061028a5760003560e01c80637d7e898a1161015c578063b7627e41116100ce578063de2d0ad011610087578063de2d0ad014610724578063e3323aba1461072e578063e75176b51461074c578063ef2d58471461077c578063f851a44014610798578063fa157f69146107b65761028a565b8063b7627e4114610662578063bb6f5bb414610692578063bc489aa9146106b0578063bfaae62f146106ba578063c9dfca10146106d8578063cdc1a476146107085761028a565b8063914f4cf211610120578063914f4cf2146105b6578063972ac5bb146105c057806399d43c7c146105de578063a52da85d1461060e578063ac64fcde1461062a578063b5e801d5146106465761028a565b80637d7e898a1461053757806380007e831461054157806386bae5681461055f5780638e349519146105905780638fc0ed2f146105ac5761028a565b80634438d4b0116102005780635cf9303f116101b95780635cf9303f146104795780635d0161f1146104a95780635e8e5efd146104c757806362ae7ac7146104e35780636db58829146104ff578063729c70591461051b5761028a565b80634438d4b0146103b95780634648df2a146103d5578063482bd55b146104055780634945a7ad146104215780634bea3db71461043d5780634cf5d5521461045b5761028a565b806322fb1dfd1161025257806322fb1dfd1461031d5780632d80468d146103275780633822b758146103455780633a1693031461034f5780633e85747e1461036d578063440370fe1461039d5761028a565b806302d32f901461028f578063134714ca146102bf578063149d4146146102c957806314cb11e8146102e55780631e47718014610301575b600080fd5b6102a960048036038101906102a491906177a1565b6107d2565b6040516102b6919061780f565b60405180910390f35b6102c7610c62565b005b6102e360048036038101906102de919061782a565b610d6c565b005b6102ff60048036038101906102fa9190617857565b610e78565b005b61031b600480360381019061031691906178b0565b611035565b005b610325611c5d565b005b61032f611cd0565b60405161033c9190617c71565b60405180910390f35b61034d6123f0565b005b610357612444565b6040516103649190617e52565b60405180910390f35b61038760048036038101906103829190617857565b612953565b604051610394919061780f565b60405180910390f35b6103b760048036038101906103b29190617fa9565b6129dc565b005b6103d360048036038101906103ce9190617857565b612cf2565b005b6103ef60048036038101906103ea9190618078565b6132dc565b6040516103fc919061780f565b60405180910390f35b61041f600480360381019061041a91906180b8565b61333b565b005b61043b6004803603810190610436919061782a565b61358e565b005b610445613b88565b60405161045291906181d6565b60405180910390f35b610463613c49565b6040516104709190618207565b60405180910390f35b610493600480360381019061048e9190617857565b613c4f565b6040516104a09190618207565b60405180910390f35b6104b1613c9a565b6040516104be9190617c71565b60405180910390f35b6104e160048036038101906104dc9190617857565b614448565b005b6104fd60048036038101906104f89190617857565b614572565b005b6105196004803603810190610514919061782a565b6145e7565b005b6105356004803603810190610530919061782a565b614d4c565b005b61053f614e54565b005b610549614ec7565b604051610556919061780f565b60405180910390f35b610579600480360381019061057491906178b0565b614f1d565b604051610587929190618222565b60405180910390f35b6105aa60048036038101906105a59190617857565b614f9d565b005b6105b4615281565b005b6105be6153b3565b005b6105c8615423565b6040516105d591906182ba565b60405180910390f35b6105f860048036038101906105f391906177a1565b6154b1565b604051610605919061780f565b60405180910390f35b61062860048036038101906106239190617857565b615940565b005b610644600480360381019061063f91906182dc565b615d10565b005b610660600480360381019061065b9190617857565b615f0a565b005b61067c60048036038101906106779190617857565b6160c7565b6040516106899190618207565b60405180910390f35b61069a616112565b6040516106a791906182ba565b60405180910390f35b6106b861639c565b005b6106c26164d2565b6040516106cf91906182ba565b60405180910390f35b6106f260048036038101906106ed9190617857565b616749565b6040516106ff919061780f565b60405180910390f35b610722600480360381019061071d9190617857565b6167d1565b005b61072c616986565b005b6107366169f9565b604051610743919061780f565b60405180910390f35b61076660048036038101906107619190617857565b616a4f565b6040516107739190618207565b60405180910390f35b61079660048036038101906107919190617857565b616a81565b005b6107a06171dd565b6040516107ad919061838a565b60405180910390f35b6107d060048036038101906107cb919061782a565b617203565b005b6000838360008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600b0154141561085b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161085290618428565b60405180910390fd5b6000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160009054906101000a900460ff16156108ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108e190618494565b60405180910390fd5b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600b01541415801561098757506000808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160009054906101000a900460ff165b6109c6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109bd90618526565b60405180910390fd5b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610a85576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a7c906185b8565b60405180910390fd5b60016000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206004016000828254610ad79190618607565b925050819055506000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600701859080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506002600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550836000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600b01541015610c545760019250610c59565b600092505b50509392505050565b6000601480549050905060005b81811015610d68576014805480610c8957610c8861865d565b5b60019003818190600052602060002090600a0201600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905560018201600090556002820160009055600382016000610ce59190617310565b600482016000610cf59190617310565b600582016000905560068201600090556007820160006101000a81549060ff0219169055600882016000610d299190617331565b6009820160006101000a81549060ff02191690556009820160016101000a81549060ff0219169055505090558080610d609061868c565b915050610c6f565b5050565b60016006600083815260200190815260200160002060050154610d8f9190618607565b600660008381526020019081526020016000206005018190555060066000828152602001908152602001600020600701339080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600280600083815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050565b6001600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020154610ec79190618607565b600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020181905550600760008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600401339080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506002600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050565b801561164c576000805b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600301548110156113c65760016000808060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060184815481106110e0576110df6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a01546111539190618607565b6000808060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060184815481106111a9576111a86186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a0181905550601154826112239190618607565b91506011546000808060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600601848154811061127e5761127d6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600801546112f19190618607565b6000808060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206006018481548110611347576113466186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206008018190555080806113be9061868c565b91505061103f565b50806000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600801546114149190618704565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206008018190555060005b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600401548110156116455760016000808060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060070184815481106114fd576114fc6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a01546115709190618704565b6000808060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060070184815481106115c6576115c56186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a0181905550808061163d9061868c565b91505061145c565b5050611c59565b6000805b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600401548110156119d75760016000808060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060070184815481106116f1576116f06186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a01546117649190618607565b6000808060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060070184815481106117ba576117b96186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a0181905550601154826118349190618607565b91506011546000808060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600701848154811061188f5761188e6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600801546119029190618607565b6000808060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206007018481548110611958576119576186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206008018190555080806119cf9061868c565b915050611650565b50806000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060080154611a259190618704565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206008018190555060005b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030154811015611c565760016000808060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206006018481548110611b0e57611b0d6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a0154611b819190618704565b6000808060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206006018481548110611bd757611bd66186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a01819055508080611c4e9061868c565b915050611a6d565b50505b5050565b6000600b80549050905060005b81811015611ccc57600b805480611c8457611c8361865d565b5b6001900381819060005260206000200160006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905590558080611cc49061868c565b915050611c6a565b5050565b606060005b600880549050811015611fe6576000151560008060088481548110611cfd57611cfc6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600c0160009054906101000a900460ff1615151415611fd357601360008060088481548110611d9457611d936186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090806001815401808255809150506001900390600052602060002090600d02016000909190919091506000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001820181600101908054611e9d90618767565b611ea8929190617371565b506002820181600201908054611ebd90618767565b611ec8929190617371565b5060038201548160030155600482015481600401556005820160009054906101000a900460ff168160050160006101000a81548160ff0219169083151502179055506006820181600601908054611f209291906173fe565b506007820181600701908054611f379291906173fe565b50600882015481600801556009820181600901908054611f5690618767565b611f61929190617371565b50600a82015481600a0155600b82015481600b0155600c820160009054906101000a900460ff1681600c0160006101000a81548160ff021916908315150217905550600c820160019054906101000a900460ff1681600c0160016101000a81548160ff02191690831515021790555050505b8080611fde9061868c565b915050611cd5565b506013805480602002602001604051908101604052809291908181526020016000905b828210156123e757838290600052602060002090600d0201604051806101c00160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200160018201805461209390618767565b80601f01602080910402602001604051908101604052809291908181526020018280546120bf90618767565b801561210c5780601f106120e15761010080835404028352916020019161210c565b820191906000526020600020905b8154815290600101906020018083116120ef57829003601f168201915b5050505050815260200160028201805461212590618767565b80601f016020809104026020016040519081016040528092919081815260200182805461215190618767565b801561219e5780601f106121735761010080835404028352916020019161219e565b820191906000526020600020905b81548152906001019060200180831161218157829003601f168201915b5050505050815260200160038201548152602001600482015481526020016005820160009054906101000a900460ff161515151581526020016006820180548060200260200160405190810160405280929190818152602001828054801561225b57602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311612211575b50505050508152602001600782018054806020026020016040519081016040528092919081815260200182805480156122e957602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001906001019080831161229f575b505050505081526020016008820154815260200160098201805461230c90618767565b80601f016020809104026020016040519081016040528092919081815260200182805461233890618767565b80156123855780601f1061235a57610100808354040283529160200191612385565b820191906000526020600020905b81548152906001019060200180831161236857829003601f168201915b50505050508152602001600a8201548152602001600b8201548152602001600c820160009054906101000a900460ff16151515158152602001600c820160019054906101000a900460ff16151515158152505081526020019060010190612009565b50505050905090565b6000600c80549050905060005b8181101561244057600c8054806124175761241661865d565b5b6001900381819060005260206000200160009055905580806124389061868c565b9150506123fd565b5050565b606060005b600d8054905081101561267757601460076000600d84815481106124705761246f6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090806001815401808255809150506001900390600052602060002090600a02016000909190919091506000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001820154816001015560028201548160020155600382018160030190805461258f9291906173fe565b5060048201816004019080546125a69291906173fe565b5060058201548160050155600682015481600601556007820160009054906101000a900460ff168160070160006101000a81548160ff02191690831515021790555060088201816008019080546125fc90618767565b612607929190617371565b506009820160009054906101000a900460ff168160090160006101000a81548160ff0219169083151502179055506009820160019054906101000a900460ff168160090160016101000a81548160ff0219169083151502179055505050808061266f9061868c565b915050612449565b506014805480602002602001604051908101604052809291908181526020016000905b8282101561294a57838290600052602060002090600a0201604051806101600160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016001820154815260200160028201548152602001600382018054806020026020016040519081016040528092919081815260200182805480156127ad57602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311612763575b505050505081526020016004820180548060200260200160405190810160405280929190818152602001828054801561283b57602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190600101908083116127f1575b5050505050815260200160058201548152602001600682015481526020016007820160009054906101000a900460ff1615151515815260200160088201805461288390618767565b80601f01602080910402602001604051908101604052809291908181526020018280546128af90618767565b80156128fc5780601f106128d1576101008083540402835291602001916128fc565b820191906000526020600020905b8154815290600101906020018083116128df57829003601f168201915b505050505081526020016009820160009054906101000a900460ff161515151581526020016009820160019054906101000a900460ff1615151515815250508152602001906001019061269a565b50505050905090565b60006002600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054149050919050565b60008060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600b015414612a60576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a57906187e5565b60405180910390fd5b612a68617450565b85816000019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050848160200181905250838160400181905250828161012001819052506202a30082612acb9190618607565b81610160018181525050806000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506020820151816001019080519060200190612b779291906174db565b506040820151816002019080519060200190612b949291906174db565b50606082015181600301556080820151816004015560a08201518160050160006101000a81548160ff02191690831515021790555060c0820151816006019080519060200190612be5929190617561565b5060e0820151816007019080519060200190612c02929190617561565b506101008201518160080155610120820151816009019080519060200190612c2b9291906174db565b5061014082015181600a015561016082015181600b015561018082015181600c0160006101000a81548160ff0219169083151502179055506101a082015181600c0160016101000a81548160ff0219169083151502179055509050506008869080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505050505050565b60001515600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060070160009054906101000a900460ff16151514156132d95760008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160006101000a81548160ff02191690831515021790555060008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600c0160006101000a81548160ff021916908315150217905550600160106000828254612e159190618704565b925050819055506000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600080600090505b6008805490508110156130dc5760008060088381548110612ea057612e9f6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160009054906101000a900460ff168015612fa0575060008060088381548110612f3457612f336186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a015482105b156130c95760008060088381548110612fbc57612fbb6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a01549150600a6008828154811061303d5761303c6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b80806130d49061868c565b915050612e7c565b506000600a805490506000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600801546131319190618834565b905060005b600a805490508110156132645781600080600a848154811061315b5761315a6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600801546131ce9190618607565b600080600a84815481106131e5576131e46186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060080181905550808061325c9061868c565b915050613136565b506000600a80549050905060005b818110156132d457600a80548061328c5761328b61865d565b5b6001900381819060005260206000200160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055905580806132cc9061868c565b915050613272565b505050505b50565b6000816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600b015410156133305760019050613335565b600090505b92915050565b6133436175eb565b83816000019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505082816101000181905250818160a0018181525050620697808261339e9190618607565b8160c001818152505060008161014001901515908115158152505080600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160010155604082015181600201556060820151816003019080519060200190613470929190617561565b50608082015181600401908051906020019061348d929190617561565b5060a0820151816005015560c0820151816006015560e08201518160070160006101000a81548160ff0219169083151502179055506101008201518160080190805190602001906134df9291906174db565b506101208201518160090160006101000a81548160ff0219169083151502179055506101408201518160090160016101000a81548160ff021916908315150217905550905050600d849080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050505050565b60006006600083815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506001151560066000848152602001908152602001600020600b0160009054906101000a900460ff1615151415613b845760008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160006101000a81548160ff02191690831515021790555060008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600c0160006101000a81548160ff0219169083151502179055506001601060008282546136c09190618704565b925050819055506000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600080600090505b600880549050811015613987576000806008838154811061374b5761374a6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160009054906101000a900460ff16801561384b5750600080600883815481106137df576137de6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a015482105b156139745760008060088381548110613867576138666186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a01549150600a600882815481106138e8576138e76186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b808061397f9061868c565b915050613727565b506000600a805490506000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600801546139dc9190618834565b905060005b600a80549050811015613b0f5781600080600a8481548110613a0657613a056186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060080154613a799190618607565b600080600a8481548110613a9057613a8f6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600801819055508080613b079061868c565b9150506139e1565b506000600a80549050905060005b81811015613b7f57600a805480613b3757613b3661865d565b5b6001900381819060005260206000200160006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905590558080613b779061868c565b915050613b1d565b505050505b5050565b606060005b601254811015613bf2574260066000838152602001908152602001600020600a01541015613bdf57600c8190806001815401808255809150506001900390600052602060002001600090919091909150555b8080613bea9061868c565b915050613b8d565b50600c805480602002602001604051908101604052809291908181526020018280548015613c3f57602002820191906000526020600020905b815481526020019060010190808311613c2b575b5050505050905090565b60105481565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600301549050919050565b606060005b60088054905081101561403e5760008060088381548110613cc357613cc26186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160009054906101000a900460ff168015613dce575060008060088381548110613d5757613d566186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600c0160009054906101000a900460ff165b1561402b57601360008060088481548110613dec57613deb6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090806001815401808255809150506001900390600052602060002090600d02016000909190919091506000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001820181600101908054613ef590618767565b613f00929190617371565b506002820181600201908054613f1590618767565b613f20929190617371565b5060038201548160030155600482015481600401556005820160009054906101000a900460ff168160050160006101000a81548160ff0219169083151502179055506006820181600601908054613f789291906173fe565b506007820181600701908054613f8f9291906173fe565b50600882015481600801556009820181600901908054613fae90618767565b613fb9929190617371565b50600a82015481600a0155600b82015481600b0155600c820160009054906101000a900460ff1681600c0160006101000a81548160ff021916908315150217905550600c820160019054906101000a900460ff1681600c0160016101000a81548160ff02191690831515021790555050505b80806140369061868c565b915050613c9f565b506013805480602002602001604051908101604052809291908181526020016000905b8282101561443f57838290600052602060002090600d0201604051806101c00160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016001820180546140eb90618767565b80601f016020809104026020016040519081016040528092919081815260200182805461411790618767565b80156141645780601f1061413957610100808354040283529160200191614164565b820191906000526020600020905b81548152906001019060200180831161414757829003601f168201915b5050505050815260200160028201805461417d90618767565b80601f01602080910402602001604051908101604052809291908181526020018280546141a990618767565b80156141f65780601f106141cb576101008083540402835291602001916141f6565b820191906000526020600020905b8154815290600101906020018083116141d957829003601f168201915b5050505050815260200160038201548152602001600482015481526020016005820160009054906101000a900460ff16151515158152602001600682018054806020026020016040519081016040528092919081815260200182805480156142b357602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311614269575b505050505081526020016007820180548060200260200160405190810160405280929190818152602001828054801561434157602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190600101908083116142f7575b505050505081526020016008820154815260200160098201805461436490618767565b80601f016020809104026020016040519081016040528092919081815260200182805461439090618767565b80156143dd5780601f106143b2576101008083540402835291602001916143dd565b820191906000526020600020905b8154815290600101906020018083116143c057829003601f168201915b50505050508152602001600a8201548152602001600b8201548152602001600c820160009054906101000a900460ff16151515158152602001600c820160019054906101000a900460ff16151515158152505081526020019060010190614061565b50505050905090565b60336010546144579190618865565b60646000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600301546144a59190618865565b106145095760016000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160006101000a81548160ff02191690831515021790555061456f565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160006101000a81548160ff02191690831515021790555061456e816000611035565b5b50565b6001601060008282546145859190618607565b925050819055506001600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60006006600083815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905060066000838152602001908152602001600020600b0160009054906101000a900460ff1615614d485760005b6000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600601805490508110156149c8576011546000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060184815481106146f3576146f26186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600801546147669190618704565b6000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060184815481106147bc576147bb6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206008018190555060016000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060184815481106148805761487f6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a01546148f39190618704565b6000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206006018481548110614949576149486186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a018190555080806149c09061868c565b91505061464e565b5060005b6000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060070180549050811015614d46576011546000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206007018481548110614a7157614a706186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060080154614ae49190618607565b6000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206007018481548110614b3a57614b396186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206008018190555060016000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206007018481548110614bfe57614bfd6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a0154614c719190618607565b6000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206007018481548110614cc757614cc66186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a01819055508080614d3e9061868c565b9150506149cc565b505b5050565b600060066000838152602001908152602001600020600501546006600084815260200190815260200160002060040154614d869190618607565b9050603381614d959190618865565b60646006600085815260200190815260200160002060040154614db89190618865565b10614df157600160066000848152602001908152602001600020600b0160006101000a81548160ff021916908315150217905550614e21565b600060066000848152602001908152602001600020600b0160006101000a81548160ff0219169083151502179055505b60006006600084815260200190815260200160002060080160006101000a81548160ff0219169083151502179055505050565b6000600e80549050905060005b81811015614ec357600e805480614e7b57614e7a61865d565b5b6001900381819060005260206000200160006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905590558080614ebb9061868c565b915050614e61565b5050565b60008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600c0160009054906101000a900460ff16905090565b6000806033601054614f2f9190618865565b60646000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030154614f7d9190618865565b10614f8e5760018391509150614f96565b600083915091505b9250929050565b6000600980549050905060005b8181101561500c576009805480614fc457614fc361865d565b5b6001900381819060005260206000200160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055905580806150049061868c565b915050614faa565b5060005b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060180549050811015615144576000600560008060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060184815481106150b5576150b46186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550808061513c9061868c565b915050615010565b5060005b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206007018054905081101561527c576000600560008060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060070184815481106151ed576151ec6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555080806152749061868c565b915050615148565b505050565b6000601380549050905060005b818110156153af5760138054806152a8576152a761865d565b5b60019003818190600052602060002090600d0201600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001820160006152f49190617331565b6002820160006153049190617331565b600382016000905560048201600090556005820160006101000a81549060ff02191690556006820160006153389190617310565b6007820160006153489190617310565b60088201600090556009820160006153609190617331565b600a820160009055600b820160009055600c820160006101000a81549060ff0219169055600c820160016101000a81549060ff02191690555050905580806153a79061868c565b91505061528e565b5050565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600c0160006101000a81548160ff021916908315150217905550615418336001611035565b61542133614572565b565b6060600d8054806020026020016040519081016040528092919081815260200182805480156154a757602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001906001019080831161545d575b5050505050905090565b6000838360008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600b0154141561553a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161553190618428565b60405180910390fd5b6000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160009054906101000a900460ff16156155c9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016155c090618494565b60405180910390fd5b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600b01541415801561566657506000808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160009054906101000a900460ff165b6156a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161569c90618526565b60405180910390fd5b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414615764576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161575b906185b8565b60405180910390fd5b60016000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160008282546157b69190618607565b925050819055506000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600601859080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060018060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550836000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600b015410156159325760019250615937565b600092505b50509392505050565b60005b6000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060180549050811015615a77576001600560008060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060184815481106159e8576159e76186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080615a6f9061868c565b915050615943565b5060005b6000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060070180549050811015615baf576001600560008060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206007018481548110615b2057615b1f6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080615ba79061868c565b915050615a7b565b5060005b600880549050811015615d0c57600015156005600060088481548110615bdc57615bdb6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151415615cf957600960088281548110615c6d57615c6c6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b8080615d049061868c565b915050615bb3565b5050565b615d18617661565b60125481600001818152505084816020019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505083816040018190525082816060018190525081816101200181815250506206978082615d889190618607565b81610140018181525050600181610100019015159081151581525050806006600060125481526020019081526020016000206000820151816000015560208201518160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506040820151816002019080519060200190615e279291906174db565b506060820151816003019080519060200190615e449291906174db565b506080820151816004015560a0820151816005015560c0820151816006019080519060200190615e75929190617561565b5060e0820151816007019080519060200190615e92929190617561565b506101008201518160080160006101000a81548160ff021916908315150217905550610120820151816009015561014082015181600a015561016082015181600b0160006101000a81548160ff0219169083151502179055509050506001601254615efd9190618607565b6012819055505050505050565b6001600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154615f599190618607565b600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010181905550600760008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600301339080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600401549050919050565b606060005b60088054905081101561630f57600115156000806008848154811061613f5761613e6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600c0160009054906101000a900460ff16151514801561625557506000151560076000600884815481106161db576161da6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060090160019054906101000a900460ff161515145b156162fc57600e600882815481106162705761626f6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b80806163079061868c565b915050616117565b50600e80548060200260200160405190810160405280929190818152602001828054801561639257602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311616348575b5050505050905090565b60005b6009805490508110156164cf57601154600080600984815481106163c6576163c56186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600801546164399190618704565b600080600984815481106164505761644f6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206008018190555080806164c79061868c565b91505061639f565b50565b606060005b6008805490508110156166bc5760001515600080600884815481106164ff576164fe6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600c0160019054906101000a900460ff16151514801561660257504260008060088481548110616597576165966186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600b0154105b156166a957600b6008828154811061661d5761661c6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b80806166b49061868c565b9150506164d7565b50600b80548060200260200160405190810160405280929190818152602001828054801561673f57602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190600101908083116166f5575b5050505050905090565b600060018060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054149050919050565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020154600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101546168639190618607565b90506033816168729190618865565b6064600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101546168c19190618865565b10616926576001600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060070160006101000a81548160ff021916908315150217905550616982565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060070160006101000a81548160ff0219169083151502179055505b5050565b6000600d80549050905060005b818110156169f557600d8054806169ad576169ac61865d565b5b6001900381819060005260206000200160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055905580806169ed9061868c565b915050616993565b5050565b60008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600c0160009054906101000a900460ff16905090565b6000616a5a826160c7565b616a6383613c4f565b601054616a709190618704565b616a7a9190618704565b9050919050565b60001515600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060070160009054906101000a900460ff16151514156171da5760005b6000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060180549050811015616e5a576011546000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206006018481548110616b8557616b846186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060080154616bf89190618704565b6000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206006018481548110616c4e57616c4d6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206008018190555060016000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206006018481548110616d1257616d116186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a0154616d859190618704565b6000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206006018481548110616ddb57616dda6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a01819055508080616e529061868c565b915050616ae0565b5060005b6000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600701805490508110156171d8576011546000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206007018481548110616f0357616f026186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060080154616f769190618607565b6000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206007018481548110616fcc57616fcb6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206008018190555060016000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060070184815481106170905761708f6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a01546171039190618607565b6000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206007018481548110617159576171586186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a018190555080806171d09061868c565b915050616e5e565b505b50565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160066000838152602001908152602001600020600401546172269190618607565b600660008381526020019081526020016000206004018190555060066000828152602001908152602001600020600601339080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060016002600083815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050565b508054600082559060005260206000209081019061732e91906176dc565b50565b50805461733d90618767565b6000825580601f1061734f575061736e565b601f01602090049060005260206000209081019061736d91906176dc565b5b50565b82805461737d90618767565b90600052602060002090601f01602090048101928261739f57600085556173ed565b82601f106173b057805485556173ed565b828001600101855582156173ed57600052602060002091601f016020900482015b828111156173ec5782548255916001019190600101906173d1565b5b5090506173fa91906176dc565b5090565b82805482825590600052602060002090810192821561743f5760005260206000209182015b8281111561743e578254825591600101919060010190617423565b5b50905061744c91906176dc565b5090565b604051806101c00160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001606081526020016060815260200160008152602001600081526020016000151581526020016060815260200160608152602001600081526020016060815260200160008152602001600081526020016000151581526020016000151581525090565b8280546174e790618767565b90600052602060002090601f0160209004810192826175095760008555617550565b82601f1061752257805160ff1916838001178555617550565b82800160010185558215617550579182015b8281111561754f578251825591602001919060010190617534565b5b50905061755d91906176dc565b5090565b8280548282559060005260206000209081019282156175da579160200282015b828111156175d95782518260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555091602001919060010190617581565b5b5090506175e791906176dc565b5090565b604051806101600160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600081526020016000815260200160608152602001606081526020016000815260200160008152602001600015158152602001606081526020016000151581526020016000151581525090565b60405180610180016040528060008152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160608152602001606081526020016000815260200160008152602001606081526020016060815260200160001515815260200160008152602001600081526020016000151581525090565b5b808211156176f55760008160009055506001016176dd565b5090565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006177388261770d565b9050919050565b6177488161772d565b811461775357600080fd5b50565b6000813590506177658161773f565b92915050565b6000819050919050565b61777e8161776b565b811461778957600080fd5b50565b60008135905061779b81617775565b92915050565b6000806000606084860312156177ba576177b9617703565b5b60006177c886828701617756565b93505060206177d986828701617756565b92505060406177ea8682870161778c565b9150509250925092565b60008115159050919050565b617809816177f4565b82525050565b60006020820190506178246000830184617800565b92915050565b6000602082840312156178405761783f617703565b5b600061784e8482850161778c565b91505092915050565b60006020828403121561786d5761786c617703565b5b600061787b84828501617756565b91505092915050565b61788d816177f4565b811461789857600080fd5b50565b6000813590506178aa81617884565b92915050565b600080604083850312156178c7576178c6617703565b5b60006178d585828601617756565b92505060206178e68582860161789b565b9150509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6179258161772d565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561796557808201518184015260208101905061794a565b83811115617974576000848401525b50505050565b6000601f19601f8301169050919050565b60006179968261792b565b6179a08185617936565b93506179b0818560208601617947565b6179b98161797a565b840191505092915050565b6179cd8161776b565b82525050565b6179dc816177f4565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000617a1a838361791c565b60208301905092915050565b6000602082019050919050565b6000617a3e826179e2565b617a4881856179ed565b9350617a53836179fe565b8060005b83811015617a84578151617a6b8882617a0e565b9750617a7683617a26565b925050600181019050617a57565b5085935050505092915050565b60006101c083016000830151617aaa600086018261791c565b5060208301518482036020860152617ac2828261798b565b91505060408301518482036040860152617adc828261798b565b9150506060830151617af160608601826179c4565b506080830151617b0460808601826179c4565b5060a0830151617b1760a08601826179d3565b5060c083015184820360c0860152617b2f8282617a33565b91505060e083015184820360e0860152617b498282617a33565b915050610100830151617b606101008601826179c4565b50610120830151848203610120860152617b7a828261798b565b915050610140830151617b916101408601826179c4565b50610160830151617ba66101608601826179c4565b50610180830151617bbb6101808601826179d3565b506101a0830151617bd06101a08601826179d3565b508091505092915050565b6000617be78383617a91565b905092915050565b6000602082019050919050565b6000617c07826178f0565b617c1181856178fb565b935083602082028501617c238561790c565b8060005b85811015617c5f5784840389528151617c408582617bdb565b9450617c4b83617bef565b925060208a01995050600181019050617c27565b50829750879550505050505092915050565b60006020820190508181036000830152617c8b8184617bfc565b905092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600061016083016000830151617cd8600086018261791c565b506020830151617ceb60208601826179c4565b506040830151617cfe60408601826179c4565b5060608301518482036060860152617d168282617a33565b91505060808301518482036080860152617d308282617a33565b91505060a0830151617d4560a08601826179c4565b5060c0830151617d5860c08601826179c4565b5060e0830151617d6b60e08601826179d3565b50610100830151848203610100860152617d85828261798b565b915050610120830151617d9c6101208601826179d3565b50610140830151617db16101408601826179d3565b508091505092915050565b6000617dc88383617cbf565b905092915050565b6000602082019050919050565b6000617de882617c93565b617df28185617c9e565b935083602082028501617e0485617caf565b8060005b85811015617e405784840389528151617e218582617dbc565b9450617e2c83617dd0565b925060208a01995050600181019050617e08565b50829750879550505050505092915050565b60006020820190508181036000830152617e6c8184617ddd565b905092915050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b617eb68261797a565b810181811067ffffffffffffffff82111715617ed557617ed4617e7e565b5b80604052505050565b6000617ee86176f9565b9050617ef48282617ead565b919050565b600067ffffffffffffffff821115617f1457617f13617e7e565b5b617f1d8261797a565b9050602081019050919050565b82818337600083830152505050565b6000617f4c617f4784617ef9565b617ede565b905082815260208101848484011115617f6857617f67617e79565b5b617f73848285617f2a565b509392505050565b600082601f830112617f9057617f8f617e74565b5b8135617fa0848260208601617f39565b91505092915050565b600080600080600060a08688031215617fc557617fc4617703565b5b6000617fd388828901617756565b955050602086013567ffffffffffffffff811115617ff457617ff3617708565b5b61800088828901617f7b565b945050604086013567ffffffffffffffff81111561802157618020617708565b5b61802d88828901617f7b565b935050606086013567ffffffffffffffff81111561804e5761804d617708565b5b61805a88828901617f7b565b925050608061806b8882890161778c565b9150509295509295909350565b6000806040838503121561808f5761808e617703565b5b600061809d85828601617756565b92505060206180ae8582860161778c565b9150509250929050565b6000806000606084860312156180d1576180d0617703565b5b60006180df86828701617756565b935050602084013567ffffffffffffffff811115618100576180ff617708565b5b61810c86828701617f7b565b925050604061811d8682870161778c565b9150509250925092565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600061815f83836179c4565b60208301905092915050565b6000602082019050919050565b600061818382618127565b61818d8185618132565b935061819883618143565b8060005b838110156181c95781516181b08882618153565b97506181bb8361816b565b92505060018101905061819c565b5085935050505092915050565b600060208201905081810360008301526181f08184618178565b905092915050565b6182018161776b565b82525050565b600060208201905061821c60008301846181f8565b92915050565b60006040820190506182376000830185617800565b6182446020830184617800565b9392505050565b600082825260208201905092915050565b6000618267826179e2565b618271818561824b565b935061827c836179fe565b8060005b838110156182ad5781516182948882617a0e565b975061829f83617a26565b925050600181019050618280565b5085935050505092915050565b600060208201905081810360008301526182d4818461825c565b905092915050565b600080600080608085870312156182f6576182f5617703565b5b600061830487828801617756565b945050602085013567ffffffffffffffff81111561832557618324617708565b5b61833187828801617f7b565b935050604085013567ffffffffffffffff81111561835257618351617708565b5b61835e87828801617f7b565b925050606061836f8782880161778c565b91505092959194509250565b6183848161772d565b82525050565b600060208201905061839f600083018461837b565b92915050565b600082825260208201905092915050565b7f4f7267616e697a6174696f6e206164647265737320646f6573206e6f7420657860008201527f6973742100000000000000000000000000000000000000000000000000000000602082015250565b60006184126024836183a5565b915061841d826183b6565b604082019050919050565b6000602082019050818103600083015261844181618405565b9050919050565b7f4f7267616e697a6174696f6e20616c7265616479207665726966696564210000600082015250565b600061847e601e836183a5565b915061848982618448565b602082019050919050565b600060208201905081810360008301526184ad81618471565b9050919050565b7f566f746572206f7267616e697a6174696f6e206973206e6f742076657269666960008201527f65642c206e6f74207065726d697474656420746f20766f746521000000000000602082015250565b6000618510603a836183a5565b915061851b826184b4565b604082019050919050565b6000602082019050818103600083015261853f81618503565b9050919050565b7f566f746572206f7267616e697a6174696f6e2063616e6e6f7420766f7465206d60008201527f6f7265207468616e206f6e636521000000000000000000000000000000000000602082015250565b60006185a2602e836183a5565b91506185ad82618546565b604082019050919050565b600060208201905081810360008301526185d181618595565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006186128261776b565b915061861d8361776b565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115618652576186516185d8565b5b828201905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b60006186978261776b565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156186ca576186c96185d8565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600061870f8261776b565b915061871a8361776b565b92508282101561872d5761872c6185d8565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061877f57607f821691505b6020821081141561879357618792618738565b5b50919050565b7f4f7267616e697a6174696f6e20616c7265616479207265676973746572656421600082015250565b60006187cf6020836183a5565b91506187da82618799565b602082019050919050565b600060208201905081810360008301526187fe816187c2565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061883f8261776b565b915061884a8361776b565b92508261885a57618859618805565b5b828204905092915050565b60006188708261776b565b915061887b8361776b565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156188b4576188b36185d8565b5b82820290509291505056fea2646970667358221220d23c73a98d67933766a8fb5dd76104119b3a0c5c135d3cda1a20de941746d08b64736f6c63430008090033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH3 0x11 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP CALLER PUSH1 0xF PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH8 0x6F05B59D3B20000 PUSH1 0x11 DUP2 SWAP1 SSTORE POP PUSH1 0x0 PUSH1 0x12 DUP2 SWAP1 SSTORE POP PUSH2 0x88F5 DUP1 PUSH3 0x7A PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x28A JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x7D7E898A GT PUSH2 0x15C JUMPI DUP1 PUSH4 0xB7627E41 GT PUSH2 0xCE JUMPI DUP1 PUSH4 0xDE2D0AD0 GT PUSH2 0x87 JUMPI DUP1 PUSH4 0xDE2D0AD0 EQ PUSH2 0x724 JUMPI DUP1 PUSH4 0xE3323ABA EQ PUSH2 0x72E JUMPI DUP1 PUSH4 0xE75176B5 EQ PUSH2 0x74C JUMPI DUP1 PUSH4 0xEF2D5847 EQ PUSH2 0x77C JUMPI DUP1 PUSH4 0xF851A440 EQ PUSH2 0x798 JUMPI DUP1 PUSH4 0xFA157F69 EQ PUSH2 0x7B6 JUMPI PUSH2 0x28A JUMP JUMPDEST DUP1 PUSH4 0xB7627E41 EQ PUSH2 0x662 JUMPI DUP1 PUSH4 0xBB6F5BB4 EQ PUSH2 0x692 JUMPI DUP1 PUSH4 0xBC489AA9 EQ PUSH2 0x6B0 JUMPI DUP1 PUSH4 0xBFAAE62F EQ PUSH2 0x6BA JUMPI DUP1 PUSH4 0xC9DFCA10 EQ PUSH2 0x6D8 JUMPI DUP1 PUSH4 0xCDC1A476 EQ PUSH2 0x708 JUMPI PUSH2 0x28A JUMP JUMPDEST DUP1 PUSH4 0x914F4CF2 GT PUSH2 0x120 JUMPI DUP1 PUSH4 0x914F4CF2 EQ PUSH2 0x5B6 JUMPI DUP1 PUSH4 0x972AC5BB EQ PUSH2 0x5C0 JUMPI DUP1 PUSH4 0x99D43C7C EQ PUSH2 0x5DE JUMPI DUP1 PUSH4 0xA52DA85D EQ PUSH2 0x60E JUMPI DUP1 PUSH4 0xAC64FCDE EQ PUSH2 0x62A JUMPI DUP1 PUSH4 0xB5E801D5 EQ PUSH2 0x646 JUMPI PUSH2 0x28A JUMP JUMPDEST DUP1 PUSH4 0x7D7E898A EQ PUSH2 0x537 JUMPI DUP1 PUSH4 0x80007E83 EQ PUSH2 0x541 JUMPI DUP1 PUSH4 0x86BAE568 EQ PUSH2 0x55F JUMPI DUP1 PUSH4 0x8E349519 EQ PUSH2 0x590 JUMPI DUP1 PUSH4 0x8FC0ED2F EQ PUSH2 0x5AC JUMPI PUSH2 0x28A JUMP JUMPDEST DUP1 PUSH4 0x4438D4B0 GT PUSH2 0x200 JUMPI DUP1 PUSH4 0x5CF9303F GT PUSH2 0x1B9 JUMPI DUP1 PUSH4 0x5CF9303F EQ PUSH2 0x479 JUMPI DUP1 PUSH4 0x5D0161F1 EQ PUSH2 0x4A9 JUMPI DUP1 PUSH4 0x5E8E5EFD EQ PUSH2 0x4C7 JUMPI DUP1 PUSH4 0x62AE7AC7 EQ PUSH2 0x4E3 JUMPI DUP1 PUSH4 0x6DB58829 EQ PUSH2 0x4FF JUMPI DUP1 PUSH4 0x729C7059 EQ PUSH2 0x51B JUMPI PUSH2 0x28A JUMP JUMPDEST DUP1 PUSH4 0x4438D4B0 EQ PUSH2 0x3B9 JUMPI DUP1 PUSH4 0x4648DF2A EQ PUSH2 0x3D5 JUMPI DUP1 PUSH4 0x482BD55B EQ PUSH2 0x405 JUMPI DUP1 PUSH4 0x4945A7AD EQ PUSH2 0x421 JUMPI DUP1 PUSH4 0x4BEA3DB7 EQ PUSH2 0x43D JUMPI DUP1 PUSH4 0x4CF5D552 EQ PUSH2 0x45B JUMPI PUSH2 0x28A JUMP JUMPDEST DUP1 PUSH4 0x22FB1DFD GT PUSH2 0x252 JUMPI DUP1 PUSH4 0x22FB1DFD EQ PUSH2 0x31D JUMPI DUP1 PUSH4 0x2D80468D EQ PUSH2 0x327 JUMPI DUP1 PUSH4 0x3822B758 EQ PUSH2 0x345 JUMPI DUP1 PUSH4 0x3A169303 EQ PUSH2 0x34F JUMPI DUP1 PUSH4 0x3E85747E EQ PUSH2 0x36D JUMPI DUP1 PUSH4 0x440370FE EQ PUSH2 0x39D JUMPI PUSH2 0x28A JUMP JUMPDEST DUP1 PUSH4 0x2D32F90 EQ PUSH2 0x28F JUMPI DUP1 PUSH4 0x134714CA EQ PUSH2 0x2BF JUMPI DUP1 PUSH4 0x149D4146 EQ PUSH2 0x2C9 JUMPI DUP1 PUSH4 0x14CB11E8 EQ PUSH2 0x2E5 JUMPI DUP1 PUSH4 0x1E477180 EQ PUSH2 0x301 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2A9 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2A4 SWAP2 SWAP1 PUSH2 0x77A1 JUMP JUMPDEST PUSH2 0x7D2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2B6 SWAP2 SWAP1 PUSH2 0x780F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2C7 PUSH2 0xC62 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x2E3 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2DE SWAP2 SWAP1 PUSH2 0x782A JUMP JUMPDEST PUSH2 0xD6C JUMP JUMPDEST STOP JUMPDEST PUSH2 0x2FF PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2FA SWAP2 SWAP1 PUSH2 0x7857 JUMP JUMPDEST PUSH2 0xE78 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x31B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x316 SWAP2 SWAP1 PUSH2 0x78B0 JUMP JUMPDEST PUSH2 0x1035 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x325 PUSH2 0x1C5D JUMP JUMPDEST STOP JUMPDEST PUSH2 0x32F PUSH2 0x1CD0 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x33C SWAP2 SWAP1 PUSH2 0x7C71 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x34D PUSH2 0x23F0 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x357 PUSH2 0x2444 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x364 SWAP2 SWAP1 PUSH2 0x7E52 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x387 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x382 SWAP2 SWAP1 PUSH2 0x7857 JUMP JUMPDEST PUSH2 0x2953 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x394 SWAP2 SWAP1 PUSH2 0x780F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x3B7 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3B2 SWAP2 SWAP1 PUSH2 0x7FA9 JUMP JUMPDEST PUSH2 0x29DC JUMP JUMPDEST STOP JUMPDEST PUSH2 0x3D3 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3CE SWAP2 SWAP1 PUSH2 0x7857 JUMP JUMPDEST PUSH2 0x2CF2 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x3EF PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3EA SWAP2 SWAP1 PUSH2 0x8078 JUMP JUMPDEST PUSH2 0x32DC JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3FC SWAP2 SWAP1 PUSH2 0x780F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x41F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x41A SWAP2 SWAP1 PUSH2 0x80B8 JUMP JUMPDEST PUSH2 0x333B JUMP JUMPDEST STOP JUMPDEST PUSH2 0x43B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x436 SWAP2 SWAP1 PUSH2 0x782A JUMP JUMPDEST PUSH2 0x358E JUMP JUMPDEST STOP JUMPDEST PUSH2 0x445 PUSH2 0x3B88 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x452 SWAP2 SWAP1 PUSH2 0x81D6 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x463 PUSH2 0x3C49 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x470 SWAP2 SWAP1 PUSH2 0x8207 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x493 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x48E SWAP2 SWAP1 PUSH2 0x7857 JUMP JUMPDEST PUSH2 0x3C4F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4A0 SWAP2 SWAP1 PUSH2 0x8207 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x4B1 PUSH2 0x3C9A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4BE SWAP2 SWAP1 PUSH2 0x7C71 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x4E1 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4DC SWAP2 SWAP1 PUSH2 0x7857 JUMP JUMPDEST PUSH2 0x4448 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x4FD PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4F8 SWAP2 SWAP1 PUSH2 0x7857 JUMP JUMPDEST PUSH2 0x4572 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x519 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x514 SWAP2 SWAP1 PUSH2 0x782A JUMP JUMPDEST PUSH2 0x45E7 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x535 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x530 SWAP2 SWAP1 PUSH2 0x782A JUMP JUMPDEST PUSH2 0x4D4C JUMP JUMPDEST STOP JUMPDEST PUSH2 0x53F PUSH2 0x4E54 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x549 PUSH2 0x4EC7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x556 SWAP2 SWAP1 PUSH2 0x780F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x579 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x574 SWAP2 SWAP1 PUSH2 0x78B0 JUMP JUMPDEST PUSH2 0x4F1D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x587 SWAP3 SWAP2 SWAP1 PUSH2 0x8222 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x5AA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5A5 SWAP2 SWAP1 PUSH2 0x7857 JUMP JUMPDEST PUSH2 0x4F9D JUMP JUMPDEST STOP JUMPDEST PUSH2 0x5B4 PUSH2 0x5281 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x5BE PUSH2 0x53B3 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x5C8 PUSH2 0x5423 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x5D5 SWAP2 SWAP1 PUSH2 0x82BA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x5F8 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5F3 SWAP2 SWAP1 PUSH2 0x77A1 JUMP JUMPDEST PUSH2 0x54B1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x605 SWAP2 SWAP1 PUSH2 0x780F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x628 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x623 SWAP2 SWAP1 PUSH2 0x7857 JUMP JUMPDEST PUSH2 0x5940 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x644 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x63F SWAP2 SWAP1 PUSH2 0x82DC JUMP JUMPDEST PUSH2 0x5D10 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x660 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x65B SWAP2 SWAP1 PUSH2 0x7857 JUMP JUMPDEST PUSH2 0x5F0A JUMP JUMPDEST STOP JUMPDEST PUSH2 0x67C PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x677 SWAP2 SWAP1 PUSH2 0x7857 JUMP JUMPDEST PUSH2 0x60C7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x689 SWAP2 SWAP1 PUSH2 0x8207 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x69A PUSH2 0x6112 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x6A7 SWAP2 SWAP1 PUSH2 0x82BA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x6B8 PUSH2 0x639C JUMP JUMPDEST STOP JUMPDEST PUSH2 0x6C2 PUSH2 0x64D2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x6CF SWAP2 SWAP1 PUSH2 0x82BA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x6F2 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x6ED SWAP2 SWAP1 PUSH2 0x7857 JUMP JUMPDEST PUSH2 0x6749 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x6FF SWAP2 SWAP1 PUSH2 0x780F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x722 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x71D SWAP2 SWAP1 PUSH2 0x7857 JUMP JUMPDEST PUSH2 0x67D1 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x72C PUSH2 0x6986 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x736 PUSH2 0x69F9 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x743 SWAP2 SWAP1 PUSH2 0x780F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x766 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x761 SWAP2 SWAP1 PUSH2 0x7857 JUMP JUMPDEST PUSH2 0x6A4F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x773 SWAP2 SWAP1 PUSH2 0x8207 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x796 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x791 SWAP2 SWAP1 PUSH2 0x7857 JUMP JUMPDEST PUSH2 0x6A81 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x7A0 PUSH2 0x71DD JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x7AD SWAP2 SWAP1 PUSH2 0x838A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x7D0 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x7CB SWAP2 SWAP1 PUSH2 0x782A JUMP JUMPDEST PUSH2 0x7203 JUMP JUMPDEST STOP JUMPDEST PUSH1 0x0 DUP4 DUP4 PUSH1 0x0 DUP1 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xB ADD SLOAD EQ ISZERO PUSH2 0x85B JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x852 SWAP1 PUSH2 0x8428 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0x8EA JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x8E1 SWAP1 PUSH2 0x8494 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xB ADD SLOAD EQ ISZERO DUP1 ISZERO PUSH2 0x987 JUMPI POP PUSH1 0x0 DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND JUMPDEST PUSH2 0x9C6 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x9BD SWAP1 PUSH2 0x8526 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD EQ PUSH2 0xA85 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xA7C SWAP1 PUSH2 0x85B8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x0 DUP1 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0xAD7 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0x0 DUP1 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP6 SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x2 PUSH1 0x1 PUSH1 0x0 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP DUP4 PUSH1 0x0 DUP1 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xB ADD SLOAD LT ISZERO PUSH2 0xC54 JUMPI PUSH1 0x1 SWAP3 POP PUSH2 0xC59 JUMP JUMPDEST PUSH1 0x0 SWAP3 POP JUMPDEST POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x14 DUP1 SLOAD SWAP1 POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0xD68 JUMPI PUSH1 0x14 DUP1 SLOAD DUP1 PUSH2 0xC89 JUMPI PUSH2 0xC88 PUSH2 0x865D JUMP JUMPDEST JUMPDEST PUSH1 0x1 SWAP1 SUB DUP2 DUP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0xA MUL ADD PUSH1 0x0 DUP1 DUP3 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE PUSH1 0x1 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0x2 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0x3 DUP3 ADD PUSH1 0x0 PUSH2 0xCE5 SWAP2 SWAP1 PUSH2 0x7310 JUMP JUMPDEST PUSH1 0x4 DUP3 ADD PUSH1 0x0 PUSH2 0xCF5 SWAP2 SWAP1 PUSH2 0x7310 JUMP JUMPDEST PUSH1 0x5 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0x6 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0x7 DUP3 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH1 0xFF MUL NOT AND SWAP1 SSTORE PUSH1 0x8 DUP3 ADD PUSH1 0x0 PUSH2 0xD29 SWAP2 SWAP1 PUSH2 0x7331 JUMP JUMPDEST PUSH1 0x9 DUP3 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH1 0xFF MUL NOT AND SWAP1 SSTORE PUSH1 0x9 DUP3 ADD PUSH1 0x1 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH1 0xFF MUL NOT AND SWAP1 SSTORE POP POP SWAP1 SSTORE DUP1 DUP1 PUSH2 0xD60 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0xC6F JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x6 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD SLOAD PUSH2 0xD8F SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST PUSH1 0x6 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD DUP2 SWAP1 SSTORE POP PUSH1 0x6 PUSH1 0x0 DUP3 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD CALLER SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x2 DUP1 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x7 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD SLOAD PUSH2 0xEC7 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST PUSH1 0x7 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD DUP2 SWAP1 SSTORE POP PUSH1 0x7 PUSH1 0x0 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD CALLER SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x2 PUSH1 0x3 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP POP JUMP JUMPDEST DUP1 ISZERO PUSH2 0x164C JUMPI PUSH1 0x0 DUP1 JUMPDEST PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD SLOAD DUP2 LT ISZERO PUSH2 0x13C6 JUMPI PUSH1 0x1 PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x10E0 JUMPI PUSH2 0x10DF PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD SLOAD PUSH2 0x1153 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x11A9 JUMPI PUSH2 0x11A8 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD DUP2 SWAP1 SSTORE POP PUSH1 0x11 SLOAD DUP3 PUSH2 0x1223 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST SWAP2 POP PUSH1 0x11 SLOAD PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x127E JUMPI PUSH2 0x127D PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD SLOAD PUSH2 0x12F1 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x1347 JUMPI PUSH2 0x1346 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD DUP2 SWAP1 SSTORE POP DUP1 DUP1 PUSH2 0x13BE SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x103F JUMP JUMPDEST POP DUP1 PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD SLOAD PUSH2 0x1414 SWAP2 SWAP1 PUSH2 0x8704 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD DUP2 SWAP1 SSTORE POP PUSH1 0x0 JUMPDEST PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD SLOAD DUP2 LT ISZERO PUSH2 0x1645 JUMPI PUSH1 0x1 PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x14FD JUMPI PUSH2 0x14FC PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD SLOAD PUSH2 0x1570 SWAP2 SWAP1 PUSH2 0x8704 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x15C6 JUMPI PUSH2 0x15C5 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD DUP2 SWAP1 SSTORE POP DUP1 DUP1 PUSH2 0x163D SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x145C JUMP JUMPDEST POP POP PUSH2 0x1C59 JUMP JUMPDEST PUSH1 0x0 DUP1 JUMPDEST PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD SLOAD DUP2 LT ISZERO PUSH2 0x19D7 JUMPI PUSH1 0x1 PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x16F1 JUMPI PUSH2 0x16F0 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD SLOAD PUSH2 0x1764 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x17BA JUMPI PUSH2 0x17B9 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD DUP2 SWAP1 SSTORE POP PUSH1 0x11 SLOAD DUP3 PUSH2 0x1834 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST SWAP2 POP PUSH1 0x11 SLOAD PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x188F JUMPI PUSH2 0x188E PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD SLOAD PUSH2 0x1902 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x1958 JUMPI PUSH2 0x1957 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD DUP2 SWAP1 SSTORE POP DUP1 DUP1 PUSH2 0x19CF SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x1650 JUMP JUMPDEST POP DUP1 PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD SLOAD PUSH2 0x1A25 SWAP2 SWAP1 PUSH2 0x8704 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD DUP2 SWAP1 SSTORE POP PUSH1 0x0 JUMPDEST PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD SLOAD DUP2 LT ISZERO PUSH2 0x1C56 JUMPI PUSH1 0x1 PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x1B0E JUMPI PUSH2 0x1B0D PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD SLOAD PUSH2 0x1B81 SWAP2 SWAP1 PUSH2 0x8704 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x1BD7 JUMPI PUSH2 0x1BD6 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD DUP2 SWAP1 SSTORE POP DUP1 DUP1 PUSH2 0x1C4E SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x1A6D JUMP JUMPDEST POP POP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xB DUP1 SLOAD SWAP1 POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x1CCC JUMPI PUSH1 0xB DUP1 SLOAD DUP1 PUSH2 0x1C84 JUMPI PUSH2 0x1C83 PUSH2 0x865D JUMP JUMPDEST JUMPDEST PUSH1 0x1 SWAP1 SUB DUP2 DUP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE SWAP1 SSTORE DUP1 DUP1 PUSH2 0x1CC4 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x1C6A JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 JUMPDEST PUSH1 0x8 DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x1FE6 JUMPI PUSH1 0x0 ISZERO ISZERO PUSH1 0x0 DUP1 PUSH1 0x8 DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x1CFD JUMPI PUSH2 0x1CFC PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xC ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO EQ ISZERO PUSH2 0x1FD3 JUMPI PUSH1 0x13 PUSH1 0x0 DUP1 PUSH1 0x8 DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x1D94 JUMPI PUSH2 0x1D93 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0xD MUL ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 POP PUSH1 0x0 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x1 DUP3 ADD DUP2 PUSH1 0x1 ADD SWAP1 DUP1 SLOAD PUSH2 0x1E9D SWAP1 PUSH2 0x8767 JUMP JUMPDEST PUSH2 0x1EA8 SWAP3 SWAP2 SWAP1 PUSH2 0x7371 JUMP JUMPDEST POP PUSH1 0x2 DUP3 ADD DUP2 PUSH1 0x2 ADD SWAP1 DUP1 SLOAD PUSH2 0x1EBD SWAP1 PUSH2 0x8767 JUMP JUMPDEST PUSH2 0x1EC8 SWAP3 SWAP2 SWAP1 PUSH2 0x7371 JUMP JUMPDEST POP PUSH1 0x3 DUP3 ADD SLOAD DUP2 PUSH1 0x3 ADD SSTORE PUSH1 0x4 DUP3 ADD SLOAD DUP2 PUSH1 0x4 ADD SSTORE PUSH1 0x5 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 PUSH1 0x5 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0x6 DUP3 ADD DUP2 PUSH1 0x6 ADD SWAP1 DUP1 SLOAD PUSH2 0x1F20 SWAP3 SWAP2 SWAP1 PUSH2 0x73FE JUMP JUMPDEST POP PUSH1 0x7 DUP3 ADD DUP2 PUSH1 0x7 ADD SWAP1 DUP1 SLOAD PUSH2 0x1F37 SWAP3 SWAP2 SWAP1 PUSH2 0x73FE JUMP JUMPDEST POP PUSH1 0x8 DUP3 ADD SLOAD DUP2 PUSH1 0x8 ADD SSTORE PUSH1 0x9 DUP3 ADD DUP2 PUSH1 0x9 ADD SWAP1 DUP1 SLOAD PUSH2 0x1F56 SWAP1 PUSH2 0x8767 JUMP JUMPDEST PUSH2 0x1F61 SWAP3 SWAP2 SWAP1 PUSH2 0x7371 JUMP JUMPDEST POP PUSH1 0xA DUP3 ADD SLOAD DUP2 PUSH1 0xA ADD SSTORE PUSH1 0xB DUP3 ADD SLOAD DUP2 PUSH1 0xB ADD SSTORE PUSH1 0xC DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 PUSH1 0xC ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0xC DUP3 ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 PUSH1 0xC ADD PUSH1 0x1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP POP POP JUMPDEST DUP1 DUP1 PUSH2 0x1FDE SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x1CD5 JUMP JUMPDEST POP PUSH1 0x13 DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 SWAP1 JUMPDEST DUP3 DUP3 LT ISZERO PUSH2 0x23E7 JUMPI DUP4 DUP3 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0xD MUL ADD PUSH1 0x40 MLOAD DUP1 PUSH2 0x1C0 ADD PUSH1 0x40 MSTORE SWAP1 DUP2 PUSH1 0x0 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1 DUP3 ADD DUP1 SLOAD PUSH2 0x2093 SWAP1 PUSH2 0x8767 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x20BF SWAP1 PUSH2 0x8767 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x210C JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x20E1 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x210C JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x20EF JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x2 DUP3 ADD DUP1 SLOAD PUSH2 0x2125 SWAP1 PUSH2 0x8767 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x2151 SWAP1 PUSH2 0x8767 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x219E JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x2173 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x219E JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x2181 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x3 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x4 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x5 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x6 DUP3 ADD DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD DUP1 ISZERO PUSH2 0x225B JUMPI PUSH1 0x20 MUL DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 ADD SWAP1 DUP1 DUP4 GT PUSH2 0x2211 JUMPI JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x7 DUP3 ADD DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD DUP1 ISZERO PUSH2 0x22E9 JUMPI PUSH1 0x20 MUL DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 ADD SWAP1 DUP1 DUP4 GT PUSH2 0x229F JUMPI JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x8 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x9 DUP3 ADD DUP1 SLOAD PUSH2 0x230C SWAP1 PUSH2 0x8767 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x2338 SWAP1 PUSH2 0x8767 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x2385 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x235A JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x2385 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x2368 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xA DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xB DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xC DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xC DUP3 ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO ISZERO ISZERO DUP2 MSTORE POP POP DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x2009 JUMP JUMPDEST POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC DUP1 SLOAD SWAP1 POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x2440 JUMPI PUSH1 0xC DUP1 SLOAD DUP1 PUSH2 0x2417 JUMPI PUSH2 0x2416 PUSH2 0x865D JUMP JUMPDEST JUMPDEST PUSH1 0x1 SWAP1 SUB DUP2 DUP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SSTORE SWAP1 SSTORE DUP1 DUP1 PUSH2 0x2438 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x23FD JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 JUMPDEST PUSH1 0xD DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x2677 JUMPI PUSH1 0x14 PUSH1 0x7 PUSH1 0x0 PUSH1 0xD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x2470 JUMPI PUSH2 0x246F PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0xA MUL ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 POP PUSH1 0x0 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x1 DUP3 ADD SLOAD DUP2 PUSH1 0x1 ADD SSTORE PUSH1 0x2 DUP3 ADD SLOAD DUP2 PUSH1 0x2 ADD SSTORE PUSH1 0x3 DUP3 ADD DUP2 PUSH1 0x3 ADD SWAP1 DUP1 SLOAD PUSH2 0x258F SWAP3 SWAP2 SWAP1 PUSH2 0x73FE JUMP JUMPDEST POP PUSH1 0x4 DUP3 ADD DUP2 PUSH1 0x4 ADD SWAP1 DUP1 SLOAD PUSH2 0x25A6 SWAP3 SWAP2 SWAP1 PUSH2 0x73FE JUMP JUMPDEST POP PUSH1 0x5 DUP3 ADD SLOAD DUP2 PUSH1 0x5 ADD SSTORE PUSH1 0x6 DUP3 ADD SLOAD DUP2 PUSH1 0x6 ADD SSTORE PUSH1 0x7 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 PUSH1 0x7 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0x8 DUP3 ADD DUP2 PUSH1 0x8 ADD SWAP1 DUP1 SLOAD PUSH2 0x25FC SWAP1 PUSH2 0x8767 JUMP JUMPDEST PUSH2 0x2607 SWAP3 SWAP2 SWAP1 PUSH2 0x7371 JUMP JUMPDEST POP PUSH1 0x9 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 PUSH1 0x9 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0x9 DUP3 ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 PUSH1 0x9 ADD PUSH1 0x1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP POP POP DUP1 DUP1 PUSH2 0x266F SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x2449 JUMP JUMPDEST POP PUSH1 0x14 DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 SWAP1 JUMPDEST DUP3 DUP3 LT ISZERO PUSH2 0x294A JUMPI DUP4 DUP3 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0xA MUL ADD PUSH1 0x40 MLOAD DUP1 PUSH2 0x160 ADD PUSH1 0x40 MSTORE SWAP1 DUP2 PUSH1 0x0 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x2 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x3 DUP3 ADD DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD DUP1 ISZERO PUSH2 0x27AD JUMPI PUSH1 0x20 MUL DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 ADD SWAP1 DUP1 DUP4 GT PUSH2 0x2763 JUMPI JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x4 DUP3 ADD DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD DUP1 ISZERO PUSH2 0x283B JUMPI PUSH1 0x20 MUL DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 ADD SWAP1 DUP1 DUP4 GT PUSH2 0x27F1 JUMPI JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x5 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x6 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x7 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x8 DUP3 ADD DUP1 SLOAD PUSH2 0x2883 SWAP1 PUSH2 0x8767 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x28AF SWAP1 PUSH2 0x8767 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x28FC JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x28D1 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x28FC JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x28DF JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x9 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x9 DUP3 ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO ISZERO ISZERO DUP2 MSTORE POP POP DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x269A JUMP JUMPDEST POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 PUSH1 0x1 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD EQ SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xB ADD SLOAD EQ PUSH2 0x2A60 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2A57 SWAP1 PUSH2 0x87E5 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x2A68 PUSH2 0x7450 JUMP JUMPDEST DUP6 DUP2 PUSH1 0x0 ADD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP POP DUP5 DUP2 PUSH1 0x20 ADD DUP2 SWAP1 MSTORE POP DUP4 DUP2 PUSH1 0x40 ADD DUP2 SWAP1 MSTORE POP DUP3 DUP2 PUSH2 0x120 ADD DUP2 SWAP1 MSTORE POP PUSH3 0x2A300 DUP3 PUSH2 0x2ACB SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST DUP2 PUSH2 0x160 ADD DUP2 DUP2 MSTORE POP POP DUP1 PUSH1 0x0 DUP1 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 ADD MLOAD DUP2 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x20 DUP3 ADD MLOAD DUP2 PUSH1 0x1 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x2B77 SWAP3 SWAP2 SWAP1 PUSH2 0x74DB JUMP JUMPDEST POP PUSH1 0x40 DUP3 ADD MLOAD DUP2 PUSH1 0x2 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x2B94 SWAP3 SWAP2 SWAP1 PUSH2 0x74DB JUMP JUMPDEST POP PUSH1 0x60 DUP3 ADD MLOAD DUP2 PUSH1 0x3 ADD SSTORE PUSH1 0x80 DUP3 ADD MLOAD DUP2 PUSH1 0x4 ADD SSTORE PUSH1 0xA0 DUP3 ADD MLOAD DUP2 PUSH1 0x5 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0xC0 DUP3 ADD MLOAD DUP2 PUSH1 0x6 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x2BE5 SWAP3 SWAP2 SWAP1 PUSH2 0x7561 JUMP JUMPDEST POP PUSH1 0xE0 DUP3 ADD MLOAD DUP2 PUSH1 0x7 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x2C02 SWAP3 SWAP2 SWAP1 PUSH2 0x7561 JUMP JUMPDEST POP PUSH2 0x100 DUP3 ADD MLOAD DUP2 PUSH1 0x8 ADD SSTORE PUSH2 0x120 DUP3 ADD MLOAD DUP2 PUSH1 0x9 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x2C2B SWAP3 SWAP2 SWAP1 PUSH2 0x74DB JUMP JUMPDEST POP PUSH2 0x140 DUP3 ADD MLOAD DUP2 PUSH1 0xA ADD SSTORE PUSH2 0x160 DUP3 ADD MLOAD DUP2 PUSH1 0xB ADD SSTORE PUSH2 0x180 DUP3 ADD MLOAD DUP2 PUSH1 0xC ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH2 0x1A0 DUP3 ADD MLOAD DUP2 PUSH1 0xC ADD PUSH1 0x1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP SWAP1 POP POP PUSH1 0x8 DUP7 SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 ISZERO ISZERO PUSH1 0x7 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO EQ ISZERO PUSH2 0x32D9 JUMPI PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xC ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0x1 PUSH1 0x10 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x2E15 SWAP2 SWAP1 PUSH2 0x8704 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0x0 PUSH1 0x4 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 POP JUMPDEST PUSH1 0x8 DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x30DC JUMPI PUSH1 0x0 DUP1 PUSH1 0x8 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x2EA0 JUMPI PUSH2 0x2E9F PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP1 ISZERO PUSH2 0x2FA0 JUMPI POP PUSH1 0x0 DUP1 PUSH1 0x8 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x2F34 JUMPI PUSH2 0x2F33 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD SLOAD DUP3 LT JUMPDEST ISZERO PUSH2 0x30C9 JUMPI PUSH1 0x0 DUP1 PUSH1 0x8 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x2FBC JUMPI PUSH2 0x2FBB PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD SLOAD SWAP2 POP PUSH1 0xA PUSH1 0x8 DUP3 DUP2 SLOAD DUP2 LT PUSH2 0x303D JUMPI PUSH2 0x303C PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP JUMPDEST DUP1 DUP1 PUSH2 0x30D4 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x2E7C JUMP JUMPDEST POP PUSH1 0x0 PUSH1 0xA DUP1 SLOAD SWAP1 POP PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD SLOAD PUSH2 0x3131 SWAP2 SWAP1 PUSH2 0x8834 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 JUMPDEST PUSH1 0xA DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x3264 JUMPI DUP2 PUSH1 0x0 DUP1 PUSH1 0xA DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x315B JUMPI PUSH2 0x315A PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD SLOAD PUSH2 0x31CE SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0xA DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x31E5 JUMPI PUSH2 0x31E4 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD DUP2 SWAP1 SSTORE POP DUP1 DUP1 PUSH2 0x325C SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x3136 JUMP JUMPDEST POP PUSH1 0x0 PUSH1 0xA DUP1 SLOAD SWAP1 POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x32D4 JUMPI PUSH1 0xA DUP1 SLOAD DUP1 PUSH2 0x328C JUMPI PUSH2 0x328B PUSH2 0x865D JUMP JUMPDEST JUMPDEST PUSH1 0x1 SWAP1 SUB DUP2 DUP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE SWAP1 SSTORE DUP1 DUP1 PUSH2 0x32CC SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x3272 JUMP JUMPDEST POP POP POP POP JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xB ADD SLOAD LT ISZERO PUSH2 0x3330 JUMPI PUSH1 0x1 SWAP1 POP PUSH2 0x3335 JUMP JUMPDEST PUSH1 0x0 SWAP1 POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x3343 PUSH2 0x75EB JUMP JUMPDEST DUP4 DUP2 PUSH1 0x0 ADD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP POP DUP3 DUP2 PUSH2 0x100 ADD DUP2 SWAP1 MSTORE POP DUP2 DUP2 PUSH1 0xA0 ADD DUP2 DUP2 MSTORE POP POP PUSH3 0x69780 DUP3 PUSH2 0x339E SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST DUP2 PUSH1 0xC0 ADD DUP2 DUP2 MSTORE POP POP PUSH1 0x0 DUP2 PUSH2 0x140 ADD SWAP1 ISZERO ISZERO SWAP1 DUP2 ISZERO ISZERO DUP2 MSTORE POP POP DUP1 PUSH1 0x7 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 ADD MLOAD DUP2 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x20 DUP3 ADD MLOAD DUP2 PUSH1 0x1 ADD SSTORE PUSH1 0x40 DUP3 ADD MLOAD DUP2 PUSH1 0x2 ADD SSTORE PUSH1 0x60 DUP3 ADD MLOAD DUP2 PUSH1 0x3 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x3470 SWAP3 SWAP2 SWAP1 PUSH2 0x7561 JUMP JUMPDEST POP PUSH1 0x80 DUP3 ADD MLOAD DUP2 PUSH1 0x4 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x348D SWAP3 SWAP2 SWAP1 PUSH2 0x7561 JUMP JUMPDEST POP PUSH1 0xA0 DUP3 ADD MLOAD DUP2 PUSH1 0x5 ADD SSTORE PUSH1 0xC0 DUP3 ADD MLOAD DUP2 PUSH1 0x6 ADD SSTORE PUSH1 0xE0 DUP3 ADD MLOAD DUP2 PUSH1 0x7 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH2 0x100 DUP3 ADD MLOAD DUP2 PUSH1 0x8 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x34DF SWAP3 SWAP2 SWAP1 PUSH2 0x74DB JUMP JUMPDEST POP PUSH2 0x120 DUP3 ADD MLOAD DUP2 PUSH1 0x9 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH2 0x140 DUP3 ADD MLOAD DUP2 PUSH1 0x9 ADD PUSH1 0x1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP SWAP1 POP POP PUSH1 0xD DUP5 SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x6 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP PUSH1 0x1 ISZERO ISZERO PUSH1 0x6 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xB ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO EQ ISZERO PUSH2 0x3B84 JUMPI PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xC ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0x1 PUSH1 0x10 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x36C0 SWAP2 SWAP1 PUSH2 0x8704 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0x0 PUSH1 0x4 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 POP JUMPDEST PUSH1 0x8 DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x3987 JUMPI PUSH1 0x0 DUP1 PUSH1 0x8 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x374B JUMPI PUSH2 0x374A PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP1 ISZERO PUSH2 0x384B JUMPI POP PUSH1 0x0 DUP1 PUSH1 0x8 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x37DF JUMPI PUSH2 0x37DE PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD SLOAD DUP3 LT JUMPDEST ISZERO PUSH2 0x3974 JUMPI PUSH1 0x0 DUP1 PUSH1 0x8 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x3867 JUMPI PUSH2 0x3866 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD SLOAD SWAP2 POP PUSH1 0xA PUSH1 0x8 DUP3 DUP2 SLOAD DUP2 LT PUSH2 0x38E8 JUMPI PUSH2 0x38E7 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP JUMPDEST DUP1 DUP1 PUSH2 0x397F SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x3727 JUMP JUMPDEST POP PUSH1 0x0 PUSH1 0xA DUP1 SLOAD SWAP1 POP PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD SLOAD PUSH2 0x39DC SWAP2 SWAP1 PUSH2 0x8834 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 JUMPDEST PUSH1 0xA DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x3B0F JUMPI DUP2 PUSH1 0x0 DUP1 PUSH1 0xA DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x3A06 JUMPI PUSH2 0x3A05 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD SLOAD PUSH2 0x3A79 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0xA DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x3A90 JUMPI PUSH2 0x3A8F PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD DUP2 SWAP1 SSTORE POP DUP1 DUP1 PUSH2 0x3B07 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x39E1 JUMP JUMPDEST POP PUSH1 0x0 PUSH1 0xA DUP1 SLOAD SWAP1 POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x3B7F JUMPI PUSH1 0xA DUP1 SLOAD DUP1 PUSH2 0x3B37 JUMPI PUSH2 0x3B36 PUSH2 0x865D JUMP JUMPDEST JUMPDEST PUSH1 0x1 SWAP1 SUB DUP2 DUP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE SWAP1 SSTORE DUP1 DUP1 PUSH2 0x3B77 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x3B1D JUMP JUMPDEST POP POP POP POP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 JUMPDEST PUSH1 0x12 SLOAD DUP2 LT ISZERO PUSH2 0x3BF2 JUMPI TIMESTAMP PUSH1 0x6 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD SLOAD LT ISZERO PUSH2 0x3BDF JUMPI PUSH1 0xC DUP2 SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 POP SSTORE JUMPDEST DUP1 DUP1 PUSH2 0x3BEA SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x3B8D JUMP JUMPDEST POP PUSH1 0xC DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD DUP1 ISZERO PUSH2 0x3C3F JUMPI PUSH1 0x20 MUL DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 ADD SWAP1 DUP1 DUP4 GT PUSH2 0x3C2B JUMPI JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x10 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD SLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 JUMPDEST PUSH1 0x8 DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x403E JUMPI PUSH1 0x0 DUP1 PUSH1 0x8 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x3CC3 JUMPI PUSH2 0x3CC2 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP1 ISZERO PUSH2 0x3DCE JUMPI POP PUSH1 0x0 DUP1 PUSH1 0x8 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x3D57 JUMPI PUSH2 0x3D56 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xC ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND JUMPDEST ISZERO PUSH2 0x402B JUMPI PUSH1 0x13 PUSH1 0x0 DUP1 PUSH1 0x8 DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x3DEC JUMPI PUSH2 0x3DEB PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0xD MUL ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 POP PUSH1 0x0 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x1 DUP3 ADD DUP2 PUSH1 0x1 ADD SWAP1 DUP1 SLOAD PUSH2 0x3EF5 SWAP1 PUSH2 0x8767 JUMP JUMPDEST PUSH2 0x3F00 SWAP3 SWAP2 SWAP1 PUSH2 0x7371 JUMP JUMPDEST POP PUSH1 0x2 DUP3 ADD DUP2 PUSH1 0x2 ADD SWAP1 DUP1 SLOAD PUSH2 0x3F15 SWAP1 PUSH2 0x8767 JUMP JUMPDEST PUSH2 0x3F20 SWAP3 SWAP2 SWAP1 PUSH2 0x7371 JUMP JUMPDEST POP PUSH1 0x3 DUP3 ADD SLOAD DUP2 PUSH1 0x3 ADD SSTORE PUSH1 0x4 DUP3 ADD SLOAD DUP2 PUSH1 0x4 ADD SSTORE PUSH1 0x5 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 PUSH1 0x5 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0x6 DUP3 ADD DUP2 PUSH1 0x6 ADD SWAP1 DUP1 SLOAD PUSH2 0x3F78 SWAP3 SWAP2 SWAP1 PUSH2 0x73FE JUMP JUMPDEST POP PUSH1 0x7 DUP3 ADD DUP2 PUSH1 0x7 ADD SWAP1 DUP1 SLOAD PUSH2 0x3F8F SWAP3 SWAP2 SWAP1 PUSH2 0x73FE JUMP JUMPDEST POP PUSH1 0x8 DUP3 ADD SLOAD DUP2 PUSH1 0x8 ADD SSTORE PUSH1 0x9 DUP3 ADD DUP2 PUSH1 0x9 ADD SWAP1 DUP1 SLOAD PUSH2 0x3FAE SWAP1 PUSH2 0x8767 JUMP JUMPDEST PUSH2 0x3FB9 SWAP3 SWAP2 SWAP1 PUSH2 0x7371 JUMP JUMPDEST POP PUSH1 0xA DUP3 ADD SLOAD DUP2 PUSH1 0xA ADD SSTORE PUSH1 0xB DUP3 ADD SLOAD DUP2 PUSH1 0xB ADD SSTORE PUSH1 0xC DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 PUSH1 0xC ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0xC DUP3 ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 PUSH1 0xC ADD PUSH1 0x1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP POP POP JUMPDEST DUP1 DUP1 PUSH2 0x4036 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x3C9F JUMP JUMPDEST POP PUSH1 0x13 DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 SWAP1 JUMPDEST DUP3 DUP3 LT ISZERO PUSH2 0x443F JUMPI DUP4 DUP3 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0xD MUL ADD PUSH1 0x40 MLOAD DUP1 PUSH2 0x1C0 ADD PUSH1 0x40 MSTORE SWAP1 DUP2 PUSH1 0x0 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1 DUP3 ADD DUP1 SLOAD PUSH2 0x40EB SWAP1 PUSH2 0x8767 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x4117 SWAP1 PUSH2 0x8767 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x4164 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x4139 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x4164 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x4147 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x2 DUP3 ADD DUP1 SLOAD PUSH2 0x417D SWAP1 PUSH2 0x8767 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x41A9 SWAP1 PUSH2 0x8767 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x41F6 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x41CB JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x41F6 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x41D9 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x3 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x4 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x5 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x6 DUP3 ADD DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD DUP1 ISZERO PUSH2 0x42B3 JUMPI PUSH1 0x20 MUL DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 ADD SWAP1 DUP1 DUP4 GT PUSH2 0x4269 JUMPI JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x7 DUP3 ADD DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD DUP1 ISZERO PUSH2 0x4341 JUMPI PUSH1 0x20 MUL DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 ADD SWAP1 DUP1 DUP4 GT PUSH2 0x42F7 JUMPI JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x8 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x9 DUP3 ADD DUP1 SLOAD PUSH2 0x4364 SWAP1 PUSH2 0x8767 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x4390 SWAP1 PUSH2 0x8767 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x43DD JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x43B2 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x43DD JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x43C0 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xA DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xB DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xC DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xC DUP3 ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO ISZERO ISZERO DUP2 MSTORE POP POP DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x4061 JUMP JUMPDEST POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x33 PUSH1 0x10 SLOAD PUSH2 0x4457 SWAP2 SWAP1 PUSH2 0x8865 JUMP JUMPDEST PUSH1 0x64 PUSH1 0x0 DUP1 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD SLOAD PUSH2 0x44A5 SWAP2 SWAP1 PUSH2 0x8865 JUMP JUMPDEST LT PUSH2 0x4509 JUMPI PUSH1 0x1 PUSH1 0x0 DUP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH2 0x456F JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH2 0x456E DUP2 PUSH1 0x0 PUSH2 0x1035 JUMP JUMPDEST JUMPDEST POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x10 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x4585 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0x1 PUSH1 0x4 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x6 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP PUSH1 0x6 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xB ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0x4D48 JUMPI PUSH1 0x0 JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x49C8 JUMPI PUSH1 0x11 SLOAD PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x46F3 JUMPI PUSH2 0x46F2 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD SLOAD PUSH2 0x4766 SWAP2 SWAP1 PUSH2 0x8704 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x47BC JUMPI PUSH2 0x47BB PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD DUP2 SWAP1 SSTORE POP PUSH1 0x1 PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x4880 JUMPI PUSH2 0x487F PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD SLOAD PUSH2 0x48F3 SWAP2 SWAP1 PUSH2 0x8704 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x4949 JUMPI PUSH2 0x4948 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD DUP2 SWAP1 SSTORE POP DUP1 DUP1 PUSH2 0x49C0 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x464E JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x4D46 JUMPI PUSH1 0x11 SLOAD PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x4A71 JUMPI PUSH2 0x4A70 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD SLOAD PUSH2 0x4AE4 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x4B3A JUMPI PUSH2 0x4B39 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD DUP2 SWAP1 SSTORE POP PUSH1 0x1 PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x4BFE JUMPI PUSH2 0x4BFD PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD SLOAD PUSH2 0x4C71 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x4CC7 JUMPI PUSH2 0x4CC6 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD DUP2 SWAP1 SSTORE POP DUP1 DUP1 PUSH2 0x4D3E SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x49CC JUMP JUMPDEST POP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x6 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD SLOAD PUSH1 0x6 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD SLOAD PUSH2 0x4D86 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST SWAP1 POP PUSH1 0x33 DUP2 PUSH2 0x4D95 SWAP2 SWAP1 PUSH2 0x8865 JUMP JUMPDEST PUSH1 0x64 PUSH1 0x6 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD SLOAD PUSH2 0x4DB8 SWAP2 SWAP1 PUSH2 0x8865 JUMP JUMPDEST LT PUSH2 0x4DF1 JUMPI PUSH1 0x1 PUSH1 0x6 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xB ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH2 0x4E21 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x6 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xB ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP JUMPDEST PUSH1 0x0 PUSH1 0x6 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xE DUP1 SLOAD SWAP1 POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x4EC3 JUMPI PUSH1 0xE DUP1 SLOAD DUP1 PUSH2 0x4E7B JUMPI PUSH2 0x4E7A PUSH2 0x865D JUMP JUMPDEST JUMPDEST PUSH1 0x1 SWAP1 SUB DUP2 DUP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE SWAP1 SSTORE DUP1 DUP1 PUSH2 0x4EBB SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x4E61 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xC ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x33 PUSH1 0x10 SLOAD PUSH2 0x4F2F SWAP2 SWAP1 PUSH2 0x8865 JUMP JUMPDEST PUSH1 0x64 PUSH1 0x0 DUP1 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD SLOAD PUSH2 0x4F7D SWAP2 SWAP1 PUSH2 0x8865 JUMP JUMPDEST LT PUSH2 0x4F8E JUMPI PUSH1 0x1 DUP4 SWAP2 POP SWAP2 POP PUSH2 0x4F96 JUMP JUMPDEST PUSH1 0x0 DUP4 SWAP2 POP SWAP2 POP JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x9 DUP1 SLOAD SWAP1 POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x500C JUMPI PUSH1 0x9 DUP1 SLOAD DUP1 PUSH2 0x4FC4 JUMPI PUSH2 0x4FC3 PUSH2 0x865D JUMP JUMPDEST JUMPDEST PUSH1 0x1 SWAP1 SUB DUP2 DUP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE SWAP1 SSTORE DUP1 DUP1 PUSH2 0x5004 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x4FAA JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST PUSH1 0x0 DUP1 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x5144 JUMPI PUSH1 0x0 PUSH1 0x5 PUSH1 0x0 DUP1 PUSH1 0x0 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x50B5 JUMPI PUSH2 0x50B4 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP DUP1 DUP1 PUSH2 0x513C SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x5010 JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST PUSH1 0x0 DUP1 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x527C JUMPI PUSH1 0x0 PUSH1 0x5 PUSH1 0x0 DUP1 PUSH1 0x0 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x51ED JUMPI PUSH2 0x51EC PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP DUP1 DUP1 PUSH2 0x5274 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x5148 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x13 DUP1 SLOAD SWAP1 POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x53AF JUMPI PUSH1 0x13 DUP1 SLOAD DUP1 PUSH2 0x52A8 JUMPI PUSH2 0x52A7 PUSH2 0x865D JUMP JUMPDEST JUMPDEST PUSH1 0x1 SWAP1 SUB DUP2 DUP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0xD MUL ADD PUSH1 0x0 DUP1 DUP3 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE PUSH1 0x1 DUP3 ADD PUSH1 0x0 PUSH2 0x52F4 SWAP2 SWAP1 PUSH2 0x7331 JUMP JUMPDEST PUSH1 0x2 DUP3 ADD PUSH1 0x0 PUSH2 0x5304 SWAP2 SWAP1 PUSH2 0x7331 JUMP JUMPDEST PUSH1 0x3 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0x4 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0x5 DUP3 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH1 0xFF MUL NOT AND SWAP1 SSTORE PUSH1 0x6 DUP3 ADD PUSH1 0x0 PUSH2 0x5338 SWAP2 SWAP1 PUSH2 0x7310 JUMP JUMPDEST PUSH1 0x7 DUP3 ADD PUSH1 0x0 PUSH2 0x5348 SWAP2 SWAP1 PUSH2 0x7310 JUMP JUMPDEST PUSH1 0x8 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0x9 DUP3 ADD PUSH1 0x0 PUSH2 0x5360 SWAP2 SWAP1 PUSH2 0x7331 JUMP JUMPDEST PUSH1 0xA DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0xB DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0xC DUP3 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH1 0xFF MUL NOT AND SWAP1 SSTORE PUSH1 0xC DUP3 ADD PUSH1 0x1 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH1 0xFF MUL NOT AND SWAP1 SSTORE POP POP SWAP1 SSTORE DUP1 DUP1 PUSH2 0x53A7 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x528E JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x0 DUP1 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xC ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH2 0x5418 CALLER PUSH1 0x1 PUSH2 0x1035 JUMP JUMPDEST PUSH2 0x5421 CALLER PUSH2 0x4572 JUMP JUMPDEST JUMP JUMPDEST PUSH1 0x60 PUSH1 0xD DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD DUP1 ISZERO PUSH2 0x54A7 JUMPI PUSH1 0x20 MUL DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 ADD SWAP1 DUP1 DUP4 GT PUSH2 0x545D JUMPI JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP4 DUP4 PUSH1 0x0 DUP1 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xB ADD SLOAD EQ ISZERO PUSH2 0x553A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5531 SWAP1 PUSH2 0x8428 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0x55C9 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x55C0 SWAP1 PUSH2 0x8494 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xB ADD SLOAD EQ ISZERO DUP1 ISZERO PUSH2 0x5666 JUMPI POP PUSH1 0x0 DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND JUMPDEST PUSH2 0x56A5 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x569C SWAP1 PUSH2 0x8526 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD EQ PUSH2 0x5764 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x575B SWAP1 PUSH2 0x85B8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x0 DUP1 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x57B6 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0x0 DUP1 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP6 SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x1 DUP1 PUSH1 0x0 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP DUP4 PUSH1 0x0 DUP1 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xB ADD SLOAD LT ISZERO PUSH2 0x5932 JUMPI PUSH1 0x1 SWAP3 POP PUSH2 0x5937 JUMP JUMPDEST PUSH1 0x0 SWAP3 POP JUMPDEST POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x5A77 JUMPI PUSH1 0x1 PUSH1 0x5 PUSH1 0x0 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x59E8 JUMPI PUSH2 0x59E7 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP DUP1 DUP1 PUSH2 0x5A6F SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x5943 JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x5BAF JUMPI PUSH1 0x1 PUSH1 0x5 PUSH1 0x0 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x5B20 JUMPI PUSH2 0x5B1F PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP DUP1 DUP1 PUSH2 0x5BA7 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x5A7B JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST PUSH1 0x8 DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x5D0C JUMPI PUSH1 0x0 ISZERO ISZERO PUSH1 0x5 PUSH1 0x0 PUSH1 0x8 DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x5BDC JUMPI PUSH2 0x5BDB PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO EQ ISZERO PUSH2 0x5CF9 JUMPI PUSH1 0x9 PUSH1 0x8 DUP3 DUP2 SLOAD DUP2 LT PUSH2 0x5C6D JUMPI PUSH2 0x5C6C PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP JUMPDEST DUP1 DUP1 PUSH2 0x5D04 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x5BB3 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH2 0x5D18 PUSH2 0x7661 JUMP JUMPDEST PUSH1 0x12 SLOAD DUP2 PUSH1 0x0 ADD DUP2 DUP2 MSTORE POP POP DUP5 DUP2 PUSH1 0x20 ADD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP POP DUP4 DUP2 PUSH1 0x40 ADD DUP2 SWAP1 MSTORE POP DUP3 DUP2 PUSH1 0x60 ADD DUP2 SWAP1 MSTORE POP DUP2 DUP2 PUSH2 0x120 ADD DUP2 DUP2 MSTORE POP POP PUSH3 0x69780 DUP3 PUSH2 0x5D88 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST DUP2 PUSH2 0x140 ADD DUP2 DUP2 MSTORE POP POP PUSH1 0x1 DUP2 PUSH2 0x100 ADD SWAP1 ISZERO ISZERO SWAP1 DUP2 ISZERO ISZERO DUP2 MSTORE POP POP DUP1 PUSH1 0x6 PUSH1 0x0 PUSH1 0x12 SLOAD DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 ADD MLOAD DUP2 PUSH1 0x0 ADD SSTORE PUSH1 0x20 DUP3 ADD MLOAD DUP2 PUSH1 0x1 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x40 DUP3 ADD MLOAD DUP2 PUSH1 0x2 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x5E27 SWAP3 SWAP2 SWAP1 PUSH2 0x74DB JUMP JUMPDEST POP PUSH1 0x60 DUP3 ADD MLOAD DUP2 PUSH1 0x3 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x5E44 SWAP3 SWAP2 SWAP1 PUSH2 0x74DB JUMP JUMPDEST POP PUSH1 0x80 DUP3 ADD MLOAD DUP2 PUSH1 0x4 ADD SSTORE PUSH1 0xA0 DUP3 ADD MLOAD DUP2 PUSH1 0x5 ADD SSTORE PUSH1 0xC0 DUP3 ADD MLOAD DUP2 PUSH1 0x6 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x5E75 SWAP3 SWAP2 SWAP1 PUSH2 0x7561 JUMP JUMPDEST POP PUSH1 0xE0 DUP3 ADD MLOAD DUP2 PUSH1 0x7 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x5E92 SWAP3 SWAP2 SWAP1 PUSH2 0x7561 JUMP JUMPDEST POP PUSH2 0x100 DUP3 ADD MLOAD DUP2 PUSH1 0x8 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH2 0x120 DUP3 ADD MLOAD DUP2 PUSH1 0x9 ADD SSTORE PUSH2 0x140 DUP3 ADD MLOAD DUP2 PUSH1 0xA ADD SSTORE PUSH2 0x160 DUP3 ADD MLOAD DUP2 PUSH1 0xB ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP SWAP1 POP POP PUSH1 0x1 PUSH1 0x12 SLOAD PUSH2 0x5EFD SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST PUSH1 0x12 DUP2 SWAP1 SSTORE POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x7 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD SLOAD PUSH2 0x5F59 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST PUSH1 0x7 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD DUP2 SWAP1 SSTORE POP PUSH1 0x7 PUSH1 0x0 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD CALLER SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x1 PUSH1 0x3 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD SLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 JUMPDEST PUSH1 0x8 DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x630F JUMPI PUSH1 0x1 ISZERO ISZERO PUSH1 0x0 DUP1 PUSH1 0x8 DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x613F JUMPI PUSH2 0x613E PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xC ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO EQ DUP1 ISZERO PUSH2 0x6255 JUMPI POP PUSH1 0x0 ISZERO ISZERO PUSH1 0x7 PUSH1 0x0 PUSH1 0x8 DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x61DB JUMPI PUSH2 0x61DA PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x9 ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO EQ JUMPDEST ISZERO PUSH2 0x62FC JUMPI PUSH1 0xE PUSH1 0x8 DUP3 DUP2 SLOAD DUP2 LT PUSH2 0x6270 JUMPI PUSH2 0x626F PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP JUMPDEST DUP1 DUP1 PUSH2 0x6307 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x6117 JUMP JUMPDEST POP PUSH1 0xE DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD DUP1 ISZERO PUSH2 0x6392 JUMPI PUSH1 0x20 MUL DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 ADD SWAP1 DUP1 DUP4 GT PUSH2 0x6348 JUMPI JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 JUMPDEST PUSH1 0x9 DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x64CF JUMPI PUSH1 0x11 SLOAD PUSH1 0x0 DUP1 PUSH1 0x9 DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x63C6 JUMPI PUSH2 0x63C5 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD SLOAD PUSH2 0x6439 SWAP2 SWAP1 PUSH2 0x8704 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x9 DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x6450 JUMPI PUSH2 0x644F PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD DUP2 SWAP1 SSTORE POP DUP1 DUP1 PUSH2 0x64C7 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x639F JUMP JUMPDEST POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 JUMPDEST PUSH1 0x8 DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x66BC JUMPI PUSH1 0x0 ISZERO ISZERO PUSH1 0x0 DUP1 PUSH1 0x8 DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x64FF JUMPI PUSH2 0x64FE PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xC ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO EQ DUP1 ISZERO PUSH2 0x6602 JUMPI POP TIMESTAMP PUSH1 0x0 DUP1 PUSH1 0x8 DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x6597 JUMPI PUSH2 0x6596 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xB ADD SLOAD LT JUMPDEST ISZERO PUSH2 0x66A9 JUMPI PUSH1 0xB PUSH1 0x8 DUP3 DUP2 SLOAD DUP2 LT PUSH2 0x661D JUMPI PUSH2 0x661C PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP JUMPDEST DUP1 DUP1 PUSH2 0x66B4 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x64D7 JUMP JUMPDEST POP PUSH1 0xB DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD DUP1 ISZERO PUSH2 0x673F JUMPI PUSH1 0x20 MUL DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 ADD SWAP1 DUP1 DUP4 GT PUSH2 0x66F5 JUMPI JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 DUP1 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD EQ SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x7 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD SLOAD PUSH1 0x7 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD SLOAD PUSH2 0x6863 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST SWAP1 POP PUSH1 0x33 DUP2 PUSH2 0x6872 SWAP2 SWAP1 PUSH2 0x8865 JUMP JUMPDEST PUSH1 0x64 PUSH1 0x7 PUSH1 0x0 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD SLOAD PUSH2 0x68C1 SWAP2 SWAP1 PUSH2 0x8865 JUMP JUMPDEST LT PUSH2 0x6926 JUMPI PUSH1 0x1 PUSH1 0x7 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH2 0x6982 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x7 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xD DUP1 SLOAD SWAP1 POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x69F5 JUMPI PUSH1 0xD DUP1 SLOAD DUP1 PUSH2 0x69AD JUMPI PUSH2 0x69AC PUSH2 0x865D JUMP JUMPDEST JUMPDEST PUSH1 0x1 SWAP1 SUB DUP2 DUP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE SWAP1 SSTORE DUP1 DUP1 PUSH2 0x69ED SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x6993 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xC ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6A5A DUP3 PUSH2 0x60C7 JUMP JUMPDEST PUSH2 0x6A63 DUP4 PUSH2 0x3C4F JUMP JUMPDEST PUSH1 0x10 SLOAD PUSH2 0x6A70 SWAP2 SWAP1 PUSH2 0x8704 JUMP JUMPDEST PUSH2 0x6A7A SWAP2 SWAP1 PUSH2 0x8704 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 ISZERO ISZERO PUSH1 0x7 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO EQ ISZERO PUSH2 0x71DA JUMPI PUSH1 0x0 JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x6E5A JUMPI PUSH1 0x11 SLOAD PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x6B85 JUMPI PUSH2 0x6B84 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD SLOAD PUSH2 0x6BF8 SWAP2 SWAP1 PUSH2 0x8704 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x6C4E JUMPI PUSH2 0x6C4D PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD DUP2 SWAP1 SSTORE POP PUSH1 0x1 PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x6D12 JUMPI PUSH2 0x6D11 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD SLOAD PUSH2 0x6D85 SWAP2 SWAP1 PUSH2 0x8704 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x6DDB JUMPI PUSH2 0x6DDA PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD DUP2 SWAP1 SSTORE POP DUP1 DUP1 PUSH2 0x6E52 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x6AE0 JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x71D8 JUMPI PUSH1 0x11 SLOAD PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x6F03 JUMPI PUSH2 0x6F02 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD SLOAD PUSH2 0x6F76 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x6FCC JUMPI PUSH2 0x6FCB PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD DUP2 SWAP1 SSTORE POP PUSH1 0x1 PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x7090 JUMPI PUSH2 0x708F PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD SLOAD PUSH2 0x7103 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x7159 JUMPI PUSH2 0x7158 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD DUP2 SWAP1 SSTORE POP DUP1 DUP1 PUSH2 0x71D0 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x6E5E JUMP JUMPDEST POP JUMPDEST POP JUMP JUMPDEST PUSH1 0xF PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x6 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD SLOAD PUSH2 0x7226 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST PUSH1 0x6 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD DUP2 SWAP1 SSTORE POP PUSH1 0x6 PUSH1 0x0 DUP3 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD CALLER SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x1 PUSH1 0x2 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP POP JUMP JUMPDEST POP DUP1 SLOAD PUSH1 0x0 DUP3 SSTORE SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 DUP2 ADD SWAP1 PUSH2 0x732E SWAP2 SWAP1 PUSH2 0x76DC JUMP JUMPDEST POP JUMP JUMPDEST POP DUP1 SLOAD PUSH2 0x733D SWAP1 PUSH2 0x8767 JUMP JUMPDEST PUSH1 0x0 DUP3 SSTORE DUP1 PUSH1 0x1F LT PUSH2 0x734F JUMPI POP PUSH2 0x736E JUMP JUMPDEST PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 DUP2 ADD SWAP1 PUSH2 0x736D SWAP2 SWAP1 PUSH2 0x76DC JUMP JUMPDEST JUMPDEST POP JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH2 0x737D SWAP1 PUSH2 0x8767 JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH2 0x739F JUMPI PUSH1 0x0 DUP6 SSTORE PUSH2 0x73ED JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH2 0x73B0 JUMPI DUP1 SLOAD DUP6 SSTORE PUSH2 0x73ED JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0x73ED JUMPI PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP2 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x73EC JUMPI DUP3 SLOAD DUP3 SSTORE SWAP2 PUSH1 0x1 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x73D1 JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x73FA SWAP2 SWAP1 PUSH2 0x76DC JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST DUP3 DUP1 SLOAD DUP3 DUP3 SSTORE SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 DUP2 ADD SWAP3 DUP3 ISZERO PUSH2 0x743F JUMPI PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x743E JUMPI DUP3 SLOAD DUP3 SSTORE SWAP2 PUSH1 0x1 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x7423 JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x744C SWAP2 SWAP1 PUSH2 0x76DC JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH2 0x1C0 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 ISZERO ISZERO DUP2 MSTORE POP SWAP1 JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH2 0x74E7 SWAP1 PUSH2 0x8767 JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH2 0x7509 JUMPI PUSH1 0x0 DUP6 SSTORE PUSH2 0x7550 JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH2 0x7522 JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH2 0x7550 JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0x7550 JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x754F JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x7534 JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x755D SWAP2 SWAP1 PUSH2 0x76DC JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST DUP3 DUP1 SLOAD DUP3 DUP3 SSTORE SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 DUP2 ADD SWAP3 DUP3 ISZERO PUSH2 0x75DA JUMPI SWAP2 PUSH1 0x20 MUL DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x75D9 JUMPI DUP3 MLOAD DUP3 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x7581 JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x75E7 SWAP2 SWAP1 PUSH2 0x76DC JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH2 0x160 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 ISZERO ISZERO DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH2 0x180 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 ISZERO ISZERO DUP2 MSTORE POP SWAP1 JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0x76F5 JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH2 0x76DD JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7738 DUP3 PUSH2 0x770D JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x7748 DUP2 PUSH2 0x772D JUMP JUMPDEST DUP2 EQ PUSH2 0x7753 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x7765 DUP2 PUSH2 0x773F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x777E DUP2 PUSH2 0x776B JUMP JUMPDEST DUP2 EQ PUSH2 0x7789 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x779B DUP2 PUSH2 0x7775 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x77BA JUMPI PUSH2 0x77B9 PUSH2 0x7703 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x77C8 DUP7 DUP3 DUP8 ADD PUSH2 0x7756 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x77D9 DUP7 DUP3 DUP8 ADD PUSH2 0x7756 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x77EA DUP7 DUP3 DUP8 ADD PUSH2 0x778C JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x7809 DUP2 PUSH2 0x77F4 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x7824 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x7800 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x7840 JUMPI PUSH2 0x783F PUSH2 0x7703 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x784E DUP5 DUP3 DUP6 ADD PUSH2 0x778C JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x786D JUMPI PUSH2 0x786C PUSH2 0x7703 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x787B DUP5 DUP3 DUP6 ADD PUSH2 0x7756 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x788D DUP2 PUSH2 0x77F4 JUMP JUMPDEST DUP2 EQ PUSH2 0x7898 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x78AA DUP2 PUSH2 0x7884 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x78C7 JUMPI PUSH2 0x78C6 PUSH2 0x7703 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x78D5 DUP6 DUP3 DUP7 ADD PUSH2 0x7756 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x78E6 DUP6 DUP3 DUP7 ADD PUSH2 0x789B JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x7925 DUP2 PUSH2 0x772D JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x7965 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x794A JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x7974 JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7996 DUP3 PUSH2 0x792B JUMP JUMPDEST PUSH2 0x79A0 DUP2 DUP6 PUSH2 0x7936 JUMP JUMPDEST SWAP4 POP PUSH2 0x79B0 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x7947 JUMP JUMPDEST PUSH2 0x79B9 DUP2 PUSH2 0x797A JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x79CD DUP2 PUSH2 0x776B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x79DC DUP2 PUSH2 0x77F4 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7A1A DUP4 DUP4 PUSH2 0x791C JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7A3E DUP3 PUSH2 0x79E2 JUMP JUMPDEST PUSH2 0x7A48 DUP2 DUP6 PUSH2 0x79ED JUMP JUMPDEST SWAP4 POP PUSH2 0x7A53 DUP4 PUSH2 0x79FE JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x7A84 JUMPI DUP2 MLOAD PUSH2 0x7A6B DUP9 DUP3 PUSH2 0x7A0E JUMP JUMPDEST SWAP8 POP PUSH2 0x7A76 DUP4 PUSH2 0x7A26 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x7A57 JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1C0 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD PUSH2 0x7AAA PUSH1 0x0 DUP7 ADD DUP3 PUSH2 0x791C JUMP JUMPDEST POP PUSH1 0x20 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x20 DUP7 ADD MSTORE PUSH2 0x7AC2 DUP3 DUP3 PUSH2 0x798B JUMP JUMPDEST SWAP2 POP POP PUSH1 0x40 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x40 DUP7 ADD MSTORE PUSH2 0x7ADC DUP3 DUP3 PUSH2 0x798B JUMP JUMPDEST SWAP2 POP POP PUSH1 0x60 DUP4 ADD MLOAD PUSH2 0x7AF1 PUSH1 0x60 DUP7 ADD DUP3 PUSH2 0x79C4 JUMP JUMPDEST POP PUSH1 0x80 DUP4 ADD MLOAD PUSH2 0x7B04 PUSH1 0x80 DUP7 ADD DUP3 PUSH2 0x79C4 JUMP JUMPDEST POP PUSH1 0xA0 DUP4 ADD MLOAD PUSH2 0x7B17 PUSH1 0xA0 DUP7 ADD DUP3 PUSH2 0x79D3 JUMP JUMPDEST POP PUSH1 0xC0 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0xC0 DUP7 ADD MSTORE PUSH2 0x7B2F DUP3 DUP3 PUSH2 0x7A33 JUMP JUMPDEST SWAP2 POP POP PUSH1 0xE0 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0xE0 DUP7 ADD MSTORE PUSH2 0x7B49 DUP3 DUP3 PUSH2 0x7A33 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x100 DUP4 ADD MLOAD PUSH2 0x7B60 PUSH2 0x100 DUP7 ADD DUP3 PUSH2 0x79C4 JUMP JUMPDEST POP PUSH2 0x120 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH2 0x120 DUP7 ADD MSTORE PUSH2 0x7B7A DUP3 DUP3 PUSH2 0x798B JUMP JUMPDEST SWAP2 POP POP PUSH2 0x140 DUP4 ADD MLOAD PUSH2 0x7B91 PUSH2 0x140 DUP7 ADD DUP3 PUSH2 0x79C4 JUMP JUMPDEST POP PUSH2 0x160 DUP4 ADD MLOAD PUSH2 0x7BA6 PUSH2 0x160 DUP7 ADD DUP3 PUSH2 0x79C4 JUMP JUMPDEST POP PUSH2 0x180 DUP4 ADD MLOAD PUSH2 0x7BBB PUSH2 0x180 DUP7 ADD DUP3 PUSH2 0x79D3 JUMP JUMPDEST POP PUSH2 0x1A0 DUP4 ADD MLOAD PUSH2 0x7BD0 PUSH2 0x1A0 DUP7 ADD DUP3 PUSH2 0x79D3 JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7BE7 DUP4 DUP4 PUSH2 0x7A91 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7C07 DUP3 PUSH2 0x78F0 JUMP JUMPDEST PUSH2 0x7C11 DUP2 DUP6 PUSH2 0x78FB JUMP JUMPDEST SWAP4 POP DUP4 PUSH1 0x20 DUP3 MUL DUP6 ADD PUSH2 0x7C23 DUP6 PUSH2 0x790C JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x7C5F JUMPI DUP5 DUP5 SUB DUP10 MSTORE DUP2 MLOAD PUSH2 0x7C40 DUP6 DUP3 PUSH2 0x7BDB JUMP JUMPDEST SWAP5 POP PUSH2 0x7C4B DUP4 PUSH2 0x7BEF JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP11 ADD SWAP10 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x7C27 JUMP JUMPDEST POP DUP3 SWAP8 POP DUP8 SWAP6 POP POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x7C8B DUP2 DUP5 PUSH2 0x7BFC JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x160 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD PUSH2 0x7CD8 PUSH1 0x0 DUP7 ADD DUP3 PUSH2 0x791C JUMP JUMPDEST POP PUSH1 0x20 DUP4 ADD MLOAD PUSH2 0x7CEB PUSH1 0x20 DUP7 ADD DUP3 PUSH2 0x79C4 JUMP JUMPDEST POP PUSH1 0x40 DUP4 ADD MLOAD PUSH2 0x7CFE PUSH1 0x40 DUP7 ADD DUP3 PUSH2 0x79C4 JUMP JUMPDEST POP PUSH1 0x60 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x60 DUP7 ADD MSTORE PUSH2 0x7D16 DUP3 DUP3 PUSH2 0x7A33 JUMP JUMPDEST SWAP2 POP POP PUSH1 0x80 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x80 DUP7 ADD MSTORE PUSH2 0x7D30 DUP3 DUP3 PUSH2 0x7A33 JUMP JUMPDEST SWAP2 POP POP PUSH1 0xA0 DUP4 ADD MLOAD PUSH2 0x7D45 PUSH1 0xA0 DUP7 ADD DUP3 PUSH2 0x79C4 JUMP JUMPDEST POP PUSH1 0xC0 DUP4 ADD MLOAD PUSH2 0x7D58 PUSH1 0xC0 DUP7 ADD DUP3 PUSH2 0x79C4 JUMP JUMPDEST POP PUSH1 0xE0 DUP4 ADD MLOAD PUSH2 0x7D6B PUSH1 0xE0 DUP7 ADD DUP3 PUSH2 0x79D3 JUMP JUMPDEST POP PUSH2 0x100 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH2 0x100 DUP7 ADD MSTORE PUSH2 0x7D85 DUP3 DUP3 PUSH2 0x798B JUMP JUMPDEST SWAP2 POP POP PUSH2 0x120 DUP4 ADD MLOAD PUSH2 0x7D9C PUSH2 0x120 DUP7 ADD DUP3 PUSH2 0x79D3 JUMP JUMPDEST POP PUSH2 0x140 DUP4 ADD MLOAD PUSH2 0x7DB1 PUSH2 0x140 DUP7 ADD DUP3 PUSH2 0x79D3 JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7DC8 DUP4 DUP4 PUSH2 0x7CBF JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7DE8 DUP3 PUSH2 0x7C93 JUMP JUMPDEST PUSH2 0x7DF2 DUP2 DUP6 PUSH2 0x7C9E JUMP JUMPDEST SWAP4 POP DUP4 PUSH1 0x20 DUP3 MUL DUP6 ADD PUSH2 0x7E04 DUP6 PUSH2 0x7CAF JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x7E40 JUMPI DUP5 DUP5 SUB DUP10 MSTORE DUP2 MLOAD PUSH2 0x7E21 DUP6 DUP3 PUSH2 0x7DBC JUMP JUMPDEST SWAP5 POP PUSH2 0x7E2C DUP4 PUSH2 0x7DD0 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP11 ADD SWAP10 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x7E08 JUMP JUMPDEST POP DUP3 SWAP8 POP DUP8 SWAP6 POP POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x7E6C DUP2 DUP5 PUSH2 0x7DDD JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0x7EB6 DUP3 PUSH2 0x797A JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x7ED5 JUMPI PUSH2 0x7ED4 PUSH2 0x7E7E JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7EE8 PUSH2 0x76F9 JUMP JUMPDEST SWAP1 POP PUSH2 0x7EF4 DUP3 DUP3 PUSH2 0x7EAD JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x7F14 JUMPI PUSH2 0x7F13 PUSH2 0x7E7E JUMP JUMPDEST JUMPDEST PUSH2 0x7F1D DUP3 PUSH2 0x797A JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7F4C PUSH2 0x7F47 DUP5 PUSH2 0x7EF9 JUMP JUMPDEST PUSH2 0x7EDE JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x7F68 JUMPI PUSH2 0x7F67 PUSH2 0x7E79 JUMP JUMPDEST JUMPDEST PUSH2 0x7F73 DUP5 DUP3 DUP6 PUSH2 0x7F2A JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x7F90 JUMPI PUSH2 0x7F8F PUSH2 0x7E74 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x7FA0 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x7F39 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0xA0 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x7FC5 JUMPI PUSH2 0x7FC4 PUSH2 0x7703 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x7FD3 DUP9 DUP3 DUP10 ADD PUSH2 0x7756 JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x7FF4 JUMPI PUSH2 0x7FF3 PUSH2 0x7708 JUMP JUMPDEST JUMPDEST PUSH2 0x8000 DUP9 DUP3 DUP10 ADD PUSH2 0x7F7B JUMP JUMPDEST SWAP5 POP POP PUSH1 0x40 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x8021 JUMPI PUSH2 0x8020 PUSH2 0x7708 JUMP JUMPDEST JUMPDEST PUSH2 0x802D DUP9 DUP3 DUP10 ADD PUSH2 0x7F7B JUMP JUMPDEST SWAP4 POP POP PUSH1 0x60 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x804E JUMPI PUSH2 0x804D PUSH2 0x7708 JUMP JUMPDEST JUMPDEST PUSH2 0x805A DUP9 DUP3 DUP10 ADD PUSH2 0x7F7B JUMP JUMPDEST SWAP3 POP POP PUSH1 0x80 PUSH2 0x806B DUP9 DUP3 DUP10 ADD PUSH2 0x778C JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x808F JUMPI PUSH2 0x808E PUSH2 0x7703 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x809D DUP6 DUP3 DUP7 ADD PUSH2 0x7756 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x80AE DUP6 DUP3 DUP7 ADD PUSH2 0x778C JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x80D1 JUMPI PUSH2 0x80D0 PUSH2 0x7703 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x80DF DUP7 DUP3 DUP8 ADD PUSH2 0x7756 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 DUP5 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x8100 JUMPI PUSH2 0x80FF PUSH2 0x7708 JUMP JUMPDEST JUMPDEST PUSH2 0x810C DUP7 DUP3 DUP8 ADD PUSH2 0x7F7B JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x811D DUP7 DUP3 DUP8 ADD PUSH2 0x778C JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x815F DUP4 DUP4 PUSH2 0x79C4 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8183 DUP3 PUSH2 0x8127 JUMP JUMPDEST PUSH2 0x818D DUP2 DUP6 PUSH2 0x8132 JUMP JUMPDEST SWAP4 POP PUSH2 0x8198 DUP4 PUSH2 0x8143 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x81C9 JUMPI DUP2 MLOAD PUSH2 0x81B0 DUP9 DUP3 PUSH2 0x8153 JUMP JUMPDEST SWAP8 POP PUSH2 0x81BB DUP4 PUSH2 0x816B JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x819C JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x81F0 DUP2 DUP5 PUSH2 0x8178 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x8201 DUP2 PUSH2 0x776B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x821C PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x81F8 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x8237 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x7800 JUMP JUMPDEST PUSH2 0x8244 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x7800 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8267 DUP3 PUSH2 0x79E2 JUMP JUMPDEST PUSH2 0x8271 DUP2 DUP6 PUSH2 0x824B JUMP JUMPDEST SWAP4 POP PUSH2 0x827C DUP4 PUSH2 0x79FE JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x82AD JUMPI DUP2 MLOAD PUSH2 0x8294 DUP9 DUP3 PUSH2 0x7A0E JUMP JUMPDEST SWAP8 POP PUSH2 0x829F DUP4 PUSH2 0x7A26 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x8280 JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x82D4 DUP2 DUP5 PUSH2 0x825C JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x80 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x82F6 JUMPI PUSH2 0x82F5 PUSH2 0x7703 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x8304 DUP8 DUP3 DUP9 ADD PUSH2 0x7756 JUMP JUMPDEST SWAP5 POP POP PUSH1 0x20 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x8325 JUMPI PUSH2 0x8324 PUSH2 0x7708 JUMP JUMPDEST JUMPDEST PUSH2 0x8331 DUP8 DUP3 DUP9 ADD PUSH2 0x7F7B JUMP JUMPDEST SWAP4 POP POP PUSH1 0x40 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x8352 JUMPI PUSH2 0x8351 PUSH2 0x7708 JUMP JUMPDEST JUMPDEST PUSH2 0x835E DUP8 DUP3 DUP9 ADD PUSH2 0x7F7B JUMP JUMPDEST SWAP3 POP POP PUSH1 0x60 PUSH2 0x836F DUP8 DUP3 DUP9 ADD PUSH2 0x778C JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 SWAP2 SWAP5 POP SWAP3 POP JUMP JUMPDEST PUSH2 0x8384 DUP2 PUSH2 0x772D JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x839F PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x837B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4F7267616E697A6174696F6E206164647265737320646F6573206E6F74206578 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6973742100000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8412 PUSH1 0x24 DUP4 PUSH2 0x83A5 JUMP JUMPDEST SWAP2 POP PUSH2 0x841D DUP3 PUSH2 0x83B6 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x8441 DUP2 PUSH2 0x8405 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4F7267616E697A6174696F6E20616C7265616479207665726966696564210000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x847E PUSH1 0x1E DUP4 PUSH2 0x83A5 JUMP JUMPDEST SWAP2 POP PUSH2 0x8489 DUP3 PUSH2 0x8448 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x84AD DUP2 PUSH2 0x8471 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x566F746572206F7267616E697A6174696F6E206973206E6F7420766572696669 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x65642C206E6F74207065726D697474656420746F20766F746521000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8510 PUSH1 0x3A DUP4 PUSH2 0x83A5 JUMP JUMPDEST SWAP2 POP PUSH2 0x851B DUP3 PUSH2 0x84B4 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x853F DUP2 PUSH2 0x8503 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x566F746572206F7267616E697A6174696F6E2063616E6E6F7420766F7465206D PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6F7265207468616E206F6E636521000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x85A2 PUSH1 0x2E DUP4 PUSH2 0x83A5 JUMP JUMPDEST SWAP2 POP PUSH2 0x85AD DUP3 PUSH2 0x8546 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x85D1 DUP2 PUSH2 0x8595 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x8612 DUP3 PUSH2 0x776B JUMP JUMPDEST SWAP2 POP PUSH2 0x861D DUP4 PUSH2 0x776B JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x8652 JUMPI PUSH2 0x8651 PUSH2 0x85D8 JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x31 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x8697 DUP3 PUSH2 0x776B JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 EQ ISZERO PUSH2 0x86CA JUMPI PUSH2 0x86C9 PUSH2 0x85D8 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x870F DUP3 PUSH2 0x776B JUMP JUMPDEST SWAP2 POP PUSH2 0x871A DUP4 PUSH2 0x776B JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x872D JUMPI PUSH2 0x872C PUSH2 0x85D8 JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x877F JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH2 0x8793 JUMPI PUSH2 0x8792 PUSH2 0x8738 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4F7267616E697A6174696F6E20616C7265616479207265676973746572656421 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x87CF PUSH1 0x20 DUP4 PUSH2 0x83A5 JUMP JUMPDEST SWAP2 POP PUSH2 0x87DA DUP3 PUSH2 0x8799 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x87FE DUP2 PUSH2 0x87C2 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x12 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x883F DUP3 PUSH2 0x776B JUMP JUMPDEST SWAP2 POP PUSH2 0x884A DUP4 PUSH2 0x776B JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x885A JUMPI PUSH2 0x8859 PUSH2 0x8805 JUMP JUMPDEST JUMPDEST DUP3 DUP3 DIV SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8870 DUP3 PUSH2 0x776B JUMP JUMPDEST SWAP2 POP PUSH2 0x887B DUP4 PUSH2 0x776B JUMP JUMPDEST SWAP3 POP DUP2 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DIV DUP4 GT DUP3 ISZERO ISZERO AND ISZERO PUSH2 0x88B4 JUMPI PUSH2 0x88B3 PUSH2 0x85D8 JUMP JUMPDEST JUMPDEST DUP3 DUP3 MUL SWAP1 POP SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xD2 EXTCODECOPY PUSH20 0xA98D67933766A8FB5DD76104119B3A0C5C135D3C 0xDA BYTE KECCAK256 0xDE SWAP5 OR CHAINID 0xD0 DUP12 PUSH5 0x736F6C6343 STOP ADDMOD MULMOD STOP CALLER ", + "sourceMap": "60:28889:0:-:0;;;2154:132;;;;;;;;;;2187:10;2179:5;;:18;;;;;;;;;;;;;;;;;;2231:12;2208:20;:35;;;;2277:1;2254:20;:24;;;;60:28889;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": { + "@RemoveCharityIfFinancialReportFraud_2446": { + "entryPoint": 11506, + "id": 2446, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@RemoveCharityIfFraud_1845": { + "entryPoint": 13710, + "id": 1845, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@admin_148": { + "entryPoint": 29149, + "id": 148, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@changeStakePaid_995": { + "entryPoint": 21427, + "id": 995, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@checkIfDownvoted_285": { + "entryPoint": 10579, + "id": 285, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@checkIfUpvoted_268": { + "entryPoint": 26441, + "id": 268, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@checkVerificationStatus_686": { + "entryPoint": 20253, + "id": 686, + "parameterSlots": 2, + "returnSlots": 2 + }, + "@countOfDownvotes_233": { + "entryPoint": 24775, + "id": 233, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@countOfUpvotes_220": { + "entryPoint": 15439, + "id": 220, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@countOfViews_251": { + "entryPoint": 27215, + "id": 251, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@cronJobsForVotes_1061": { + "entryPoint": 25810, + "id": 1061, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@cutStakeOfNotVoted_1210": { + "entryPoint": 25500, + "id": 1210, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@distributeStake_934": { + "entryPoint": 4149, + "id": 934, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@downVote_654": { + "entryPoint": 2002, + "id": 654, + "parameterSlots": 3, + "returnSlots": 1 + }, + "@emptyFinancialReportAddress_2472": { + "entryPoint": 27014, + "id": 2472, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@emptyFinishedViolationVotes_1498": { + "entryPoint": 9200, + "id": 1498, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@emptyFinishedVotes_1087": { + "entryPoint": 7261, + "id": 1087, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@emptyListFinancialReports_2034": { + "entryPoint": 3170, + "id": 2034, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@emptyListOrganization_425": { + "entryPoint": 21121, + "id": 425, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@emptyNotSubmitFRAddress_2118": { + "entryPoint": 20052, + "id": 2118, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@emptyNotVotedArray_1292": { + "entryPoint": 20381, + "id": 1292, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@finishedViolationVoting_1472": { + "entryPoint": 15240, + "id": 1472, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@getFinancialReports_2008": { + "entryPoint": 9284, + "id": 2008, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@getSubmittedFROrgs_2043": { + "entryPoint": 21539, + "id": 2043, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@getUnsubmittedFROrgs_2092": { + "entryPoint": 24850, + "id": 2092, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@isStaked_207": { + "entryPoint": 27129, + "id": 207, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@isVerified_195": { + "entryPoint": 20167, + "id": 195, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@markAsVerified_1011": { + "entryPoint": 17778, + "id": 1011, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@notVoted_1177": { + "entryPoint": 22848, + "id": 1177, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@registerFinancialReport_1903": { + "entryPoint": 13115, + "id": 1903, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@registerOrg_550": { + "entryPoint": 10716, + "id": 550, + "parameterSlots": 5, + "returnSlots": 0 + }, + "@registerViolation_1364": { + "entryPoint": 23824, + "id": 1364, + "parameterSlots": 4, + "returnSlots": 0 + }, + "@reportUpVote_1939": { + "entryPoint": 24330, + "id": 1939, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@reportsDownVote_1975": { + "entryPoint": 3704, + "id": 1975, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@setFinancialReportStatus_2163": { + "entryPoint": 26577, + "id": 2163, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@setVerificationStatus_972": { + "entryPoint": 17480, + "id": 972, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@setViolationStatus_1550": { + "entryPoint": 19788, + "id": 1550, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@totalOrganizations_150": { + "entryPoint": 15433, + "id": 150, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@unverifiedOrganizationsList_399": { + "entryPoint": 7376, + "id": 399, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@upVote_602": { + "entryPoint": 21681, + "id": 602, + "parameterSlots": 3, + "returnSlots": 1 + }, + "@upvotedOnFinancialReport_2297": { + "entryPoint": 27265, + "id": 2297, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@upvotedOnVerify_1689": { + "entryPoint": 17895, + "id": 1689, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@verifiedOrganizationsList_356": { + "entryPoint": 15514, + "id": 356, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@violationDownVote_1436": { + "entryPoint": 3436, + "id": 1436, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@violationUpVote_1400": { + "entryPoint": 29187, + "id": 1400, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@votingDone_308": { + "entryPoint": 13020, + "id": 308, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_available_length_t_string_memory_ptr": { + "entryPoint": 32569, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_decode_t_address": { + "entryPoint": 30550, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_bool": { + "entryPoint": 30875, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_string_memory_ptr": { + "entryPoint": 32635, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_uint256": { + "entryPoint": 30604, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_address": { + "entryPoint": 30807, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_addresst_addresst_uint256": { + "entryPoint": 30625, + "id": null, + "parameterSlots": 2, + "returnSlots": 3 + }, + "abi_decode_tuple_t_addresst_bool": { + "entryPoint": 30896, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_addresst_string_memory_ptrt_string_memory_ptrt_string_memory_ptrt_uint256": { + "entryPoint": 32681, + "id": null, + "parameterSlots": 2, + "returnSlots": 5 + }, + "abi_decode_tuple_t_addresst_string_memory_ptrt_string_memory_ptrt_uint256": { + "entryPoint": 33500, + "id": null, + "parameterSlots": 2, + "returnSlots": 4 + }, + "abi_decode_tuple_t_addresst_string_memory_ptrt_uint256": { + "entryPoint": 32952, + "id": null, + "parameterSlots": 2, + "returnSlots": 3 + }, + "abi_decode_tuple_t_addresst_uint256": { + "entryPoint": 32888, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_uint256": { + "entryPoint": 30762, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encodeUpdatedPos_t_address_to_t_address": { + "entryPoint": 31246, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encodeUpdatedPos_t_struct$_FinancialReport_$84_memory_ptr_to_t_struct$_FinancialReport_$84_memory_ptr": { + "entryPoint": 32188, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encodeUpdatedPos_t_struct$_Organization_$32_memory_ptr_to_t_struct$_Organization_$32_memory_ptr": { + "entryPoint": 31707, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encodeUpdatedPos_t_uint256_to_t_uint256": { + "entryPoint": 33107, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_address_to_t_address": { + "entryPoint": 31004, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_address_to_t_address_fromStack": { + "entryPoint": 33659, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_array$_t_address_$dyn_memory_ptr_to_t_array$_t_address_$dyn_memory_ptr": { + "entryPoint": 31283, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_array$_t_address_$dyn_memory_ptr_to_t_array$_t_address_$dyn_memory_ptr_fromStack": { + "entryPoint": 33372, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr_to_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr_fromStack": { + "entryPoint": 32221, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr_to_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr_fromStack": { + "entryPoint": 31740, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack": { + "entryPoint": 33144, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_bool_to_t_bool": { + "entryPoint": 31187, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bool_to_t_bool_fromStack": { + "entryPoint": 30720, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr": { + "entryPoint": 31115, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f_to_t_string_memory_ptr_fromStack": { + "entryPoint": 34754, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_414be5daad95c532f9b7381e52ffca6776b0449e47c566018321a361a4b95d16_to_t_string_memory_ptr_fromStack": { + "entryPoint": 34197, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_53664b562d96b321f827bfb375320c905b5c20116fabd3735d276655e7a84701_to_t_string_memory_ptr_fromStack": { + "entryPoint": 33905, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_a8c8730adc0a679cd4a5e2b2364d02c0d62620d7a5cf6d44281730f36a7832c1_to_t_string_memory_ptr_fromStack": { + "entryPoint": 34051, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_ddeb0b25a32bdbd6903219d580ec164d518abe435832e90b114c90315c52a2cf_to_t_string_memory_ptr_fromStack": { + "entryPoint": 33797, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_struct$_FinancialReport_$84_memory_ptr_to_t_struct$_FinancialReport_$84_memory_ptr": { + "entryPoint": 31935, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_struct$_Organization_$32_memory_ptr_to_t_struct$_Organization_$32_memory_ptr": { + "entryPoint": 31377, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_uint256_to_t_uint256": { + "entryPoint": 31172, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_uint256_to_t_uint256_fromStack": { + "entryPoint": 33272, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_tuple_t_address__to_t_address__fromStack_reversed": { + "entryPoint": 33674, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_array$_t_address_$dyn_memory_ptr__to_t_array$_t_address_$dyn_memory_ptr__fromStack_reversed": { + "entryPoint": 33466, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr__fromStack_reversed": { + "entryPoint": 32338, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr__fromStack_reversed": { + "entryPoint": 31857, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_array$_t_uint256_$dyn_memory_ptr__to_t_array$_t_uint256_$dyn_memory_ptr__fromStack_reversed": { + "entryPoint": 33238, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed": { + "entryPoint": 30735, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bool_t_bool__to_t_bool_t_bool__fromStack_reversed": { + "entryPoint": 33314, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 34789, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_414be5daad95c532f9b7381e52ffca6776b0449e47c566018321a361a4b95d16__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 34232, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_53664b562d96b321f827bfb375320c905b5c20116fabd3735d276655e7a84701__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 33940, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_a8c8730adc0a679cd4a5e2b2364d02c0d62620d7a5cf6d44281730f36a7832c1__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 34086, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_ddeb0b25a32bdbd6903219d580ec164d518abe435832e90b114c90315c52a2cf__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 33832, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed": { + "entryPoint": 33287, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "allocate_memory": { + "entryPoint": 32478, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "allocate_unbounded": { + "entryPoint": 30457, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + }, + "array_allocation_size_t_string_memory_ptr": { + "entryPoint": 32505, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_dataslot_t_array$_t_address_$dyn_memory_ptr": { + "entryPoint": 31230, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_dataslot_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr": { + "entryPoint": 31919, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_dataslot_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr": { + "entryPoint": 30988, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_dataslot_t_array$_t_uint256_$dyn_memory_ptr": { + "entryPoint": 33091, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_array$_t_address_$dyn_memory_ptr": { + "entryPoint": 31202, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr": { + "entryPoint": 31891, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr": { + "entryPoint": 30960, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_array$_t_uint256_$dyn_memory_ptr": { + "entryPoint": 33063, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_string_memory_ptr": { + "entryPoint": 31019, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_nextElement_t_array$_t_address_$dyn_memory_ptr": { + "entryPoint": 31270, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_nextElement_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr": { + "entryPoint": 32208, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_nextElement_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr": { + "entryPoint": 31727, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_nextElement_t_array$_t_uint256_$dyn_memory_ptr": { + "entryPoint": 33131, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_array$_t_address_$dyn_memory_ptr": { + "entryPoint": 31213, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_array$_t_address_$dyn_memory_ptr_fromStack": { + "entryPoint": 33355, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr_fromStack": { + "entryPoint": 31902, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr_fromStack": { + "entryPoint": 30971, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_array$_t_uint256_$dyn_memory_ptr_fromStack": { + "entryPoint": 33074, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_string_memory_ptr": { + "entryPoint": 31030, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_string_memory_ptr_fromStack": { + "entryPoint": 33701, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "checked_add_t_uint256": { + "entryPoint": 34311, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "checked_div_t_uint256": { + "entryPoint": 34868, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "checked_mul_t_uint256": { + "entryPoint": 34917, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "checked_sub_t_uint256": { + "entryPoint": 34564, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "cleanup_t_address": { + "entryPoint": 30509, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bool": { + "entryPoint": 30708, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint160": { + "entryPoint": 30477, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint256": { + "entryPoint": 30571, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "copy_calldata_to_memory": { + "entryPoint": 32554, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "copy_memory_to_memory": { + "entryPoint": 31047, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "extract_byte_array_length": { + "entryPoint": 34663, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "finalize_allocation": { + "entryPoint": 32429, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "increment_t_uint256": { + "entryPoint": 34444, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "panic_error_0x11": { + "entryPoint": 34264, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x12": { + "entryPoint": 34821, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x22": { + "entryPoint": 34616, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x31": { + "entryPoint": 34397, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x32": { + "entryPoint": 34517, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x41": { + "entryPoint": 32382, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d": { + "entryPoint": 32372, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae": { + "entryPoint": 32377, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { + "entryPoint": 30472, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { + "entryPoint": 30467, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "round_up_to_mul_of_32": { + "entryPoint": 31098, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "store_literal_in_memory_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f": { + "entryPoint": 34713, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_414be5daad95c532f9b7381e52ffca6776b0449e47c566018321a361a4b95d16": { + "entryPoint": 34118, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_53664b562d96b321f827bfb375320c905b5c20116fabd3735d276655e7a84701": { + "entryPoint": 33864, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_a8c8730adc0a679cd4a5e2b2364d02c0d62620d7a5cf6d44281730f36a7832c1": { + "entryPoint": 33972, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_ddeb0b25a32bdbd6903219d580ec164d518abe435832e90b114c90315c52a2cf": { + "entryPoint": 33718, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_address": { + "entryPoint": 30527, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_bool": { + "entryPoint": 30852, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_uint256": { + "entryPoint": 30581, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nodeType": "YulBlock", + "src": "0:35638:1", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "47:35:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "57:19:1", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "73:2:1", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "67:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "67:9:1" + }, + "variableNames": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "57:6:1" + } + ] + } + ] + }, + "name": "allocate_unbounded", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "40:6:1", + "type": "" + } + ], + "src": "7:75:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "177:28:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "194:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "197:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "187:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "187:12:1" + }, + "nodeType": "YulExpressionStatement", + "src": "187:12:1" + } + ] + }, + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nodeType": "YulFunctionDefinition", + "src": "88:117:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "300:28:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "317:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "320:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "310:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "310:12:1" + }, + "nodeType": "YulExpressionStatement", + "src": "310:12:1" + } + ] + }, + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nodeType": "YulFunctionDefinition", + "src": "211:117:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "379:81:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "389:65:1", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "404:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "411:42:1", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "400:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "400:54:1" + }, + "variableNames": [ + { + "name": "cleaned", + "nodeType": "YulIdentifier", + "src": "389:7:1" + } + ] + } + ] + }, + "name": "cleanup_t_uint160", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "361:5:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nodeType": "YulTypedName", + "src": "371:7:1", + "type": "" + } + ], + "src": "334:126:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "511:51:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "521:35:1", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "550:5:1" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nodeType": "YulIdentifier", + "src": "532:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "532:24:1" + }, + "variableNames": [ + { + "name": "cleaned", + "nodeType": "YulIdentifier", + "src": "521:7:1" + } + ] + } + ] + }, + "name": "cleanup_t_address", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "493:5:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nodeType": "YulTypedName", + "src": "503:7:1", + "type": "" + } + ], + "src": "466:96:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "611:79:1", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "668:16:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "677:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "680:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "670:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "670:12:1" + }, + "nodeType": "YulExpressionStatement", + "src": "670:12:1" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "634:5:1" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "659:5:1" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nodeType": "YulIdentifier", + "src": "641:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "641:24:1" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "631:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "631:35:1" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "624:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "624:43:1" + }, + "nodeType": "YulIf", + "src": "621:63:1" + } + ] + }, + "name": "validator_revert_t_address", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "604:5:1", + "type": "" + } + ], + "src": "568:122:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "748:87:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "758:29:1", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "780:6:1" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "767:12:1" + }, + "nodeType": "YulFunctionCall", + "src": "767:20:1" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "758:5:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "823:5:1" + } + ], + "functionName": { + "name": "validator_revert_t_address", + "nodeType": "YulIdentifier", + "src": "796:26:1" + }, + "nodeType": "YulFunctionCall", + "src": "796:33:1" + }, + "nodeType": "YulExpressionStatement", + "src": "796:33:1" + } + ] + }, + "name": "abi_decode_t_address", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "726:6:1", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "734:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "742:5:1", + "type": "" + } + ], + "src": "696:139:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "886:32:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "896:16:1", + "value": { + "name": "value", + "nodeType": "YulIdentifier", + "src": "907:5:1" + }, + "variableNames": [ + { + "name": "cleaned", + "nodeType": "YulIdentifier", + "src": "896:7:1" + } + ] + } + ] + }, + "name": "cleanup_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "868:5:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nodeType": "YulTypedName", + "src": "878:7:1", + "type": "" + } + ], + "src": "841:77:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "967:79:1", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "1024:16:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1033:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1036:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "1026:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "1026:12:1" + }, + "nodeType": "YulExpressionStatement", + "src": "1026:12:1" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "990:5:1" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "1015:5:1" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "997:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "997:24:1" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "987:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "987:35:1" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "980:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "980:43:1" + }, + "nodeType": "YulIf", + "src": "977:63:1" + } + ] + }, + "name": "validator_revert_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "960:5:1", + "type": "" + } + ], + "src": "924:122:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1104:87:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "1114:29:1", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "1136:6:1" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "1123:12:1" + }, + "nodeType": "YulFunctionCall", + "src": "1123:20:1" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "1114:5:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "1179:5:1" + } + ], + "functionName": { + "name": "validator_revert_t_uint256", + "nodeType": "YulIdentifier", + "src": "1152:26:1" + }, + "nodeType": "YulFunctionCall", + "src": "1152:33:1" + }, + "nodeType": "YulExpressionStatement", + "src": "1152:33:1" + } + ] + }, + "name": "abi_decode_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "1082:6:1", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "1090:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "1098:5:1", + "type": "" + } + ], + "src": "1052:139:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1297:519:1", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "1343:83:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nodeType": "YulIdentifier", + "src": "1345:77:1" + }, + "nodeType": "YulFunctionCall", + "src": "1345:79:1" + }, + "nodeType": "YulExpressionStatement", + "src": "1345:79:1" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "1318:7:1" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1327:9:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "1314:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "1314:23:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1339:2:1", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "1310:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "1310:32:1" + }, + "nodeType": "YulIf", + "src": "1307:119:1" + }, + { + "nodeType": "YulBlock", + "src": "1436:117:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "1451:15:1", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1465:1:1", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "1455:6:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1480:63:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1515:9:1" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "1526:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1511:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "1511:22:1" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "1535:7:1" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nodeType": "YulIdentifier", + "src": "1490:20:1" + }, + "nodeType": "YulFunctionCall", + "src": "1490:53:1" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "1480:6:1" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "1563:118:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "1578:16:1", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1592:2:1", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "1582:6:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1608:63:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1643:9:1" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "1654:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1639:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "1639:22:1" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "1663:7:1" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nodeType": "YulIdentifier", + "src": "1618:20:1" + }, + "nodeType": "YulFunctionCall", + "src": "1618:53:1" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "1608:6:1" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "1691:118:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "1706:16:1", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1720:2:1", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "1710:6:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1736:63:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1771:9:1" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "1782:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1767:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "1767:22:1" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "1791:7:1" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nodeType": "YulIdentifier", + "src": "1746:20:1" + }, + "nodeType": "YulFunctionCall", + "src": "1746:53:1" + }, + "variableNames": [ + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "1736:6:1" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_addresst_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "1251:9:1", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "1262:7:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "1274:6:1", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "1282:6:1", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "1290:6:1", + "type": "" + } + ], + "src": "1197:619:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1864:48:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "1874:32:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "1899:5:1" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "1892:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "1892:13:1" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "1885:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "1885:21:1" + }, + "variableNames": [ + { + "name": "cleaned", + "nodeType": "YulIdentifier", + "src": "1874:7:1" + } + ] + } + ] + }, + "name": "cleanup_t_bool", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "1846:5:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nodeType": "YulTypedName", + "src": "1856:7:1", + "type": "" + } + ], + "src": "1822:90:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1977:50:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "1994:3:1" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "2014:5:1" + } + ], + "functionName": { + "name": "cleanup_t_bool", + "nodeType": "YulIdentifier", + "src": "1999:14:1" + }, + "nodeType": "YulFunctionCall", + "src": "1999:21:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1987:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "1987:34:1" + }, + "nodeType": "YulExpressionStatement", + "src": "1987:34:1" + } + ] + }, + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "1965:5:1", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "1972:3:1", + "type": "" + } + ], + "src": "1918:109:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2125:118:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "2135:26:1", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2147:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2158:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2143:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "2143:18:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "2135:4:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "2209:6:1" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2222:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2233:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2218:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "2218:17:1" + } + ], + "functionName": { + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nodeType": "YulIdentifier", + "src": "2171:37:1" + }, + "nodeType": "YulFunctionCall", + "src": "2171:65:1" + }, + "nodeType": "YulExpressionStatement", + "src": "2171:65:1" + } + ] + }, + "name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "2097:9:1", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "2109:6:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "2120:4:1", + "type": "" + } + ], + "src": "2033:210:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2315:263:1", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "2361:83:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nodeType": "YulIdentifier", + "src": "2363:77:1" + }, + "nodeType": "YulFunctionCall", + "src": "2363:79:1" + }, + "nodeType": "YulExpressionStatement", + "src": "2363:79:1" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "2336:7:1" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2345:9:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "2332:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "2332:23:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2357:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "2328:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "2328:32:1" + }, + "nodeType": "YulIf", + "src": "2325:119:1" + }, + { + "nodeType": "YulBlock", + "src": "2454:117:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "2469:15:1", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2483:1:1", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "2473:6:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "2498:63:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2533:9:1" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "2544:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2529:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "2529:22:1" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "2553:7:1" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nodeType": "YulIdentifier", + "src": "2508:20:1" + }, + "nodeType": "YulFunctionCall", + "src": "2508:53:1" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "2498:6:1" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "2285:9:1", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "2296:7:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "2308:6:1", + "type": "" + } + ], + "src": "2249:329:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2650:263:1", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "2696:83:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nodeType": "YulIdentifier", + "src": "2698:77:1" + }, + "nodeType": "YulFunctionCall", + "src": "2698:79:1" + }, + "nodeType": "YulExpressionStatement", + "src": "2698:79:1" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "2671:7:1" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2680:9:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "2667:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "2667:23:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2692:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "2663:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "2663:32:1" + }, + "nodeType": "YulIf", + "src": "2660:119:1" + }, + { + "nodeType": "YulBlock", + "src": "2789:117:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "2804:15:1", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2818:1:1", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "2808:6:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "2833:63:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2868:9:1" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "2879:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2864:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "2864:22:1" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "2888:7:1" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nodeType": "YulIdentifier", + "src": "2843:20:1" + }, + "nodeType": "YulFunctionCall", + "src": "2843:53:1" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "2833:6:1" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_address", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "2620:9:1", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "2631:7:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "2643:6:1", + "type": "" + } + ], + "src": "2584:329:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2959:76:1", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "3013:16:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3022:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3025:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "3015:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "3015:12:1" + }, + "nodeType": "YulExpressionStatement", + "src": "3015:12:1" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "2982:5:1" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "3004:5:1" + } + ], + "functionName": { + "name": "cleanup_t_bool", + "nodeType": "YulIdentifier", + "src": "2989:14:1" + }, + "nodeType": "YulFunctionCall", + "src": "2989:21:1" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "2979:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "2979:32:1" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "2972:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "2972:40:1" + }, + "nodeType": "YulIf", + "src": "2969:60:1" + } + ] + }, + "name": "validator_revert_t_bool", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "2952:5:1", + "type": "" + } + ], + "src": "2919:116:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3090:84:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "3100:29:1", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "3122:6:1" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "3109:12:1" + }, + "nodeType": "YulFunctionCall", + "src": "3109:20:1" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "3100:5:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "3162:5:1" + } + ], + "functionName": { + "name": "validator_revert_t_bool", + "nodeType": "YulIdentifier", + "src": "3138:23:1" + }, + "nodeType": "YulFunctionCall", + "src": "3138:30:1" + }, + "nodeType": "YulExpressionStatement", + "src": "3138:30:1" + } + ] + }, + "name": "abi_decode_t_bool", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "3068:6:1", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "3076:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "3084:5:1", + "type": "" + } + ], + "src": "3041:133:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3260:388:1", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "3306:83:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nodeType": "YulIdentifier", + "src": "3308:77:1" + }, + "nodeType": "YulFunctionCall", + "src": "3308:79:1" + }, + "nodeType": "YulExpressionStatement", + "src": "3308:79:1" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "3281:7:1" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3290:9:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "3277:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "3277:23:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3302:2:1", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "3273:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "3273:32:1" + }, + "nodeType": "YulIf", + "src": "3270:119:1" + }, + { + "nodeType": "YulBlock", + "src": "3399:117:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "3414:15:1", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3428:1:1", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "3418:6:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3443:63:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3478:9:1" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "3489:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3474:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "3474:22:1" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "3498:7:1" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nodeType": "YulIdentifier", + "src": "3453:20:1" + }, + "nodeType": "YulFunctionCall", + "src": "3453:53:1" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "3443:6:1" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "3526:115:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "3541:16:1", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3555:2:1", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "3545:6:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3571:60:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3603:9:1" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "3614:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3599:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "3599:22:1" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "3623:7:1" + } + ], + "functionName": { + "name": "abi_decode_t_bool", + "nodeType": "YulIdentifier", + "src": "3581:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "3581:50:1" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "3571:6:1" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_bool", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "3222:9:1", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "3233:7:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "3245:6:1", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "3253:6:1", + "type": "" + } + ], + "src": "3180:468:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3756:40:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "3767:22:1", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "3783:5:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "3777:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "3777:12:1" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "3767:6:1" + } + ] + } + ] + }, + "name": "array_length_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "3739:5:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "3749:6:1", + "type": "" + } + ], + "src": "3654:142:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3941:73:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "3958:3:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "3963:6:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "3951:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "3951:19:1" + }, + "nodeType": "YulExpressionStatement", + "src": "3951:19:1" + }, + { + "nodeType": "YulAssignment", + "src": "3979:29:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "3998:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4003:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3994:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "3994:14:1" + }, + "variableNames": [ + { + "name": "updated_pos", + "nodeType": "YulIdentifier", + "src": "3979:11:1" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "3913:3:1", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "3918:6:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nodeType": "YulTypedName", + "src": "3929:11:1", + "type": "" + } + ], + "src": "3802:212:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4120:60:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "4130:11:1", + "value": { + "name": "ptr", + "nodeType": "YulIdentifier", + "src": "4138:3:1" + }, + "variableNames": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "4130:4:1" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "4151:22:1", + "value": { + "arguments": [ + { + "name": "ptr", + "nodeType": "YulIdentifier", + "src": "4163:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4168:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4159:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "4159:14:1" + }, + "variableNames": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "4151:4:1" + } + ] + } + ] + }, + "name": "array_dataslot_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nodeType": "YulTypedName", + "src": "4107:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "4115:4:1", + "type": "" + } + ], + "src": "4020:160:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4241:53:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "4258:3:1" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "4281:5:1" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nodeType": "YulIdentifier", + "src": "4263:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "4263:24:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "4251:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "4251:37:1" + }, + "nodeType": "YulExpressionStatement", + "src": "4251:37:1" + } + ] + }, + "name": "abi_encode_t_address_to_t_address", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "4229:5:1", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "4236:3:1", + "type": "" + } + ], + "src": "4186:108:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4359:40:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "4370:22:1", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "4386:5:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "4380:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "4380:12:1" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "4370:6:1" + } + ] + } + ] + }, + "name": "array_length_t_string_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "4342:5:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "4352:6:1", + "type": "" + } + ], + "src": "4300:99:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4491:73:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "4508:3:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "4513:6:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "4501:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "4501:19:1" + }, + "nodeType": "YulExpressionStatement", + "src": "4501:19:1" + }, + { + "nodeType": "YulAssignment", + "src": "4529:29:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "4548:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4553:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4544:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "4544:14:1" + }, + "variableNames": [ + { + "name": "updated_pos", + "nodeType": "YulIdentifier", + "src": "4529:11:1" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_string_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "4463:3:1", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "4468:6:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nodeType": "YulTypedName", + "src": "4479:11:1", + "type": "" + } + ], + "src": "4405:159:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4619:258:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "4629:10:1", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4638:1:1", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "4633:1:1", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4698:63:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "4723:3:1" + }, + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "4728:1:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4719:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "4719:11:1" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "4742:3:1" + }, + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "4747:1:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4738:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "4738:11:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "4732:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "4732:18:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "4712:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "4712:39:1" + }, + "nodeType": "YulExpressionStatement", + "src": "4712:39:1" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "4659:1:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "4662:6:1" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "4656:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "4656:13:1" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "4670:19:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "4672:15:1", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "4681:1:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4684:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4677:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "4677:10:1" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "4672:1:1" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "4652:3:1", + "statements": [] + }, + "src": "4648:113:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4795:76:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "4845:3:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "4850:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4841:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "4841:16:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4859:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "4834:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "4834:27:1" + }, + "nodeType": "YulExpressionStatement", + "src": "4834:27:1" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "4776:1:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "4779:6:1" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "4773:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "4773:13:1" + }, + "nodeType": "YulIf", + "src": "4770:101:1" + } + ] + }, + "name": "copy_memory_to_memory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nodeType": "YulTypedName", + "src": "4601:3:1", + "type": "" + }, + { + "name": "dst", + "nodeType": "YulTypedName", + "src": "4606:3:1", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "4611:6:1", + "type": "" + } + ], + "src": "4570:307:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4931:54:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "4941:38:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "4959:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4966:2:1", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4955:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "4955:14:1" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4975:2:1", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "4971:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "4971:7:1" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "4951:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "4951:28:1" + }, + "variableNames": [ + { + "name": "result", + "nodeType": "YulIdentifier", + "src": "4941:6:1" + } + ] + } + ] + }, + "name": "round_up_to_mul_of_32", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "4914:5:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nodeType": "YulTypedName", + "src": "4924:6:1", + "type": "" + } + ], + "src": "4883:102:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5073:262:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "5083:53:1", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "5130:5:1" + } + ], + "functionName": { + "name": "array_length_t_string_memory_ptr", + "nodeType": "YulIdentifier", + "src": "5097:32:1" + }, + "nodeType": "YulFunctionCall", + "src": "5097:39:1" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "5087:6:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "5145:68:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5201:3:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "5206:6:1" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr", + "nodeType": "YulIdentifier", + "src": "5152:48:1" + }, + "nodeType": "YulFunctionCall", + "src": "5152:61:1" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5145:3:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "5248:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5255:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5244:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "5244:16:1" + }, + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5262:3:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "5267:6:1" + } + ], + "functionName": { + "name": "copy_memory_to_memory", + "nodeType": "YulIdentifier", + "src": "5222:21:1" + }, + "nodeType": "YulFunctionCall", + "src": "5222:52:1" + }, + "nodeType": "YulExpressionStatement", + "src": "5222:52:1" + }, + { + "nodeType": "YulAssignment", + "src": "5283:46:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5294:3:1" + }, + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "5321:6:1" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nodeType": "YulIdentifier", + "src": "5299:21:1" + }, + "nodeType": "YulFunctionCall", + "src": "5299:29:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5290:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "5290:39:1" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "5283:3:1" + } + ] + } + ] + }, + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "5054:5:1", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "5061:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "5069:3:1", + "type": "" + } + ], + "src": "4991:344:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5396:53:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5413:3:1" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "5436:5:1" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "5418:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "5418:24:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5406:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "5406:37:1" + }, + "nodeType": "YulExpressionStatement", + "src": "5406:37:1" + } + ] + }, + "name": "abi_encode_t_uint256_to_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "5384:5:1", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "5391:3:1", + "type": "" + } + ], + "src": "5341:108:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5504:50:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5521:3:1" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "5541:5:1" + } + ], + "functionName": { + "name": "cleanup_t_bool", + "nodeType": "YulIdentifier", + "src": "5526:14:1" + }, + "nodeType": "YulFunctionCall", + "src": "5526:21:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5514:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "5514:34:1" + }, + "nodeType": "YulExpressionStatement", + "src": "5514:34:1" + } + ] + }, + "name": "abi_encode_t_bool_to_t_bool", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "5492:5:1", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "5499:3:1", + "type": "" + } + ], + "src": "5455:99:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5634:40:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "5645:22:1", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "5661:5:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "5655:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "5655:12:1" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "5645:6:1" + } + ] + } + ] + }, + "name": "array_length_t_array$_t_address_$dyn_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "5617:5:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "5627:6:1", + "type": "" + } + ], + "src": "5560:114:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5781:73:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5798:3:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "5803:6:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5791:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "5791:19:1" + }, + "nodeType": "YulExpressionStatement", + "src": "5791:19:1" + }, + { + "nodeType": "YulAssignment", + "src": "5819:29:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5838:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5843:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5834:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "5834:14:1" + }, + "variableNames": [ + { + "name": "updated_pos", + "nodeType": "YulIdentifier", + "src": "5819:11:1" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_array$_t_address_$dyn_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "5753:3:1", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "5758:6:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nodeType": "YulTypedName", + "src": "5769:11:1", + "type": "" + } + ], + "src": "5680:174:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5932:60:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "5942:11:1", + "value": { + "name": "ptr", + "nodeType": "YulIdentifier", + "src": "5950:3:1" + }, + "variableNames": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "5942:4:1" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "5963:22:1", + "value": { + "arguments": [ + { + "name": "ptr", + "nodeType": "YulIdentifier", + "src": "5975:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5980:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5971:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "5971:14:1" + }, + "variableNames": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "5963:4:1" + } + ] + } + ] + }, + "name": "array_dataslot_t_array$_t_address_$dyn_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nodeType": "YulTypedName", + "src": "5919:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "5927:4:1", + "type": "" + } + ], + "src": "5860:132:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6078:99:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "6122:6:1" + }, + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6130:3:1" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address", + "nodeType": "YulIdentifier", + "src": "6088:33:1" + }, + "nodeType": "YulFunctionCall", + "src": "6088:46:1" + }, + "nodeType": "YulExpressionStatement", + "src": "6088:46:1" + }, + { + "nodeType": "YulAssignment", + "src": "6143:28:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6161:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6166:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6157:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "6157:14:1" + }, + "variableNames": [ + { + "name": "updatedPos", + "nodeType": "YulIdentifier", + "src": "6143:10:1" + } + ] + } + ] + }, + "name": "abi_encodeUpdatedPos_t_address_to_t_address", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "6051:6:1", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "6059:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updatedPos", + "nodeType": "YulTypedName", + "src": "6067:10:1", + "type": "" + } + ], + "src": "5998:179:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6258:38:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "6268:22:1", + "value": { + "arguments": [ + { + "name": "ptr", + "nodeType": "YulIdentifier", + "src": "6280:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6285:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6276:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "6276:14:1" + }, + "variableNames": [ + { + "name": "next", + "nodeType": "YulIdentifier", + "src": "6268:4:1" + } + ] + } + ] + }, + "name": "array_nextElement_t_array$_t_address_$dyn_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nodeType": "YulTypedName", + "src": "6245:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "next", + "nodeType": "YulTypedName", + "src": "6253:4:1", + "type": "" + } + ], + "src": "6183:113:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6446:598:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "6456:68:1", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "6518:5:1" + } + ], + "functionName": { + "name": "array_length_t_array$_t_address_$dyn_memory_ptr", + "nodeType": "YulIdentifier", + "src": "6470:47:1" + }, + "nodeType": "YulFunctionCall", + "src": "6470:54:1" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "6460:6:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "6533:83:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6604:3:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "6609:6:1" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_array$_t_address_$dyn_memory_ptr", + "nodeType": "YulIdentifier", + "src": "6540:63:1" + }, + "nodeType": "YulFunctionCall", + "src": "6540:76:1" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6533:3:1" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "6625:71:1", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "6690:5:1" + } + ], + "functionName": { + "name": "array_dataslot_t_array$_t_address_$dyn_memory_ptr", + "nodeType": "YulIdentifier", + "src": "6640:49:1" + }, + "nodeType": "YulFunctionCall", + "src": "6640:56:1" + }, + "variables": [ + { + "name": "baseRef", + "nodeType": "YulTypedName", + "src": "6629:7:1", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "6705:21:1", + "value": { + "name": "baseRef", + "nodeType": "YulIdentifier", + "src": "6719:7:1" + }, + "variables": [ + { + "name": "srcPtr", + "nodeType": "YulTypedName", + "src": "6709:6:1", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6795:224:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "6809:34:1", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "6836:6:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "6830:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "6830:13:1" + }, + "variables": [ + { + "name": "elementValue0", + "nodeType": "YulTypedName", + "src": "6813:13:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "6856:70:1", + "value": { + "arguments": [ + { + "name": "elementValue0", + "nodeType": "YulIdentifier", + "src": "6907:13:1" + }, + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6922:3:1" + } + ], + "functionName": { + "name": "abi_encodeUpdatedPos_t_address_to_t_address", + "nodeType": "YulIdentifier", + "src": "6863:43:1" + }, + "nodeType": "YulFunctionCall", + "src": "6863:63:1" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6856:3:1" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "6939:70:1", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "7002:6:1" + } + ], + "functionName": { + "name": "array_nextElement_t_array$_t_address_$dyn_memory_ptr", + "nodeType": "YulIdentifier", + "src": "6949:52:1" + }, + "nodeType": "YulFunctionCall", + "src": "6949:60:1" + }, + "variableNames": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "6939:6:1" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "6757:1:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "6760:6:1" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "6754:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "6754:13:1" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "6768:18:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "6770:14:1", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "6779:1:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6782:1:1", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6775:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "6775:9:1" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "6770:1:1" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "6739:14:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "6741:10:1", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6750:1:1", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "6745:1:1", + "type": "" + } + ] + } + ] + }, + "src": "6735:284:1" + }, + { + "nodeType": "YulAssignment", + "src": "7028:10:1", + "value": { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "7035:3:1" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "7028:3:1" + } + ] + } + ] + }, + "name": "abi_encode_t_array$_t_address_$dyn_memory_ptr_to_t_array$_t_address_$dyn_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "6425:5:1", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "6432:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "6441:3:1", + "type": "" + } + ], + "src": "6332:712:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7236:2991:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "7246:28:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "7262:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7267:6:1", + "type": "", + "value": "0x01c0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7258:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "7258:16:1" + }, + "variables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "7250:4:1", + "type": "" + } + ] + }, + { + "nodeType": "YulBlock", + "src": "7284:171:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "7326:43:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "7356:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7363:4:1", + "type": "", + "value": "0x00" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7352:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "7352:16:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "7346:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "7346:23:1" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "7330:12:1", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "7416:12:1" + }, + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "7434:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7439:4:1", + "type": "", + "value": "0x00" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7430:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "7430:14:1" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address", + "nodeType": "YulIdentifier", + "src": "7382:33:1" + }, + "nodeType": "YulFunctionCall", + "src": "7382:63:1" + }, + "nodeType": "YulExpressionStatement", + "src": "7382:63:1" + } + ] + }, + { + "nodeType": "YulBlock", + "src": "7465:235:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "7500:43:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "7530:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7537:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7526:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "7526:16:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "7520:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "7520:23:1" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "7504:12:1", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "7568:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7573:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7564:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "7564:14:1" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "7584:4:1" + }, + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "7590:3:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "7580:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "7580:14:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "7557:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "7557:38:1" + }, + "nodeType": "YulExpressionStatement", + "src": "7557:38:1" + }, + { + "nodeType": "YulAssignment", + "src": "7608:81:1", + "value": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "7670:12:1" + }, + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "7684:4:1" + } + ], + "functionName": { + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr", + "nodeType": "YulIdentifier", + "src": "7616:53:1" + }, + "nodeType": "YulFunctionCall", + "src": "7616:73:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "7608:4:1" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "7710:238:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "7748:43:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "7778:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7785:4:1", + "type": "", + "value": "0x40" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7774:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "7774:16:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "7768:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "7768:23:1" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "7752:12:1", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "7816:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7821:4:1", + "type": "", + "value": "0x40" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7812:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "7812:14:1" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "7832:4:1" + }, + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "7838:3:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "7828:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "7828:14:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "7805:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "7805:38:1" + }, + "nodeType": "YulExpressionStatement", + "src": "7805:38:1" + }, + { + "nodeType": "YulAssignment", + "src": "7856:81:1", + "value": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "7918:12:1" + }, + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "7932:4:1" + } + ], + "functionName": { + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr", + "nodeType": "YulIdentifier", + "src": "7864:53:1" + }, + "nodeType": "YulFunctionCall", + "src": "7864:73:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "7856:4:1" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "7958:167:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "7996:43:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "8026:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8033:4:1", + "type": "", + "value": "0x60" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8022:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "8022:16:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "8016:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "8016:23:1" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "8000:12:1", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "8086:12:1" + }, + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "8104:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8109:4:1", + "type": "", + "value": "0x60" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8100:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "8100:14:1" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256", + "nodeType": "YulIdentifier", + "src": "8052:33:1" + }, + "nodeType": "YulFunctionCall", + "src": "8052:63:1" + }, + "nodeType": "YulExpressionStatement", + "src": "8052:63:1" + } + ] + }, + { + "nodeType": "YulBlock", + "src": "8135:169:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "8175:43:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "8205:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8212:4:1", + "type": "", + "value": "0x80" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8201:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "8201:16:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "8195:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "8195:23:1" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "8179:12:1", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "8265:12:1" + }, + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "8283:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8288:4:1", + "type": "", + "value": "0x80" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8279:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "8279:14:1" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256", + "nodeType": "YulIdentifier", + "src": "8231:33:1" + }, + "nodeType": "YulFunctionCall", + "src": "8231:63:1" + }, + "nodeType": "YulExpressionStatement", + "src": "8231:63:1" + } + ] + }, + { + "nodeType": "YulBlock", + "src": "8314:173:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "8364:43:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "8394:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8401:4:1", + "type": "", + "value": "0xa0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8390:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "8390:16:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "8384:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "8384:23:1" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "8368:12:1", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "8448:12:1" + }, + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "8466:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8471:4:1", + "type": "", + "value": "0xa0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8462:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "8462:14:1" + } + ], + "functionName": { + "name": "abi_encode_t_bool_to_t_bool", + "nodeType": "YulIdentifier", + "src": "8420:27:1" + }, + "nodeType": "YulFunctionCall", + "src": "8420:57:1" + }, + "nodeType": "YulExpressionStatement", + "src": "8420:57:1" + } + ] + }, + { + "nodeType": "YulBlock", + "src": "8497:269:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "8536:43:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "8566:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8573:4:1", + "type": "", + "value": "0xc0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8562:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "8562:16:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "8556:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "8556:23:1" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "8540:12:1", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "8604:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8609:4:1", + "type": "", + "value": "0xc0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8600:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "8600:14:1" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "8620:4:1" + }, + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "8626:3:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "8616:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "8616:14:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8593:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "8593:38:1" + }, + "nodeType": "YulExpressionStatement", + "src": "8593:38:1" + }, + { + "nodeType": "YulAssignment", + "src": "8644:111:1", + "value": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "8736:12:1" + }, + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "8750:4:1" + } + ], + "functionName": { + "name": "abi_encode_t_array$_t_address_$dyn_memory_ptr_to_t_array$_t_address_$dyn_memory_ptr", + "nodeType": "YulIdentifier", + "src": "8652:83:1" + }, + "nodeType": "YulFunctionCall", + "src": "8652:103:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "8644:4:1" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "8776:271:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "8817:43:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "8847:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8854:4:1", + "type": "", + "value": "0xe0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8843:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "8843:16:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "8837:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "8837:23:1" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "8821:12:1", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "8885:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8890:4:1", + "type": "", + "value": "0xe0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8881:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "8881:14:1" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "8901:4:1" + }, + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "8907:3:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "8897:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "8897:14:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8874:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "8874:38:1" + }, + "nodeType": "YulExpressionStatement", + "src": "8874:38:1" + }, + { + "nodeType": "YulAssignment", + "src": "8925:111:1", + "value": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "9017:12:1" + }, + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "9031:4:1" + } + ], + "functionName": { + "name": "abi_encode_t_array$_t_address_$dyn_memory_ptr_to_t_array$_t_address_$dyn_memory_ptr", + "nodeType": "YulIdentifier", + "src": "8933:83:1" + }, + "nodeType": "YulFunctionCall", + "src": "8933:103:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "8925:4:1" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "9057:169:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "9093:45:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "9123:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9130:6:1", + "type": "", + "value": "0x0100" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9119:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "9119:18:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "9113:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "9113:25:1" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "9097:12:1", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "9185:12:1" + }, + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "9203:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9208:6:1", + "type": "", + "value": "0x0100" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9199:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "9199:16:1" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256", + "nodeType": "YulIdentifier", + "src": "9151:33:1" + }, + "nodeType": "YulFunctionCall", + "src": "9151:65:1" + }, + "nodeType": "YulExpressionStatement", + "src": "9151:65:1" + } + ] + }, + { + "nodeType": "YulBlock", + "src": "9236:239:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "9271:45:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "9301:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9308:6:1", + "type": "", + "value": "0x0120" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9297:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "9297:18:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "9291:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "9291:25:1" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "9275:12:1", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "9341:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9346:6:1", + "type": "", + "value": "0x0120" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9337:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "9337:16:1" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "9359:4:1" + }, + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "9365:3:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "9355:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "9355:14:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "9330:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "9330:40:1" + }, + "nodeType": "YulExpressionStatement", + "src": "9330:40:1" + }, + { + "nodeType": "YulAssignment", + "src": "9383:81:1", + "value": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "9445:12:1" + }, + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "9459:4:1" + } + ], + "functionName": { + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr", + "nodeType": "YulIdentifier", + "src": "9391:53:1" + }, + "nodeType": "YulFunctionCall", + "src": "9391:73:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "9383:4:1" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "9485:170:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "9522:45:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "9552:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9559:6:1", + "type": "", + "value": "0x0140" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9548:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "9548:18:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "9542:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "9542:25:1" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "9526:12:1", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "9614:12:1" + }, + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "9632:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9637:6:1", + "type": "", + "value": "0x0140" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9628:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "9628:16:1" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256", + "nodeType": "YulIdentifier", + "src": "9580:33:1" + }, + "nodeType": "YulFunctionCall", + "src": "9580:65:1" + }, + "nodeType": "YulExpressionStatement", + "src": "9580:65:1" + } + ] + }, + { + "nodeType": "YulBlock", + "src": "9665:180:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "9712:45:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "9742:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9749:6:1", + "type": "", + "value": "0x0160" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9738:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "9738:18:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "9732:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "9732:25:1" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "9716:12:1", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "9804:12:1" + }, + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "9822:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9827:6:1", + "type": "", + "value": "0x0160" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9818:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "9818:16:1" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256", + "nodeType": "YulIdentifier", + "src": "9770:33:1" + }, + "nodeType": "YulFunctionCall", + "src": "9770:65:1" + }, + "nodeType": "YulExpressionStatement", + "src": "9770:65:1" + } + ] + }, + { + "nodeType": "YulBlock", + "src": "9855:169:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "9897:45:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "9927:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9934:6:1", + "type": "", + "value": "0x0180" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9923:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "9923:18:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "9917:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "9917:25:1" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "9901:12:1", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "9983:12:1" + }, + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "10001:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10006:6:1", + "type": "", + "value": "0x0180" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9997:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "9997:16:1" + } + ], + "functionName": { + "name": "abi_encode_t_bool_to_t_bool", + "nodeType": "YulIdentifier", + "src": "9955:27:1" + }, + "nodeType": "YulFunctionCall", + "src": "9955:59:1" + }, + "nodeType": "YulExpressionStatement", + "src": "9955:59:1" + } + ] + }, + { + "nodeType": "YulBlock", + "src": "10034:166:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "10073:45:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "10103:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10110:6:1", + "type": "", + "value": "0x01a0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10099:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "10099:18:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "10093:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "10093:25:1" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "10077:12:1", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "10159:12:1" + }, + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "10177:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10182:6:1", + "type": "", + "value": "0x01a0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10173:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "10173:16:1" + } + ], + "functionName": { + "name": "abi_encode_t_bool_to_t_bool", + "nodeType": "YulIdentifier", + "src": "10131:27:1" + }, + "nodeType": "YulFunctionCall", + "src": "10131:59:1" + }, + "nodeType": "YulExpressionStatement", + "src": "10131:59:1" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "10210:11:1", + "value": { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "10217:4:1" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "10210:3:1" + } + ] + } + ] + }, + "name": "abi_encode_t_struct$_Organization_$32_memory_ptr_to_t_struct$_Organization_$32_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "7215:5:1", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "7222:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "7231:3:1", + "type": "" + } + ], + "src": "7116:3111:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10369:132:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "10379:116:1", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "10483:6:1" + }, + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "10491:3:1" + } + ], + "functionName": { + "name": "abi_encode_t_struct$_Organization_$32_memory_ptr_to_t_struct$_Organization_$32_memory_ptr", + "nodeType": "YulIdentifier", + "src": "10393:89:1" + }, + "nodeType": "YulFunctionCall", + "src": "10393:102:1" + }, + "variableNames": [ + { + "name": "updatedPos", + "nodeType": "YulIdentifier", + "src": "10379:10:1" + } + ] + } + ] + }, + "name": "abi_encodeUpdatedPos_t_struct$_Organization_$32_memory_ptr_to_t_struct$_Organization_$32_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "10342:6:1", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "10350:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updatedPos", + "nodeType": "YulTypedName", + "src": "10358:10:1", + "type": "" + } + ], + "src": "10233:268:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10610:38:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "10620:22:1", + "value": { + "arguments": [ + { + "name": "ptr", + "nodeType": "YulIdentifier", + "src": "10632:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10637:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10628:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "10628:14:1" + }, + "variableNames": [ + { + "name": "next", + "nodeType": "YulIdentifier", + "src": "10620:4:1" + } + ] + } + ] + }, + "name": "array_nextElement_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nodeType": "YulTypedName", + "src": "10597:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "next", + "nodeType": "YulTypedName", + "src": "10605:4:1", + "type": "" + } + ], + "src": "10507:141:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10904:955:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "10914:96:1", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "11004:5:1" + } + ], + "functionName": { + "name": "array_length_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr", + "nodeType": "YulIdentifier", + "src": "10928:75:1" + }, + "nodeType": "YulFunctionCall", + "src": "10928:82:1" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "10918:6:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "11019:121:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "11128:3:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "11133:6:1" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "11026:101:1" + }, + "nodeType": "YulFunctionCall", + "src": "11026:114:1" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "11019:3:1" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "11149:20:1", + "value": { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "11166:3:1" + }, + "variables": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "11153:9:1", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "11178:39:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "11194:3:1" + }, + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "11203:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11211:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nodeType": "YulIdentifier", + "src": "11199:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "11199:17:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11190:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "11190:27:1" + }, + "variables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "11182:4:1", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "11226:99:1", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "11319:5:1" + } + ], + "functionName": { + "name": "array_dataslot_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr", + "nodeType": "YulIdentifier", + "src": "11241:77:1" + }, + "nodeType": "YulFunctionCall", + "src": "11241:84:1" + }, + "variables": [ + { + "name": "baseRef", + "nodeType": "YulTypedName", + "src": "11230:7:1", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "11334:21:1", + "value": { + "name": "baseRef", + "nodeType": "YulIdentifier", + "src": "11348:7:1" + }, + "variables": [ + { + "name": "srcPtr", + "nodeType": "YulTypedName", + "src": "11338:6:1", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11424:390:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "11445:3:1" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "11454:4:1" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "11460:9:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "11450:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "11450:20:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "11438:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "11438:33:1" + }, + "nodeType": "YulExpressionStatement", + "src": "11438:33:1" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "11484:34:1", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "11511:6:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "11505:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "11505:13:1" + }, + "variables": [ + { + "name": "elementValue0", + "nodeType": "YulTypedName", + "src": "11488:13:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "11531:128:1", + "value": { + "arguments": [ + { + "name": "elementValue0", + "nodeType": "YulIdentifier", + "src": "11639:13:1" + }, + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "11654:4:1" + } + ], + "functionName": { + "name": "abi_encodeUpdatedPos_t_struct$_Organization_$32_memory_ptr_to_t_struct$_Organization_$32_memory_ptr", + "nodeType": "YulIdentifier", + "src": "11539:99:1" + }, + "nodeType": "YulFunctionCall", + "src": "11539:120:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "11531:4:1" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "11672:98:1", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "11763:6:1" + } + ], + "functionName": { + "name": "array_nextElement_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr", + "nodeType": "YulIdentifier", + "src": "11682:80:1" + }, + "nodeType": "YulFunctionCall", + "src": "11682:88:1" + }, + "variableNames": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "11672:6:1" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "11783:21:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "11794:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11799:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11790:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "11790:14:1" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "11783:3:1" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "11386:1:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "11389:6:1" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "11383:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "11383:13:1" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "11397:18:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "11399:14:1", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "11408:1:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11411:1:1", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11404:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "11404:9:1" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "11399:1:1" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "11368:14:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "11370:10:1", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11379:1:1", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "11374:1:1", + "type": "" + } + ] + } + ] + }, + "src": "11364:450:1" + }, + { + "nodeType": "YulAssignment", + "src": "11823:11:1", + "value": { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "11830:4:1" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "11823:3:1" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "11843:10:1", + "value": { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "11850:3:1" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "11843:3:1" + } + ] + } + ] + }, + "name": "abi_encode_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr_to_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "10883:5:1", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "10890:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "10899:3:1", + "type": "" + } + ], + "src": "10724:1135:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12069:281:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "12079:26:1", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12091:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12102:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12087:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "12087:18:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "12079:4:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12126:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12137:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12122:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "12122:17:1" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "12145:4:1" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12151:9:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "12141:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "12141:20:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "12115:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "12115:47:1" + }, + "nodeType": "YulExpressionStatement", + "src": "12115:47:1" + }, + { + "nodeType": "YulAssignment", + "src": "12171:172:1", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "12329:6:1" + }, + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "12338:4:1" + } + ], + "functionName": { + "name": "abi_encode_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr_to_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "12179:149:1" + }, + "nodeType": "YulFunctionCall", + "src": "12179:164:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "12171:4:1" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "12041:9:1", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "12053:6:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "12064:4:1", + "type": "" + } + ], + "src": "11865:485:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12461:40:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "12472:22:1", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "12488:5:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "12482:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "12482:12:1" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "12472:6:1" + } + ] + } + ] + }, + "name": "array_length_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "12444:5:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "12454:6:1", + "type": "" + } + ], + "src": "12356:145:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12649:73:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "12666:3:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "12671:6:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "12659:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "12659:19:1" + }, + "nodeType": "YulExpressionStatement", + "src": "12659:19:1" + }, + { + "nodeType": "YulAssignment", + "src": "12687:29:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "12706:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12711:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12702:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "12702:14:1" + }, + "variableNames": [ + { + "name": "updated_pos", + "nodeType": "YulIdentifier", + "src": "12687:11:1" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "12621:3:1", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "12626:6:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nodeType": "YulTypedName", + "src": "12637:11:1", + "type": "" + } + ], + "src": "12507:215:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12831:60:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "12841:11:1", + "value": { + "name": "ptr", + "nodeType": "YulIdentifier", + "src": "12849:3:1" + }, + "variableNames": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "12841:4:1" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "12862:22:1", + "value": { + "arguments": [ + { + "name": "ptr", + "nodeType": "YulIdentifier", + "src": "12874:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12879:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12870:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "12870:14:1" + }, + "variableNames": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "12862:4:1" + } + ] + } + ] + }, + "name": "array_dataslot_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nodeType": "YulTypedName", + "src": "12818:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "12826:4:1", + "type": "" + } + ], + "src": "12728:163:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13095:2326:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "13105:28:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "13121:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13126:6:1", + "type": "", + "value": "0x0160" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13117:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "13117:16:1" + }, + "variables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "13109:4:1", + "type": "" + } + ] + }, + { + "nodeType": "YulBlock", + "src": "13143:171:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "13185:43:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "13215:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13222:4:1", + "type": "", + "value": "0x00" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13211:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "13211:16:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "13205:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "13205:23:1" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "13189:12:1", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "13275:12:1" + }, + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "13293:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13298:4:1", + "type": "", + "value": "0x00" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13289:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "13289:14:1" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address", + "nodeType": "YulIdentifier", + "src": "13241:33:1" + }, + "nodeType": "YulFunctionCall", + "src": "13241:63:1" + }, + "nodeType": "YulExpressionStatement", + "src": "13241:63:1" + } + ] + }, + { + "nodeType": "YulBlock", + "src": "13324:167:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "13362:43:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "13392:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13399:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13388:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "13388:16:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "13382:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "13382:23:1" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "13366:12:1", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "13452:12:1" + }, + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "13470:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13475:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13466:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "13466:14:1" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256", + "nodeType": "YulIdentifier", + "src": "13418:33:1" + }, + "nodeType": "YulFunctionCall", + "src": "13418:63:1" + }, + "nodeType": "YulExpressionStatement", + "src": "13418:63:1" + } + ] + }, + { + "nodeType": "YulBlock", + "src": "13501:169:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "13541:43:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "13571:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13578:4:1", + "type": "", + "value": "0x40" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13567:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "13567:16:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "13561:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "13561:23:1" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "13545:12:1", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "13631:12:1" + }, + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "13649:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13654:4:1", + "type": "", + "value": "0x40" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13645:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "13645:14:1" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256", + "nodeType": "YulIdentifier", + "src": "13597:33:1" + }, + "nodeType": "YulFunctionCall", + "src": "13597:63:1" + }, + "nodeType": "YulExpressionStatement", + "src": "13597:63:1" + } + ] + }, + { + "nodeType": "YulBlock", + "src": "13680:269:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "13719:43:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "13749:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13756:4:1", + "type": "", + "value": "0x60" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13745:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "13745:16:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "13739:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "13739:23:1" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "13723:12:1", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "13787:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13792:4:1", + "type": "", + "value": "0x60" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13783:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "13783:14:1" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "13803:4:1" + }, + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "13809:3:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "13799:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "13799:14:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "13776:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "13776:38:1" + }, + "nodeType": "YulExpressionStatement", + "src": "13776:38:1" + }, + { + "nodeType": "YulAssignment", + "src": "13827:111:1", + "value": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "13919:12:1" + }, + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "13933:4:1" + } + ], + "functionName": { + "name": "abi_encode_t_array$_t_address_$dyn_memory_ptr_to_t_array$_t_address_$dyn_memory_ptr", + "nodeType": "YulIdentifier", + "src": "13835:83:1" + }, + "nodeType": "YulFunctionCall", + "src": "13835:103:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "13827:4:1" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "13959:271:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "14000:43:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "14030:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14037:4:1", + "type": "", + "value": "0x80" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "14026:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "14026:16:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "14020:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "14020:23:1" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "14004:12:1", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "14068:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14073:4:1", + "type": "", + "value": "0x80" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "14064:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "14064:14:1" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "14084:4:1" + }, + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "14090:3:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "14080:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "14080:14:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "14057:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "14057:38:1" + }, + "nodeType": "YulExpressionStatement", + "src": "14057:38:1" + }, + { + "nodeType": "YulAssignment", + "src": "14108:111:1", + "value": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "14200:12:1" + }, + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "14214:4:1" + } + ], + "functionName": { + "name": "abi_encode_t_array$_t_address_$dyn_memory_ptr_to_t_array$_t_address_$dyn_memory_ptr", + "nodeType": "YulIdentifier", + "src": "14116:83:1" + }, + "nodeType": "YulFunctionCall", + "src": "14116:103:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "14108:4:1" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "14240:181:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "14292:43:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "14322:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14329:4:1", + "type": "", + "value": "0xa0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "14318:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "14318:16:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "14312:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "14312:23:1" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "14296:12:1", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "14382:12:1" + }, + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "14400:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14405:4:1", + "type": "", + "value": "0xa0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "14396:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "14396:14:1" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256", + "nodeType": "YulIdentifier", + "src": "14348:33:1" + }, + "nodeType": "YulFunctionCall", + "src": "14348:63:1" + }, + "nodeType": "YulExpressionStatement", + "src": "14348:63:1" + } + ] + }, + { + "nodeType": "YulBlock", + "src": "14431:179:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "14481:43:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "14511:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14518:4:1", + "type": "", + "value": "0xc0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "14507:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "14507:16:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "14501:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "14501:23:1" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "14485:12:1", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "14571:12:1" + }, + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "14589:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14594:4:1", + "type": "", + "value": "0xc0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "14585:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "14585:14:1" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256", + "nodeType": "YulIdentifier", + "src": "14537:33:1" + }, + "nodeType": "YulFunctionCall", + "src": "14537:63:1" + }, + "nodeType": "YulExpressionStatement", + "src": "14537:63:1" + } + ] + }, + { + "nodeType": "YulBlock", + "src": "14620:166:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "14663:43:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "14693:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14700:4:1", + "type": "", + "value": "0xe0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "14689:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "14689:16:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "14683:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "14683:23:1" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "14667:12:1", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "14747:12:1" + }, + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "14765:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14770:4:1", + "type": "", + "value": "0xe0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "14761:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "14761:14:1" + } + ], + "functionName": { + "name": "abi_encode_t_bool_to_t_bool", + "nodeType": "YulIdentifier", + "src": "14719:27:1" + }, + "nodeType": "YulFunctionCall", + "src": "14719:57:1" + }, + "nodeType": "YulExpressionStatement", + "src": "14719:57:1" + } + ] + }, + { + "nodeType": "YulBlock", + "src": "14796:245:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "14837:45:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "14867:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14874:6:1", + "type": "", + "value": "0x0100" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "14863:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "14863:18:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "14857:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "14857:25:1" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "14841:12:1", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "14907:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14912:6:1", + "type": "", + "value": "0x0100" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "14903:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "14903:16:1" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "14925:4:1" + }, + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "14931:3:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "14921:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "14921:14:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "14896:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "14896:40:1" + }, + "nodeType": "YulExpressionStatement", + "src": "14896:40:1" + }, + { + "nodeType": "YulAssignment", + "src": "14949:81:1", + "value": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "15011:12:1" + }, + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "15025:4:1" + } + ], + "functionName": { + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr", + "nodeType": "YulIdentifier", + "src": "14957:53:1" + }, + "nodeType": "YulFunctionCall", + "src": "14957:73:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "14949:4:1" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "15051:164:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "15088:45:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "15118:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15125:6:1", + "type": "", + "value": "0x0120" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "15114:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "15114:18:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "15108:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "15108:25:1" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "15092:12:1", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "15174:12:1" + }, + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "15192:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15197:6:1", + "type": "", + "value": "0x0120" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "15188:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "15188:16:1" + } + ], + "functionName": { + "name": "abi_encode_t_bool_to_t_bool", + "nodeType": "YulIdentifier", + "src": "15146:27:1" + }, + "nodeType": "YulFunctionCall", + "src": "15146:59:1" + }, + "nodeType": "YulExpressionStatement", + "src": "15146:59:1" + } + ] + }, + { + "nodeType": "YulBlock", + "src": "15225:169:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "15267:45:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "15297:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15304:6:1", + "type": "", + "value": "0x0140" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "15293:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "15293:18:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "15287:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "15287:25:1" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "15271:12:1", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "15353:12:1" + }, + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "15371:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15376:6:1", + "type": "", + "value": "0x0140" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "15367:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "15367:16:1" + } + ], + "functionName": { + "name": "abi_encode_t_bool_to_t_bool", + "nodeType": "YulIdentifier", + "src": "15325:27:1" + }, + "nodeType": "YulFunctionCall", + "src": "15325:59:1" + }, + "nodeType": "YulExpressionStatement", + "src": "15325:59:1" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "15404:11:1", + "value": { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "15411:4:1" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "15404:3:1" + } + ] + } + ] + }, + "name": "abi_encode_t_struct$_FinancialReport_$84_memory_ptr_to_t_struct$_FinancialReport_$84_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "13074:5:1", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "13081:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "13090:3:1", + "type": "" + } + ], + "src": "12969:2452:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "15569:138:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "15579:122:1", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "15689:6:1" + }, + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "15697:3:1" + } + ], + "functionName": { + "name": "abi_encode_t_struct$_FinancialReport_$84_memory_ptr_to_t_struct$_FinancialReport_$84_memory_ptr", + "nodeType": "YulIdentifier", + "src": "15593:95:1" + }, + "nodeType": "YulFunctionCall", + "src": "15593:108:1" + }, + "variableNames": [ + { + "name": "updatedPos", + "nodeType": "YulIdentifier", + "src": "15579:10:1" + } + ] + } + ] + }, + "name": "abi_encodeUpdatedPos_t_struct$_FinancialReport_$84_memory_ptr_to_t_struct$_FinancialReport_$84_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "15542:6:1", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "15550:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updatedPos", + "nodeType": "YulTypedName", + "src": "15558:10:1", + "type": "" + } + ], + "src": "15427:280:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "15819:38:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "15829:22:1", + "value": { + "arguments": [ + { + "name": "ptr", + "nodeType": "YulIdentifier", + "src": "15841:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15846:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "15837:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "15837:14:1" + }, + "variableNames": [ + { + "name": "next", + "nodeType": "YulIdentifier", + "src": "15829:4:1" + } + ] + } + ] + }, + "name": "array_nextElement_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nodeType": "YulTypedName", + "src": "15806:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "next", + "nodeType": "YulTypedName", + "src": "15814:4:1", + "type": "" + } + ], + "src": "15713:144:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "16125:973:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "16135:99:1", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "16228:5:1" + } + ], + "functionName": { + "name": "array_length_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr", + "nodeType": "YulIdentifier", + "src": "16149:78:1" + }, + "nodeType": "YulFunctionCall", + "src": "16149:85:1" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "16139:6:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "16243:124:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "16355:3:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "16360:6:1" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "16250:104:1" + }, + "nodeType": "YulFunctionCall", + "src": "16250:117:1" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "16243:3:1" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "16376:20:1", + "value": { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "16393:3:1" + }, + "variables": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "16380:9:1", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "16405:39:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "16421:3:1" + }, + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "16430:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16438:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nodeType": "YulIdentifier", + "src": "16426:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "16426:17:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "16417:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "16417:27:1" + }, + "variables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "16409:4:1", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "16453:102:1", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "16549:5:1" + } + ], + "functionName": { + "name": "array_dataslot_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr", + "nodeType": "YulIdentifier", + "src": "16468:80:1" + }, + "nodeType": "YulFunctionCall", + "src": "16468:87:1" + }, + "variables": [ + { + "name": "baseRef", + "nodeType": "YulTypedName", + "src": "16457:7:1", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "16564:21:1", + "value": { + "name": "baseRef", + "nodeType": "YulIdentifier", + "src": "16578:7:1" + }, + "variables": [ + { + "name": "srcPtr", + "nodeType": "YulTypedName", + "src": "16568:6:1", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "16654:399:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "16675:3:1" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "16684:4:1" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "16690:9:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "16680:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "16680:20:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "16668:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "16668:33:1" + }, + "nodeType": "YulExpressionStatement", + "src": "16668:33:1" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "16714:34:1", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "16741:6:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "16735:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "16735:13:1" + }, + "variables": [ + { + "name": "elementValue0", + "nodeType": "YulTypedName", + "src": "16718:13:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "16761:134:1", + "value": { + "arguments": [ + { + "name": "elementValue0", + "nodeType": "YulIdentifier", + "src": "16875:13:1" + }, + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "16890:4:1" + } + ], + "functionName": { + "name": "abi_encodeUpdatedPos_t_struct$_FinancialReport_$84_memory_ptr_to_t_struct$_FinancialReport_$84_memory_ptr", + "nodeType": "YulIdentifier", + "src": "16769:105:1" + }, + "nodeType": "YulFunctionCall", + "src": "16769:126:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "16761:4:1" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "16908:101:1", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "17002:6:1" + } + ], + "functionName": { + "name": "array_nextElement_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr", + "nodeType": "YulIdentifier", + "src": "16918:83:1" + }, + "nodeType": "YulFunctionCall", + "src": "16918:91:1" + }, + "variableNames": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "16908:6:1" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "17022:21:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "17033:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "17038:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "17029:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "17029:14:1" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "17022:3:1" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "16616:1:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "16619:6:1" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "16613:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "16613:13:1" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "16627:18:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "16629:14:1", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "16638:1:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16641:1:1", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "16634:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "16634:9:1" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "16629:1:1" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "16598:14:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "16600:10:1", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16609:1:1", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "16604:1:1", + "type": "" + } + ] + } + ] + }, + "src": "16594:459:1" + }, + { + "nodeType": "YulAssignment", + "src": "17062:11:1", + "value": { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "17069:4:1" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "17062:3:1" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "17082:10:1", + "value": { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "17089:3:1" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "17082:3:1" + } + ] + } + ] + }, + "name": "abi_encode_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr_to_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "16104:5:1", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "16111:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "16120:3:1", + "type": "" + } + ], + "src": "15939:1159:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "17314:287:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "17324:26:1", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "17336:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "17347:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "17332:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "17332:18:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "17324:4:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "17371:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "17382:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "17367:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "17367:17:1" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "17390:4:1" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "17396:9:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "17386:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "17386:20:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "17360:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "17360:47:1" + }, + "nodeType": "YulExpressionStatement", + "src": "17360:47:1" + }, + { + "nodeType": "YulAssignment", + "src": "17416:178:1", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "17580:6:1" + }, + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "17589:4:1" + } + ], + "functionName": { + "name": "abi_encode_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr_to_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "17424:155:1" + }, + "nodeType": "YulFunctionCall", + "src": "17424:170:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "17416:4:1" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "17286:9:1", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "17298:6:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "17309:4:1", + "type": "" + } + ], + "src": "17104:497:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "17696:28:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "17713:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "17716:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "17706:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "17706:12:1" + }, + "nodeType": "YulExpressionStatement", + "src": "17706:12:1" + } + ] + }, + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nodeType": "YulFunctionDefinition", + "src": "17607:117:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "17819:28:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "17836:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "17839:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "17829:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "17829:12:1" + }, + "nodeType": "YulExpressionStatement", + "src": "17829:12:1" + } + ] + }, + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nodeType": "YulFunctionDefinition", + "src": "17730:117:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "17881:152:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "17898:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "17901:77:1", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "17891:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "17891:88:1" + }, + "nodeType": "YulExpressionStatement", + "src": "17891:88:1" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "17995:1:1", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "17998:4:1", + "type": "", + "value": "0x41" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "17988:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "17988:15:1" + }, + "nodeType": "YulExpressionStatement", + "src": "17988:15:1" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18019:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18022:4:1", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "18012:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "18012:15:1" + }, + "nodeType": "YulExpressionStatement", + "src": "18012:15:1" + } + ] + }, + "name": "panic_error_0x41", + "nodeType": "YulFunctionDefinition", + "src": "17853:180:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "18082:238:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "18092:58:1", + "value": { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "18114:6:1" + }, + { + "arguments": [ + { + "name": "size", + "nodeType": "YulIdentifier", + "src": "18144:4:1" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nodeType": "YulIdentifier", + "src": "18122:21:1" + }, + "nodeType": "YulFunctionCall", + "src": "18122:27:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "18110:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "18110:40:1" + }, + "variables": [ + { + "name": "newFreePtr", + "nodeType": "YulTypedName", + "src": "18096:10:1", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "18261:22:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "18263:16:1" + }, + "nodeType": "YulFunctionCall", + "src": "18263:18:1" + }, + "nodeType": "YulExpressionStatement", + "src": "18263:18:1" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "18204:10:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18216:18:1", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "18201:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "18201:34:1" + }, + { + "arguments": [ + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "18240:10:1" + }, + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "18252:6:1" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "18237:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "18237:22:1" + } + ], + "functionName": { + "name": "or", + "nodeType": "YulIdentifier", + "src": "18198:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "18198:62:1" + }, + "nodeType": "YulIf", + "src": "18195:88:1" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18299:2:1", + "type": "", + "value": "64" + }, + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "18303:10:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "18292:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "18292:22:1" + }, + "nodeType": "YulExpressionStatement", + "src": "18292:22:1" + } + ] + }, + "name": "finalize_allocation", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "18068:6:1", + "type": "" + }, + { + "name": "size", + "nodeType": "YulTypedName", + "src": "18076:4:1", + "type": "" + } + ], + "src": "18039:281:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "18367:88:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "18377:30:1", + "value": { + "arguments": [], + "functionName": { + "name": "allocate_unbounded", + "nodeType": "YulIdentifier", + "src": "18387:18:1" + }, + "nodeType": "YulFunctionCall", + "src": "18387:20:1" + }, + "variableNames": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "18377:6:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "18436:6:1" + }, + { + "name": "size", + "nodeType": "YulIdentifier", + "src": "18444:4:1" + } + ], + "functionName": { + "name": "finalize_allocation", + "nodeType": "YulIdentifier", + "src": "18416:19:1" + }, + "nodeType": "YulFunctionCall", + "src": "18416:33:1" + }, + "nodeType": "YulExpressionStatement", + "src": "18416:33:1" + } + ] + }, + "name": "allocate_memory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "size", + "nodeType": "YulTypedName", + "src": "18351:4:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "18360:6:1", + "type": "" + } + ], + "src": "18326:129:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "18528:241:1", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "18633:22:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "18635:16:1" + }, + "nodeType": "YulFunctionCall", + "src": "18635:18:1" + }, + "nodeType": "YulExpressionStatement", + "src": "18635:18:1" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "18605:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18613:18:1", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "18602:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "18602:30:1" + }, + "nodeType": "YulIf", + "src": "18599:56:1" + }, + { + "nodeType": "YulAssignment", + "src": "18665:37:1", + "value": { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "18695:6:1" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nodeType": "YulIdentifier", + "src": "18673:21:1" + }, + "nodeType": "YulFunctionCall", + "src": "18673:29:1" + }, + "variableNames": [ + { + "name": "size", + "nodeType": "YulIdentifier", + "src": "18665:4:1" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "18739:23:1", + "value": { + "arguments": [ + { + "name": "size", + "nodeType": "YulIdentifier", + "src": "18751:4:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18757:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "18747:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "18747:15:1" + }, + "variableNames": [ + { + "name": "size", + "nodeType": "YulIdentifier", + "src": "18739:4:1" + } + ] + } + ] + }, + "name": "array_allocation_size_t_string_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "18512:6:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "size", + "nodeType": "YulTypedName", + "src": "18523:4:1", + "type": "" + } + ], + "src": "18461:308:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "18826:103:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "18849:3:1" + }, + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "18854:3:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "18859:6:1" + } + ], + "functionName": { + "name": "calldatacopy", + "nodeType": "YulIdentifier", + "src": "18836:12:1" + }, + "nodeType": "YulFunctionCall", + "src": "18836:30:1" + }, + "nodeType": "YulExpressionStatement", + "src": "18836:30:1" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "18907:3:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "18912:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "18903:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "18903:16:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18921:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "18896:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "18896:27:1" + }, + "nodeType": "YulExpressionStatement", + "src": "18896:27:1" + } + ] + }, + "name": "copy_calldata_to_memory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nodeType": "YulTypedName", + "src": "18808:3:1", + "type": "" + }, + { + "name": "dst", + "nodeType": "YulTypedName", + "src": "18813:3:1", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "18818:6:1", + "type": "" + } + ], + "src": "18775:154:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "19019:328:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "19029:75:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "19096:6:1" + } + ], + "functionName": { + "name": "array_allocation_size_t_string_memory_ptr", + "nodeType": "YulIdentifier", + "src": "19054:41:1" + }, + "nodeType": "YulFunctionCall", + "src": "19054:49:1" + } + ], + "functionName": { + "name": "allocate_memory", + "nodeType": "YulIdentifier", + "src": "19038:15:1" + }, + "nodeType": "YulFunctionCall", + "src": "19038:66:1" + }, + "variableNames": [ + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "19029:5:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "19120:5:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "19127:6:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "19113:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "19113:21:1" + }, + "nodeType": "YulExpressionStatement", + "src": "19113:21:1" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "19143:27:1", + "value": { + "arguments": [ + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "19158:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "19165:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "19154:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "19154:16:1" + }, + "variables": [ + { + "name": "dst", + "nodeType": "YulTypedName", + "src": "19147:3:1", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "19208:83:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nodeType": "YulIdentifier", + "src": "19210:77:1" + }, + "nodeType": "YulFunctionCall", + "src": "19210:79:1" + }, + "nodeType": "YulExpressionStatement", + "src": "19210:79:1" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "19189:3:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "19194:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "19185:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "19185:16:1" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "19203:3:1" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "19182:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "19182:25:1" + }, + "nodeType": "YulIf", + "src": "19179:112:1" + }, + { + "expression": { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "19324:3:1" + }, + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "19329:3:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "19334:6:1" + } + ], + "functionName": { + "name": "copy_calldata_to_memory", + "nodeType": "YulIdentifier", + "src": "19300:23:1" + }, + "nodeType": "YulFunctionCall", + "src": "19300:41:1" + }, + "nodeType": "YulExpressionStatement", + "src": "19300:41:1" + } + ] + }, + "name": "abi_decode_available_length_t_string_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nodeType": "YulTypedName", + "src": "18992:3:1", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "18997:6:1", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "19005:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nodeType": "YulTypedName", + "src": "19013:5:1", + "type": "" + } + ], + "src": "18935:412:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "19429:278:1", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "19478:83:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nodeType": "YulIdentifier", + "src": "19480:77:1" + }, + "nodeType": "YulFunctionCall", + "src": "19480:79:1" + }, + "nodeType": "YulExpressionStatement", + "src": "19480:79:1" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "19457:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "19465:4:1", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "19453:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "19453:17:1" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "19472:3:1" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "19449:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "19449:27:1" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "19442:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "19442:35:1" + }, + "nodeType": "YulIf", + "src": "19439:122:1" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "19570:34:1", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "19597:6:1" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "19584:12:1" + }, + "nodeType": "YulFunctionCall", + "src": "19584:20:1" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "19574:6:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "19613:88:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "19674:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "19682:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "19670:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "19670:17:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "19689:6:1" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "19697:3:1" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_string_memory_ptr", + "nodeType": "YulIdentifier", + "src": "19622:47:1" + }, + "nodeType": "YulFunctionCall", + "src": "19622:79:1" + }, + "variableNames": [ + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "19613:5:1" + } + ] + } + ] + }, + "name": "abi_decode_t_string_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "19407:6:1", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "19415:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nodeType": "YulTypedName", + "src": "19423:5:1", + "type": "" + } + ], + "src": "19367:340:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "19877:1287:1", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "19924:83:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nodeType": "YulIdentifier", + "src": "19926:77:1" + }, + "nodeType": "YulFunctionCall", + "src": "19926:79:1" + }, + "nodeType": "YulExpressionStatement", + "src": "19926:79:1" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "19898:7:1" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "19907:9:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "19894:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "19894:23:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "19919:3:1", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "19890:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "19890:33:1" + }, + "nodeType": "YulIf", + "src": "19887:120:1" + }, + { + "nodeType": "YulBlock", + "src": "20017:117:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "20032:15:1", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "20046:1:1", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "20036:6:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "20061:63:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "20096:9:1" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "20107:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "20092:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "20092:22:1" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "20116:7:1" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nodeType": "YulIdentifier", + "src": "20071:20:1" + }, + "nodeType": "YulFunctionCall", + "src": "20071:53:1" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "20061:6:1" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "20144:288:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "20159:46:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "20190:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "20201:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "20186:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "20186:18:1" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "20173:12:1" + }, + "nodeType": "YulFunctionCall", + "src": "20173:32:1" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "20163:6:1", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "20252:83:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nodeType": "YulIdentifier", + "src": "20254:77:1" + }, + "nodeType": "YulFunctionCall", + "src": "20254:79:1" + }, + "nodeType": "YulExpressionStatement", + "src": "20254:79:1" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "20224:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "20232:18:1", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "20221:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "20221:30:1" + }, + "nodeType": "YulIf", + "src": "20218:117:1" + }, + { + "nodeType": "YulAssignment", + "src": "20349:73:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "20394:9:1" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "20405:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "20390:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "20390:22:1" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "20414:7:1" + } + ], + "functionName": { + "name": "abi_decode_t_string_memory_ptr", + "nodeType": "YulIdentifier", + "src": "20359:30:1" + }, + "nodeType": "YulFunctionCall", + "src": "20359:63:1" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "20349:6:1" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "20442:288:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "20457:46:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "20488:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "20499:2:1", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "20484:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "20484:18:1" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "20471:12:1" + }, + "nodeType": "YulFunctionCall", + "src": "20471:32:1" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "20461:6:1", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "20550:83:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nodeType": "YulIdentifier", + "src": "20552:77:1" + }, + "nodeType": "YulFunctionCall", + "src": "20552:79:1" + }, + "nodeType": "YulExpressionStatement", + "src": "20552:79:1" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "20522:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "20530:18:1", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "20519:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "20519:30:1" + }, + "nodeType": "YulIf", + "src": "20516:117:1" + }, + { + "nodeType": "YulAssignment", + "src": "20647:73:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "20692:9:1" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "20703:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "20688:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "20688:22:1" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "20712:7:1" + } + ], + "functionName": { + "name": "abi_decode_t_string_memory_ptr", + "nodeType": "YulIdentifier", + "src": "20657:30:1" + }, + "nodeType": "YulFunctionCall", + "src": "20657:63:1" + }, + "variableNames": [ + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "20647:6:1" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "20740:288:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "20755:46:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "20786:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "20797:2:1", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "20782:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "20782:18:1" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "20769:12:1" + }, + "nodeType": "YulFunctionCall", + "src": "20769:32:1" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "20759:6:1", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "20848:83:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nodeType": "YulIdentifier", + "src": "20850:77:1" + }, + "nodeType": "YulFunctionCall", + "src": "20850:79:1" + }, + "nodeType": "YulExpressionStatement", + "src": "20850:79:1" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "20820:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "20828:18:1", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "20817:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "20817:30:1" + }, + "nodeType": "YulIf", + "src": "20814:117:1" + }, + { + "nodeType": "YulAssignment", + "src": "20945:73:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "20990:9:1" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "21001:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "20986:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "20986:22:1" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "21010:7:1" + } + ], + "functionName": { + "name": "abi_decode_t_string_memory_ptr", + "nodeType": "YulIdentifier", + "src": "20955:30:1" + }, + "nodeType": "YulFunctionCall", + "src": "20955:63:1" + }, + "variableNames": [ + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "20945:6:1" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "21038:119:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "21053:17:1", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "21067:3:1", + "type": "", + "value": "128" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "21057:6:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "21084:63:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "21119:9:1" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "21130:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "21115:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "21115:22:1" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "21139:7:1" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nodeType": "YulIdentifier", + "src": "21094:20:1" + }, + "nodeType": "YulFunctionCall", + "src": "21094:53:1" + }, + "variableNames": [ + { + "name": "value4", + "nodeType": "YulIdentifier", + "src": "21084:6:1" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_string_memory_ptrt_string_memory_ptrt_string_memory_ptrt_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "19815:9:1", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "19826:7:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "19838:6:1", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "19846:6:1", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "19854:6:1", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "19862:6:1", + "type": "" + }, + { + "name": "value4", + "nodeType": "YulTypedName", + "src": "19870:6:1", + "type": "" + } + ], + "src": "19713:1451:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "21253:391:1", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "21299:83:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nodeType": "YulIdentifier", + "src": "21301:77:1" + }, + "nodeType": "YulFunctionCall", + "src": "21301:79:1" + }, + "nodeType": "YulExpressionStatement", + "src": "21301:79:1" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "21274:7:1" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "21283:9:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "21270:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "21270:23:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "21295:2:1", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "21266:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "21266:32:1" + }, + "nodeType": "YulIf", + "src": "21263:119:1" + }, + { + "nodeType": "YulBlock", + "src": "21392:117:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "21407:15:1", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "21421:1:1", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "21411:6:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "21436:63:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "21471:9:1" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "21482:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "21467:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "21467:22:1" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "21491:7:1" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nodeType": "YulIdentifier", + "src": "21446:20:1" + }, + "nodeType": "YulFunctionCall", + "src": "21446:53:1" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "21436:6:1" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "21519:118:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "21534:16:1", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "21548:2:1", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "21538:6:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "21564:63:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "21599:9:1" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "21610:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "21595:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "21595:22:1" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "21619:7:1" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nodeType": "YulIdentifier", + "src": "21574:20:1" + }, + "nodeType": "YulFunctionCall", + "src": "21574:53:1" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "21564:6:1" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "21215:9:1", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "21226:7:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "21238:6:1", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "21246:6:1", + "type": "" + } + ], + "src": "21170:474:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "21760:689:1", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "21806:83:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nodeType": "YulIdentifier", + "src": "21808:77:1" + }, + "nodeType": "YulFunctionCall", + "src": "21808:79:1" + }, + "nodeType": "YulExpressionStatement", + "src": "21808:79:1" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "21781:7:1" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "21790:9:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "21777:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "21777:23:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "21802:2:1", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "21773:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "21773:32:1" + }, + "nodeType": "YulIf", + "src": "21770:119:1" + }, + { + "nodeType": "YulBlock", + "src": "21899:117:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "21914:15:1", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "21928:1:1", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "21918:6:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "21943:63:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "21978:9:1" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "21989:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "21974:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "21974:22:1" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "21998:7:1" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nodeType": "YulIdentifier", + "src": "21953:20:1" + }, + "nodeType": "YulFunctionCall", + "src": "21953:53:1" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "21943:6:1" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "22026:288:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "22041:46:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "22072:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "22083:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "22068:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "22068:18:1" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "22055:12:1" + }, + "nodeType": "YulFunctionCall", + "src": "22055:32:1" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "22045:6:1", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "22134:83:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nodeType": "YulIdentifier", + "src": "22136:77:1" + }, + "nodeType": "YulFunctionCall", + "src": "22136:79:1" + }, + "nodeType": "YulExpressionStatement", + "src": "22136:79:1" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "22106:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "22114:18:1", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "22103:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "22103:30:1" + }, + "nodeType": "YulIf", + "src": "22100:117:1" + }, + { + "nodeType": "YulAssignment", + "src": "22231:73:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "22276:9:1" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "22287:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "22272:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "22272:22:1" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "22296:7:1" + } + ], + "functionName": { + "name": "abi_decode_t_string_memory_ptr", + "nodeType": "YulIdentifier", + "src": "22241:30:1" + }, + "nodeType": "YulFunctionCall", + "src": "22241:63:1" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "22231:6:1" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "22324:118:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "22339:16:1", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "22353:2:1", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "22343:6:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "22369:63:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "22404:9:1" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "22415:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "22400:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "22400:22:1" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "22424:7:1" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nodeType": "YulIdentifier", + "src": "22379:20:1" + }, + "nodeType": "YulFunctionCall", + "src": "22379:53:1" + }, + "variableNames": [ + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "22369:6:1" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_string_memory_ptrt_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "21714:9:1", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "21725:7:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "21737:6:1", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "21745:6:1", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "21753:6:1", + "type": "" + } + ], + "src": "21650:799:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "22529:40:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "22540:22:1", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "22556:5:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "22550:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "22550:12:1" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "22540:6:1" + } + ] + } + ] + }, + "name": "array_length_t_array$_t_uint256_$dyn_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "22512:5:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "22522:6:1", + "type": "" + } + ], + "src": "22455:114:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "22686:73:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "22703:3:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "22708:6:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "22696:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "22696:19:1" + }, + "nodeType": "YulExpressionStatement", + "src": "22696:19:1" + }, + { + "nodeType": "YulAssignment", + "src": "22724:29:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "22743:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "22748:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "22739:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "22739:14:1" + }, + "variableNames": [ + { + "name": "updated_pos", + "nodeType": "YulIdentifier", + "src": "22724:11:1" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_array$_t_uint256_$dyn_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "22658:3:1", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "22663:6:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nodeType": "YulTypedName", + "src": "22674:11:1", + "type": "" + } + ], + "src": "22575:184:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "22837:60:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "22847:11:1", + "value": { + "name": "ptr", + "nodeType": "YulIdentifier", + "src": "22855:3:1" + }, + "variableNames": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "22847:4:1" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "22868:22:1", + "value": { + "arguments": [ + { + "name": "ptr", + "nodeType": "YulIdentifier", + "src": "22880:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "22885:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "22876:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "22876:14:1" + }, + "variableNames": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "22868:4:1" + } + ] + } + ] + }, + "name": "array_dataslot_t_array$_t_uint256_$dyn_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nodeType": "YulTypedName", + "src": "22824:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "22832:4:1", + "type": "" + } + ], + "src": "22765:132:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "22983:99:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "23027:6:1" + }, + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "23035:3:1" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256", + "nodeType": "YulIdentifier", + "src": "22993:33:1" + }, + "nodeType": "YulFunctionCall", + "src": "22993:46:1" + }, + "nodeType": "YulExpressionStatement", + "src": "22993:46:1" + }, + { + "nodeType": "YulAssignment", + "src": "23048:28:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "23066:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "23071:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "23062:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "23062:14:1" + }, + "variableNames": [ + { + "name": "updatedPos", + "nodeType": "YulIdentifier", + "src": "23048:10:1" + } + ] + } + ] + }, + "name": "abi_encodeUpdatedPos_t_uint256_to_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "22956:6:1", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "22964:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updatedPos", + "nodeType": "YulTypedName", + "src": "22972:10:1", + "type": "" + } + ], + "src": "22903:179:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "23163:38:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "23173:22:1", + "value": { + "arguments": [ + { + "name": "ptr", + "nodeType": "YulIdentifier", + "src": "23185:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "23190:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "23181:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "23181:14:1" + }, + "variableNames": [ + { + "name": "next", + "nodeType": "YulIdentifier", + "src": "23173:4:1" + } + ] + } + ] + }, + "name": "array_nextElement_t_array$_t_uint256_$dyn_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nodeType": "YulTypedName", + "src": "23150:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "next", + "nodeType": "YulTypedName", + "src": "23158:4:1", + "type": "" + } + ], + "src": "23088:113:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "23361:608:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "23371:68:1", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "23433:5:1" + } + ], + "functionName": { + "name": "array_length_t_array$_t_uint256_$dyn_memory_ptr", + "nodeType": "YulIdentifier", + "src": "23385:47:1" + }, + "nodeType": "YulFunctionCall", + "src": "23385:54:1" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "23375:6:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "23448:93:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "23529:3:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "23534:6:1" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_array$_t_uint256_$dyn_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "23455:73:1" + }, + "nodeType": "YulFunctionCall", + "src": "23455:86:1" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "23448:3:1" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "23550:71:1", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "23615:5:1" + } + ], + "functionName": { + "name": "array_dataslot_t_array$_t_uint256_$dyn_memory_ptr", + "nodeType": "YulIdentifier", + "src": "23565:49:1" + }, + "nodeType": "YulFunctionCall", + "src": "23565:56:1" + }, + "variables": [ + { + "name": "baseRef", + "nodeType": "YulTypedName", + "src": "23554:7:1", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "23630:21:1", + "value": { + "name": "baseRef", + "nodeType": "YulIdentifier", + "src": "23644:7:1" + }, + "variables": [ + { + "name": "srcPtr", + "nodeType": "YulTypedName", + "src": "23634:6:1", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "23720:224:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "23734:34:1", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "23761:6:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "23755:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "23755:13:1" + }, + "variables": [ + { + "name": "elementValue0", + "nodeType": "YulTypedName", + "src": "23738:13:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "23781:70:1", + "value": { + "arguments": [ + { + "name": "elementValue0", + "nodeType": "YulIdentifier", + "src": "23832:13:1" + }, + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "23847:3:1" + } + ], + "functionName": { + "name": "abi_encodeUpdatedPos_t_uint256_to_t_uint256", + "nodeType": "YulIdentifier", + "src": "23788:43:1" + }, + "nodeType": "YulFunctionCall", + "src": "23788:63:1" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "23781:3:1" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "23864:70:1", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "23927:6:1" + } + ], + "functionName": { + "name": "array_nextElement_t_array$_t_uint256_$dyn_memory_ptr", + "nodeType": "YulIdentifier", + "src": "23874:52:1" + }, + "nodeType": "YulFunctionCall", + "src": "23874:60:1" + }, + "variableNames": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "23864:6:1" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "23682:1:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "23685:6:1" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "23679:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "23679:13:1" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "23693:18:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "23695:14:1", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "23704:1:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "23707:1:1", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "23700:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "23700:9:1" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "23695:1:1" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "23664:14:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "23666:10:1", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "23675:1:1", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "23670:1:1", + "type": "" + } + ] + } + ] + }, + "src": "23660:284:1" + }, + { + "nodeType": "YulAssignment", + "src": "23953:10:1", + "value": { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "23960:3:1" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "23953:3:1" + } + ] + } + ] + }, + "name": "abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "23340:5:1", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "23347:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "23356:3:1", + "type": "" + } + ], + "src": "23237:732:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "24123:225:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "24133:26:1", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "24145:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "24156:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "24141:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "24141:18:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "24133:4:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "24180:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "24191:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "24176:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "24176:17:1" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "24199:4:1" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "24205:9:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "24195:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "24195:20:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "24169:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "24169:47:1" + }, + "nodeType": "YulExpressionStatement", + "src": "24169:47:1" + }, + { + "nodeType": "YulAssignment", + "src": "24225:116:1", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "24327:6:1" + }, + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "24336:4:1" + } + ], + "functionName": { + "name": "abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "24233:93:1" + }, + "nodeType": "YulFunctionCall", + "src": "24233:108:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "24225:4:1" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_array$_t_uint256_$dyn_memory_ptr__to_t_array$_t_uint256_$dyn_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "24095:9:1", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "24107:6:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "24118:4:1", + "type": "" + } + ], + "src": "23975:373:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "24419:53:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "24436:3:1" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "24459:5:1" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "24441:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "24441:24:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "24429:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "24429:37:1" + }, + "nodeType": "YulExpressionStatement", + "src": "24429:37:1" + } + ] + }, + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "24407:5:1", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "24414:3:1", + "type": "" + } + ], + "src": "24354:118:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "24576:124:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "24586:26:1", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "24598:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "24609:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "24594:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "24594:18:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "24586:4:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "24666:6:1" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "24679:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "24690:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "24675:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "24675:17:1" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nodeType": "YulIdentifier", + "src": "24622:43:1" + }, + "nodeType": "YulFunctionCall", + "src": "24622:71:1" + }, + "nodeType": "YulExpressionStatement", + "src": "24622:71:1" + } + ] + }, + "name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "24548:9:1", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "24560:6:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "24571:4:1", + "type": "" + } + ], + "src": "24478:222:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "24820:194:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "24830:26:1", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "24842:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "24853:2:1", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "24838:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "24838:18:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "24830:4:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "24904:6:1" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "24917:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "24928:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "24913:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "24913:17:1" + } + ], + "functionName": { + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nodeType": "YulIdentifier", + "src": "24866:37:1" + }, + "nodeType": "YulFunctionCall", + "src": "24866:65:1" + }, + "nodeType": "YulExpressionStatement", + "src": "24866:65:1" + }, + { + "expression": { + "arguments": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "24979:6:1" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "24992:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "25003:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "24988:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "24988:18:1" + } + ], + "functionName": { + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nodeType": "YulIdentifier", + "src": "24941:37:1" + }, + "nodeType": "YulFunctionCall", + "src": "24941:66:1" + }, + "nodeType": "YulExpressionStatement", + "src": "24941:66:1" + } + ] + }, + "name": "abi_encode_tuple_t_bool_t_bool__to_t_bool_t_bool__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "24784:9:1", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "24796:6:1", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "24804:6:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "24815:4:1", + "type": "" + } + ], + "src": "24706:308:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "25131:73:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "25148:3:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "25153:6:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "25141:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "25141:19:1" + }, + "nodeType": "YulExpressionStatement", + "src": "25141:19:1" + }, + { + "nodeType": "YulAssignment", + "src": "25169:29:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "25188:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "25193:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "25184:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "25184:14:1" + }, + "variableNames": [ + { + "name": "updated_pos", + "nodeType": "YulIdentifier", + "src": "25169:11:1" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_array$_t_address_$dyn_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "25103:3:1", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "25108:6:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nodeType": "YulTypedName", + "src": "25119:11:1", + "type": "" + } + ], + "src": "25020:184:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "25364:608:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "25374:68:1", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "25436:5:1" + } + ], + "functionName": { + "name": "array_length_t_array$_t_address_$dyn_memory_ptr", + "nodeType": "YulIdentifier", + "src": "25388:47:1" + }, + "nodeType": "YulFunctionCall", + "src": "25388:54:1" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "25378:6:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "25451:93:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "25532:3:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "25537:6:1" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_array$_t_address_$dyn_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "25458:73:1" + }, + "nodeType": "YulFunctionCall", + "src": "25458:86:1" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "25451:3:1" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "25553:71:1", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "25618:5:1" + } + ], + "functionName": { + "name": "array_dataslot_t_array$_t_address_$dyn_memory_ptr", + "nodeType": "YulIdentifier", + "src": "25568:49:1" + }, + "nodeType": "YulFunctionCall", + "src": "25568:56:1" + }, + "variables": [ + { + "name": "baseRef", + "nodeType": "YulTypedName", + "src": "25557:7:1", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "25633:21:1", + "value": { + "name": "baseRef", + "nodeType": "YulIdentifier", + "src": "25647:7:1" + }, + "variables": [ + { + "name": "srcPtr", + "nodeType": "YulTypedName", + "src": "25637:6:1", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "25723:224:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "25737:34:1", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "25764:6:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "25758:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "25758:13:1" + }, + "variables": [ + { + "name": "elementValue0", + "nodeType": "YulTypedName", + "src": "25741:13:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "25784:70:1", + "value": { + "arguments": [ + { + "name": "elementValue0", + "nodeType": "YulIdentifier", + "src": "25835:13:1" + }, + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "25850:3:1" + } + ], + "functionName": { + "name": "abi_encodeUpdatedPos_t_address_to_t_address", + "nodeType": "YulIdentifier", + "src": "25791:43:1" + }, + "nodeType": "YulFunctionCall", + "src": "25791:63:1" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "25784:3:1" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "25867:70:1", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "25930:6:1" + } + ], + "functionName": { + "name": "array_nextElement_t_array$_t_address_$dyn_memory_ptr", + "nodeType": "YulIdentifier", + "src": "25877:52:1" + }, + "nodeType": "YulFunctionCall", + "src": "25877:60:1" + }, + "variableNames": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "25867:6:1" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "25685:1:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "25688:6:1" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "25682:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "25682:13:1" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "25696:18:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "25698:14:1", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "25707:1:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "25710:1:1", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "25703:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "25703:9:1" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "25698:1:1" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "25667:14:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "25669:10:1", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "25678:1:1", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "25673:1:1", + "type": "" + } + ] + } + ] + }, + "src": "25663:284:1" + }, + { + "nodeType": "YulAssignment", + "src": "25956:10:1", + "value": { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "25963:3:1" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "25956:3:1" + } + ] + } + ] + }, + "name": "abi_encode_t_array$_t_address_$dyn_memory_ptr_to_t_array$_t_address_$dyn_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "25343:5:1", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "25350:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "25359:3:1", + "type": "" + } + ], + "src": "25240:732:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "26126:225:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "26136:26:1", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "26148:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "26159:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "26144:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "26144:18:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "26136:4:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "26183:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "26194:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "26179:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "26179:17:1" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "26202:4:1" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "26208:9:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "26198:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "26198:20:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "26172:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "26172:47:1" + }, + "nodeType": "YulExpressionStatement", + "src": "26172:47:1" + }, + { + "nodeType": "YulAssignment", + "src": "26228:116:1", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "26330:6:1" + }, + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "26339:4:1" + } + ], + "functionName": { + "name": "abi_encode_t_array$_t_address_$dyn_memory_ptr_to_t_array$_t_address_$dyn_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "26236:93:1" + }, + "nodeType": "YulFunctionCall", + "src": "26236:108:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "26228:4:1" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_array$_t_address_$dyn_memory_ptr__to_t_array$_t_address_$dyn_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "26098:9:1", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "26110:6:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "26121:4:1", + "type": "" + } + ], + "src": "25978:373:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "26494:988:1", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "26541:83:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nodeType": "YulIdentifier", + "src": "26543:77:1" + }, + "nodeType": "YulFunctionCall", + "src": "26543:79:1" + }, + "nodeType": "YulExpressionStatement", + "src": "26543:79:1" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "26515:7:1" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "26524:9:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "26511:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "26511:23:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "26536:3:1", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "26507:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "26507:33:1" + }, + "nodeType": "YulIf", + "src": "26504:120:1" + }, + { + "nodeType": "YulBlock", + "src": "26634:117:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "26649:15:1", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "26663:1:1", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "26653:6:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "26678:63:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "26713:9:1" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "26724:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "26709:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "26709:22:1" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "26733:7:1" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nodeType": "YulIdentifier", + "src": "26688:20:1" + }, + "nodeType": "YulFunctionCall", + "src": "26688:53:1" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "26678:6:1" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "26761:288:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "26776:46:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "26807:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "26818:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "26803:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "26803:18:1" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "26790:12:1" + }, + "nodeType": "YulFunctionCall", + "src": "26790:32:1" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "26780:6:1", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "26869:83:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nodeType": "YulIdentifier", + "src": "26871:77:1" + }, + "nodeType": "YulFunctionCall", + "src": "26871:79:1" + }, + "nodeType": "YulExpressionStatement", + "src": "26871:79:1" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "26841:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "26849:18:1", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "26838:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "26838:30:1" + }, + "nodeType": "YulIf", + "src": "26835:117:1" + }, + { + "nodeType": "YulAssignment", + "src": "26966:73:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "27011:9:1" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "27022:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "27007:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "27007:22:1" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "27031:7:1" + } + ], + "functionName": { + "name": "abi_decode_t_string_memory_ptr", + "nodeType": "YulIdentifier", + "src": "26976:30:1" + }, + "nodeType": "YulFunctionCall", + "src": "26976:63:1" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "26966:6:1" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "27059:288:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "27074:46:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "27105:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "27116:2:1", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "27101:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "27101:18:1" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "27088:12:1" + }, + "nodeType": "YulFunctionCall", + "src": "27088:32:1" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "27078:6:1", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "27167:83:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nodeType": "YulIdentifier", + "src": "27169:77:1" + }, + "nodeType": "YulFunctionCall", + "src": "27169:79:1" + }, + "nodeType": "YulExpressionStatement", + "src": "27169:79:1" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "27139:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "27147:18:1", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "27136:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "27136:30:1" + }, + "nodeType": "YulIf", + "src": "27133:117:1" + }, + { + "nodeType": "YulAssignment", + "src": "27264:73:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "27309:9:1" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "27320:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "27305:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "27305:22:1" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "27329:7:1" + } + ], + "functionName": { + "name": "abi_decode_t_string_memory_ptr", + "nodeType": "YulIdentifier", + "src": "27274:30:1" + }, + "nodeType": "YulFunctionCall", + "src": "27274:63:1" + }, + "variableNames": [ + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "27264:6:1" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "27357:118:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "27372:16:1", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "27386:2:1", + "type": "", + "value": "96" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "27376:6:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "27402:63:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "27437:9:1" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "27448:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "27433:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "27433:22:1" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "27457:7:1" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nodeType": "YulIdentifier", + "src": "27412:20:1" + }, + "nodeType": "YulFunctionCall", + "src": "27412:53:1" + }, + "variableNames": [ + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "27402:6:1" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_string_memory_ptrt_string_memory_ptrt_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "26440:9:1", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "26451:7:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "26463:6:1", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "26471:6:1", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "26479:6:1", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "26487:6:1", + "type": "" + } + ], + "src": "26357:1125:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "27553:53:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "27570:3:1" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "27593:5:1" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nodeType": "YulIdentifier", + "src": "27575:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "27575:24:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "27563:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "27563:37:1" + }, + "nodeType": "YulExpressionStatement", + "src": "27563:37:1" + } + ] + }, + "name": "abi_encode_t_address_to_t_address_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "27541:5:1", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "27548:3:1", + "type": "" + } + ], + "src": "27488:118:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "27710:124:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "27720:26:1", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "27732:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "27743:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "27728:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "27728:18:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "27720:4:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "27800:6:1" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "27813:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "27824:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "27809:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "27809:17:1" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nodeType": "YulIdentifier", + "src": "27756:43:1" + }, + "nodeType": "YulFunctionCall", + "src": "27756:71:1" + }, + "nodeType": "YulExpressionStatement", + "src": "27756:71:1" + } + ] + }, + "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "27682:9:1", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "27694:6:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "27705:4:1", + "type": "" + } + ], + "src": "27612:222:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "27936:73:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "27953:3:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "27958:6:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "27946:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "27946:19:1" + }, + "nodeType": "YulExpressionStatement", + "src": "27946:19:1" + }, + { + "nodeType": "YulAssignment", + "src": "27974:29:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "27993:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "27998:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "27989:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "27989:14:1" + }, + "variableNames": [ + { + "name": "updated_pos", + "nodeType": "YulIdentifier", + "src": "27974:11:1" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "27908:3:1", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "27913:6:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nodeType": "YulTypedName", + "src": "27924:11:1", + "type": "" + } + ], + "src": "27840:169:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "28121:117:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "28143:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "28151:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "28139:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "28139:14:1" + }, + { + "hexValue": "4f7267616e697a6174696f6e206164647265737320646f6573206e6f74206578", + "kind": "string", + "nodeType": "YulLiteral", + "src": "28155:34:1", + "type": "", + "value": "Organization address does not ex" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "28132:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "28132:58:1" + }, + "nodeType": "YulExpressionStatement", + "src": "28132:58:1" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "28211:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "28219:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "28207:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "28207:15:1" + }, + { + "hexValue": "69737421", + "kind": "string", + "nodeType": "YulLiteral", + "src": "28224:6:1", + "type": "", + "value": "ist!" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "28200:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "28200:31:1" + }, + "nodeType": "YulExpressionStatement", + "src": "28200:31:1" + } + ] + }, + "name": "store_literal_in_memory_ddeb0b25a32bdbd6903219d580ec164d518abe435832e90b114c90315c52a2cf", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "28113:6:1", + "type": "" + } + ], + "src": "28015:223:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "28390:220:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "28400:74:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "28466:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "28471:2:1", + "type": "", + "value": "36" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "28407:58:1" + }, + "nodeType": "YulFunctionCall", + "src": "28407:67:1" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "28400:3:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "28572:3:1" + } + ], + "functionName": { + "name": "store_literal_in_memory_ddeb0b25a32bdbd6903219d580ec164d518abe435832e90b114c90315c52a2cf", + "nodeType": "YulIdentifier", + "src": "28483:88:1" + }, + "nodeType": "YulFunctionCall", + "src": "28483:93:1" + }, + "nodeType": "YulExpressionStatement", + "src": "28483:93:1" + }, + { + "nodeType": "YulAssignment", + "src": "28585:19:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "28596:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "28601:2:1", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "28592:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "28592:12:1" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "28585:3:1" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_ddeb0b25a32bdbd6903219d580ec164d518abe435832e90b114c90315c52a2cf_to_t_string_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "28378:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "28386:3:1", + "type": "" + } + ], + "src": "28244:366:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "28787:248:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "28797:26:1", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "28809:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "28820:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "28805:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "28805:18:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "28797:4:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "28844:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "28855:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "28840:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "28840:17:1" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "28863:4:1" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "28869:9:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "28859:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "28859:20:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "28833:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "28833:47:1" + }, + "nodeType": "YulExpressionStatement", + "src": "28833:47:1" + }, + { + "nodeType": "YulAssignment", + "src": "28889:139:1", + "value": { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "29023:4:1" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_ddeb0b25a32bdbd6903219d580ec164d518abe435832e90b114c90315c52a2cf_to_t_string_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "28897:124:1" + }, + "nodeType": "YulFunctionCall", + "src": "28897:131:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "28889:4:1" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_ddeb0b25a32bdbd6903219d580ec164d518abe435832e90b114c90315c52a2cf__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "28767:9:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "28782:4:1", + "type": "" + } + ], + "src": "28616:419:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "29147:74:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "29169:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "29177:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "29165:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "29165:14:1" + }, + { + "hexValue": "4f7267616e697a6174696f6e20616c726561647920766572696669656421", + "kind": "string", + "nodeType": "YulLiteral", + "src": "29181:32:1", + "type": "", + "value": "Organization already verified!" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "29158:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "29158:56:1" + }, + "nodeType": "YulExpressionStatement", + "src": "29158:56:1" + } + ] + }, + "name": "store_literal_in_memory_53664b562d96b321f827bfb375320c905b5c20116fabd3735d276655e7a84701", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "29139:6:1", + "type": "" + } + ], + "src": "29041:180:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "29373:220:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "29383:74:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "29449:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "29454:2:1", + "type": "", + "value": "30" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "29390:58:1" + }, + "nodeType": "YulFunctionCall", + "src": "29390:67:1" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "29383:3:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "29555:3:1" + } + ], + "functionName": { + "name": "store_literal_in_memory_53664b562d96b321f827bfb375320c905b5c20116fabd3735d276655e7a84701", + "nodeType": "YulIdentifier", + "src": "29466:88:1" + }, + "nodeType": "YulFunctionCall", + "src": "29466:93:1" + }, + "nodeType": "YulExpressionStatement", + "src": "29466:93:1" + }, + { + "nodeType": "YulAssignment", + "src": "29568:19:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "29579:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "29584:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "29575:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "29575:12:1" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "29568:3:1" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_53664b562d96b321f827bfb375320c905b5c20116fabd3735d276655e7a84701_to_t_string_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "29361:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "29369:3:1", + "type": "" + } + ], + "src": "29227:366:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "29770:248:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "29780:26:1", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "29792:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "29803:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "29788:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "29788:18:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "29780:4:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "29827:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "29838:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "29823:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "29823:17:1" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "29846:4:1" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "29852:9:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "29842:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "29842:20:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "29816:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "29816:47:1" + }, + "nodeType": "YulExpressionStatement", + "src": "29816:47:1" + }, + { + "nodeType": "YulAssignment", + "src": "29872:139:1", + "value": { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "30006:4:1" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_53664b562d96b321f827bfb375320c905b5c20116fabd3735d276655e7a84701_to_t_string_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "29880:124:1" + }, + "nodeType": "YulFunctionCall", + "src": "29880:131:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "29872:4:1" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_53664b562d96b321f827bfb375320c905b5c20116fabd3735d276655e7a84701__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "29750:9:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "29765:4:1", + "type": "" + } + ], + "src": "29599:419:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "30130:139:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "30152:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "30160:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "30148:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "30148:14:1" + }, + { + "hexValue": "566f746572206f7267616e697a6174696f6e206973206e6f7420766572696669", + "kind": "string", + "nodeType": "YulLiteral", + "src": "30164:34:1", + "type": "", + "value": "Voter organization is not verifi" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "30141:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "30141:58:1" + }, + "nodeType": "YulExpressionStatement", + "src": "30141:58:1" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "30220:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "30228:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "30216:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "30216:15:1" + }, + { + "hexValue": "65642c206e6f74207065726d697474656420746f20766f746521", + "kind": "string", + "nodeType": "YulLiteral", + "src": "30233:28:1", + "type": "", + "value": "ed, not permitted to vote!" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "30209:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "30209:53:1" + }, + "nodeType": "YulExpressionStatement", + "src": "30209:53:1" + } + ] + }, + "name": "store_literal_in_memory_a8c8730adc0a679cd4a5e2b2364d02c0d62620d7a5cf6d44281730f36a7832c1", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "30122:6:1", + "type": "" + } + ], + "src": "30024:245:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "30421:220:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "30431:74:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "30497:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "30502:2:1", + "type": "", + "value": "58" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "30438:58:1" + }, + "nodeType": "YulFunctionCall", + "src": "30438:67:1" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "30431:3:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "30603:3:1" + } + ], + "functionName": { + "name": "store_literal_in_memory_a8c8730adc0a679cd4a5e2b2364d02c0d62620d7a5cf6d44281730f36a7832c1", + "nodeType": "YulIdentifier", + "src": "30514:88:1" + }, + "nodeType": "YulFunctionCall", + "src": "30514:93:1" + }, + "nodeType": "YulExpressionStatement", + "src": "30514:93:1" + }, + { + "nodeType": "YulAssignment", + "src": "30616:19:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "30627:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "30632:2:1", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "30623:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "30623:12:1" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "30616:3:1" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_a8c8730adc0a679cd4a5e2b2364d02c0d62620d7a5cf6d44281730f36a7832c1_to_t_string_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "30409:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "30417:3:1", + "type": "" + } + ], + "src": "30275:366:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "30818:248:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "30828:26:1", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "30840:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "30851:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "30836:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "30836:18:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "30828:4:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "30875:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "30886:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "30871:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "30871:17:1" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "30894:4:1" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "30900:9:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "30890:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "30890:20:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "30864:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "30864:47:1" + }, + "nodeType": "YulExpressionStatement", + "src": "30864:47:1" + }, + { + "nodeType": "YulAssignment", + "src": "30920:139:1", + "value": { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "31054:4:1" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_a8c8730adc0a679cd4a5e2b2364d02c0d62620d7a5cf6d44281730f36a7832c1_to_t_string_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "30928:124:1" + }, + "nodeType": "YulFunctionCall", + "src": "30928:131:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "30920:4:1" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_a8c8730adc0a679cd4a5e2b2364d02c0d62620d7a5cf6d44281730f36a7832c1__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "30798:9:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "30813:4:1", + "type": "" + } + ], + "src": "30647:419:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "31178:127:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "31200:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "31208:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "31196:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "31196:14:1" + }, + { + "hexValue": "566f746572206f7267616e697a6174696f6e2063616e6e6f7420766f7465206d", + "kind": "string", + "nodeType": "YulLiteral", + "src": "31212:34:1", + "type": "", + "value": "Voter organization cannot vote m" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "31189:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "31189:58:1" + }, + "nodeType": "YulExpressionStatement", + "src": "31189:58:1" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "31268:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "31276:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "31264:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "31264:15:1" + }, + { + "hexValue": "6f7265207468616e206f6e636521", + "kind": "string", + "nodeType": "YulLiteral", + "src": "31281:16:1", + "type": "", + "value": "ore than once!" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "31257:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "31257:41:1" + }, + "nodeType": "YulExpressionStatement", + "src": "31257:41:1" + } + ] + }, + "name": "store_literal_in_memory_414be5daad95c532f9b7381e52ffca6776b0449e47c566018321a361a4b95d16", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "31170:6:1", + "type": "" + } + ], + "src": "31072:233:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "31457:220:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "31467:74:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "31533:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "31538:2:1", + "type": "", + "value": "46" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "31474:58:1" + }, + "nodeType": "YulFunctionCall", + "src": "31474:67:1" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "31467:3:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "31639:3:1" + } + ], + "functionName": { + "name": "store_literal_in_memory_414be5daad95c532f9b7381e52ffca6776b0449e47c566018321a361a4b95d16", + "nodeType": "YulIdentifier", + "src": "31550:88:1" + }, + "nodeType": "YulFunctionCall", + "src": "31550:93:1" + }, + "nodeType": "YulExpressionStatement", + "src": "31550:93:1" + }, + { + "nodeType": "YulAssignment", + "src": "31652:19:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "31663:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "31668:2:1", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "31659:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "31659:12:1" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "31652:3:1" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_414be5daad95c532f9b7381e52ffca6776b0449e47c566018321a361a4b95d16_to_t_string_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "31445:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "31453:3:1", + "type": "" + } + ], + "src": "31311:366:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "31854:248:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "31864:26:1", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "31876:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "31887:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "31872:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "31872:18:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "31864:4:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "31911:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "31922:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "31907:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "31907:17:1" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "31930:4:1" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "31936:9:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "31926:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "31926:20:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "31900:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "31900:47:1" + }, + "nodeType": "YulExpressionStatement", + "src": "31900:47:1" + }, + { + "nodeType": "YulAssignment", + "src": "31956:139:1", + "value": { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "32090:4:1" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_414be5daad95c532f9b7381e52ffca6776b0449e47c566018321a361a4b95d16_to_t_string_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "31964:124:1" + }, + "nodeType": "YulFunctionCall", + "src": "31964:131:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "31956:4:1" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_414be5daad95c532f9b7381e52ffca6776b0449e47c566018321a361a4b95d16__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "31834:9:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "31849:4:1", + "type": "" + } + ], + "src": "31683:419:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "32136:152:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "32153:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "32156:77:1", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "32146:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "32146:88:1" + }, + "nodeType": "YulExpressionStatement", + "src": "32146:88:1" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "32250:1:1", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "32253:4:1", + "type": "", + "value": "0x11" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "32243:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "32243:15:1" + }, + "nodeType": "YulExpressionStatement", + "src": "32243:15:1" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "32274:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "32277:4:1", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "32267:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "32267:15:1" + }, + "nodeType": "YulExpressionStatement", + "src": "32267:15:1" + } + ] + }, + "name": "panic_error_0x11", + "nodeType": "YulFunctionDefinition", + "src": "32108:180:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "32338:261:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "32348:25:1", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "32371:1:1" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "32353:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "32353:20:1" + }, + "variableNames": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "32348:1:1" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "32382:25:1", + "value": { + "arguments": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "32405:1:1" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "32387:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "32387:20:1" + }, + "variableNames": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "32382:1:1" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "32545:22:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nodeType": "YulIdentifier", + "src": "32547:16:1" + }, + "nodeType": "YulFunctionCall", + "src": "32547:18:1" + }, + "nodeType": "YulExpressionStatement", + "src": "32547:18:1" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "32466:1:1" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "32473:66:1", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "32541:1:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "32469:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "32469:74:1" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "32463:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "32463:81:1" + }, + "nodeType": "YulIf", + "src": "32460:107:1" + }, + { + "nodeType": "YulAssignment", + "src": "32577:16:1", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "32588:1:1" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "32591:1:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "32584:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "32584:9:1" + }, + "variableNames": [ + { + "name": "sum", + "nodeType": "YulIdentifier", + "src": "32577:3:1" + } + ] + } + ] + }, + "name": "checked_add_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nodeType": "YulTypedName", + "src": "32325:1:1", + "type": "" + }, + { + "name": "y", + "nodeType": "YulTypedName", + "src": "32328:1:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "sum", + "nodeType": "YulTypedName", + "src": "32334:3:1", + "type": "" + } + ], + "src": "32294:305:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "32633:152:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "32650:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "32653:77:1", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "32643:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "32643:88:1" + }, + "nodeType": "YulExpressionStatement", + "src": "32643:88:1" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "32747:1:1", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "32750:4:1", + "type": "", + "value": "0x31" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "32740:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "32740:15:1" + }, + "nodeType": "YulExpressionStatement", + "src": "32740:15:1" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "32771:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "32774:4:1", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "32764:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "32764:15:1" + }, + "nodeType": "YulExpressionStatement", + "src": "32764:15:1" + } + ] + }, + "name": "panic_error_0x31", + "nodeType": "YulFunctionDefinition", + "src": "32605:180:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "32834:190:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "32844:33:1", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "32871:5:1" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "32853:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "32853:24:1" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "32844:5:1" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "32967:22:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nodeType": "YulIdentifier", + "src": "32969:16:1" + }, + "nodeType": "YulFunctionCall", + "src": "32969:18:1" + }, + "nodeType": "YulExpressionStatement", + "src": "32969:18:1" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "32892:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "32899:66:1", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "32889:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "32889:77:1" + }, + "nodeType": "YulIf", + "src": "32886:103:1" + }, + { + "nodeType": "YulAssignment", + "src": "32998:20:1", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "33009:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "33016:1:1", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "33005:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "33005:13:1" + }, + "variableNames": [ + { + "name": "ret", + "nodeType": "YulIdentifier", + "src": "32998:3:1" + } + ] + } + ] + }, + "name": "increment_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "32820:5:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nodeType": "YulTypedName", + "src": "32830:3:1", + "type": "" + } + ], + "src": "32791:233:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "33058:152:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "33075:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "33078:77:1", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "33068:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "33068:88:1" + }, + "nodeType": "YulExpressionStatement", + "src": "33068:88:1" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "33172:1:1", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "33175:4:1", + "type": "", + "value": "0x32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "33165:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "33165:15:1" + }, + "nodeType": "YulExpressionStatement", + "src": "33165:15:1" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "33196:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "33199:4:1", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "33189:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "33189:15:1" + }, + "nodeType": "YulExpressionStatement", + "src": "33189:15:1" + } + ] + }, + "name": "panic_error_0x32", + "nodeType": "YulFunctionDefinition", + "src": "33030:180:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "33261:146:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "33271:25:1", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "33294:1:1" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "33276:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "33276:20:1" + }, + "variableNames": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "33271:1:1" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "33305:25:1", + "value": { + "arguments": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "33328:1:1" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "33310:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "33310:20:1" + }, + "variableNames": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "33305:1:1" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "33352:22:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nodeType": "YulIdentifier", + "src": "33354:16:1" + }, + "nodeType": "YulFunctionCall", + "src": "33354:18:1" + }, + "nodeType": "YulExpressionStatement", + "src": "33354:18:1" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "33346:1:1" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "33349:1:1" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "33343:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "33343:8:1" + }, + "nodeType": "YulIf", + "src": "33340:34:1" + }, + { + "nodeType": "YulAssignment", + "src": "33384:17:1", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "33396:1:1" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "33399:1:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "33392:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "33392:9:1" + }, + "variableNames": [ + { + "name": "diff", + "nodeType": "YulIdentifier", + "src": "33384:4:1" + } + ] + } + ] + }, + "name": "checked_sub_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nodeType": "YulTypedName", + "src": "33247:1:1", + "type": "" + }, + { + "name": "y", + "nodeType": "YulTypedName", + "src": "33250:1:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "diff", + "nodeType": "YulTypedName", + "src": "33256:4:1", + "type": "" + } + ], + "src": "33216:191:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "33441:152:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "33458:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "33461:77:1", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "33451:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "33451:88:1" + }, + "nodeType": "YulExpressionStatement", + "src": "33451:88:1" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "33555:1:1", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "33558:4:1", + "type": "", + "value": "0x22" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "33548:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "33548:15:1" + }, + "nodeType": "YulExpressionStatement", + "src": "33548:15:1" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "33579:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "33582:4:1", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "33572:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "33572:15:1" + }, + "nodeType": "YulExpressionStatement", + "src": "33572:15:1" + } + ] + }, + "name": "panic_error_0x22", + "nodeType": "YulFunctionDefinition", + "src": "33413:180:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "33650:269:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "33660:22:1", + "value": { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "33674:4:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "33680:1:1", + "type": "", + "value": "2" + } + ], + "functionName": { + "name": "div", + "nodeType": "YulIdentifier", + "src": "33670:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "33670:12:1" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "33660:6:1" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "33691:38:1", + "value": { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "33721:4:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "33727:1:1", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "33717:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "33717:12:1" + }, + "variables": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulTypedName", + "src": "33695:18:1", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "33768:51:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "33782:27:1", + "value": { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "33796:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "33804:4:1", + "type": "", + "value": "0x7f" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "33792:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "33792:17:1" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "33782:6:1" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulIdentifier", + "src": "33748:18:1" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "33741:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "33741:26:1" + }, + "nodeType": "YulIf", + "src": "33738:81:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "33871:42:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x22", + "nodeType": "YulIdentifier", + "src": "33885:16:1" + }, + "nodeType": "YulFunctionCall", + "src": "33885:18:1" + }, + "nodeType": "YulExpressionStatement", + "src": "33885:18:1" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulIdentifier", + "src": "33835:18:1" + }, + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "33858:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "33866:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "33855:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "33855:14:1" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "33832:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "33832:38:1" + }, + "nodeType": "YulIf", + "src": "33829:84:1" + } + ] + }, + "name": "extract_byte_array_length", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "33634:4:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "33643:6:1", + "type": "" + } + ], + "src": "33599:320:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "34031:76:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "34053:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "34061:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "34049:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "34049:14:1" + }, + { + "hexValue": "4f7267616e697a6174696f6e20616c7265616479207265676973746572656421", + "kind": "string", + "nodeType": "YulLiteral", + "src": "34065:34:1", + "type": "", + "value": "Organization already registered!" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "34042:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "34042:58:1" + }, + "nodeType": "YulExpressionStatement", + "src": "34042:58:1" + } + ] + }, + "name": "store_literal_in_memory_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "34023:6:1", + "type": "" + } + ], + "src": "33925:182:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "34259:220:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "34269:74:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "34335:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "34340:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "34276:58:1" + }, + "nodeType": "YulFunctionCall", + "src": "34276:67:1" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "34269:3:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "34441:3:1" + } + ], + "functionName": { + "name": "store_literal_in_memory_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f", + "nodeType": "YulIdentifier", + "src": "34352:88:1" + }, + "nodeType": "YulFunctionCall", + "src": "34352:93:1" + }, + "nodeType": "YulExpressionStatement", + "src": "34352:93:1" + }, + { + "nodeType": "YulAssignment", + "src": "34454:19:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "34465:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "34470:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "34461:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "34461:12:1" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "34454:3:1" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f_to_t_string_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "34247:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "34255:3:1", + "type": "" + } + ], + "src": "34113:366:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "34656:248:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "34666:26:1", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "34678:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "34689:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "34674:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "34674:18:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "34666:4:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "34713:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "34724:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "34709:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "34709:17:1" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "34732:4:1" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "34738:9:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "34728:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "34728:20:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "34702:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "34702:47:1" + }, + "nodeType": "YulExpressionStatement", + "src": "34702:47:1" + }, + { + "nodeType": "YulAssignment", + "src": "34758:139:1", + "value": { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "34892:4:1" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f_to_t_string_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "34766:124:1" + }, + "nodeType": "YulFunctionCall", + "src": "34766:131:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "34758:4:1" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "34636:9:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "34651:4:1", + "type": "" + } + ], + "src": "34485:419:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "34938:152:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "34955:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "34958:77:1", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "34948:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "34948:88:1" + }, + "nodeType": "YulExpressionStatement", + "src": "34948:88:1" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "35052:1:1", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "35055:4:1", + "type": "", + "value": "0x12" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "35045:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "35045:15:1" + }, + "nodeType": "YulExpressionStatement", + "src": "35045:15:1" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "35076:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "35079:4:1", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "35069:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "35069:15:1" + }, + "nodeType": "YulExpressionStatement", + "src": "35069:15:1" + } + ] + }, + "name": "panic_error_0x12", + "nodeType": "YulFunctionDefinition", + "src": "34910:180:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "35138:143:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "35148:25:1", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "35171:1:1" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "35153:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "35153:20:1" + }, + "variableNames": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "35148:1:1" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "35182:25:1", + "value": { + "arguments": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "35205:1:1" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "35187:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "35187:20:1" + }, + "variableNames": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "35182:1:1" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "35229:22:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x12", + "nodeType": "YulIdentifier", + "src": "35231:16:1" + }, + "nodeType": "YulFunctionCall", + "src": "35231:18:1" + }, + "nodeType": "YulExpressionStatement", + "src": "35231:18:1" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "35226:1:1" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "35219:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "35219:9:1" + }, + "nodeType": "YulIf", + "src": "35216:35:1" + }, + { + "nodeType": "YulAssignment", + "src": "35261:14:1", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "35270:1:1" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "35273:1:1" + } + ], + "functionName": { + "name": "div", + "nodeType": "YulIdentifier", + "src": "35266:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "35266:9:1" + }, + "variableNames": [ + { + "name": "r", + "nodeType": "YulIdentifier", + "src": "35261:1:1" + } + ] + } + ] + }, + "name": "checked_div_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nodeType": "YulTypedName", + "src": "35127:1:1", + "type": "" + }, + { + "name": "y", + "nodeType": "YulTypedName", + "src": "35130:1:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "r", + "nodeType": "YulTypedName", + "src": "35136:1:1", + "type": "" + } + ], + "src": "35096:185:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "35335:300:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "35345:25:1", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "35368:1:1" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "35350:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "35350:20:1" + }, + "variableNames": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "35345:1:1" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "35379:25:1", + "value": { + "arguments": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "35402:1:1" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "35384:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "35384:20:1" + }, + "variableNames": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "35379:1:1" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "35577:22:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nodeType": "YulIdentifier", + "src": "35579:16:1" + }, + "nodeType": "YulFunctionCall", + "src": "35579:18:1" + }, + "nodeType": "YulExpressionStatement", + "src": "35579:18:1" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "35489:1:1" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "35482:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "35482:9:1" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "35475:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "35475:17:1" + }, + { + "arguments": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "35497:1:1" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "35504:66:1", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + }, + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "35572:1:1" + } + ], + "functionName": { + "name": "div", + "nodeType": "YulIdentifier", + "src": "35500:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "35500:74:1" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "35494:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "35494:81:1" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "35471:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "35471:105:1" + }, + "nodeType": "YulIf", + "src": "35468:131:1" + }, + { + "nodeType": "YulAssignment", + "src": "35609:20:1", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "35624:1:1" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "35627:1:1" + } + ], + "functionName": { + "name": "mul", + "nodeType": "YulIdentifier", + "src": "35620:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "35620:9:1" + }, + "variableNames": [ + { + "name": "product", + "nodeType": "YulIdentifier", + "src": "35609:7:1" + } + ] + } + ] + }, + "name": "checked_mul_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nodeType": "YulTypedName", + "src": "35318:1:1", + "type": "" + }, + { + "name": "y", + "nodeType": "YulTypedName", + "src": "35321:1:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "product", + "nodeType": "YulTypedName", + "src": "35327:7:1", + "type": "" + } + ], + "src": "35287:348:1" + } + ] + }, + "contents": "{\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_address(value)\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_uint256(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_uint256(value)\n }\n\n function abi_decode_tuple_t_addresst_addresst_uint256(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function cleanup_t_bool(value) -> cleaned {\n cleaned := iszero(iszero(value))\n }\n\n function abi_encode_t_bool_to_t_bool_fromStack(value, pos) {\n mstore(pos, cleanup_t_bool(value))\n }\n\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_decode_tuple_t_uint256(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function validator_revert_t_bool(value) {\n if iszero(eq(value, cleanup_t_bool(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_bool(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_bool(value)\n }\n\n function abi_decode_tuple_t_addresst_bool(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_bool(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_length_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function array_dataslot_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr(ptr) -> data {\n data := ptr\n\n data := add(ptr, 0x20)\n\n }\n\n function abi_encode_t_address_to_t_address(value, pos) {\n mstore(pos, cleanup_t_address(value))\n }\n\n function array_length_t_string_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function copy_memory_to_memory(src, dst, length) {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n if gt(i, length)\n {\n // clear end\n mstore(add(dst, length), 0)\n }\n }\n\n function round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\n }\n\n function abi_encode_t_string_memory_ptr_to_t_string_memory_ptr(value, pos) -> end {\n let length := array_length_t_string_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_string_memory_ptr(pos, length)\n copy_memory_to_memory(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function abi_encode_t_uint256_to_t_uint256(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function abi_encode_t_bool_to_t_bool(value, pos) {\n mstore(pos, cleanup_t_bool(value))\n }\n\n function array_length_t_array$_t_address_$dyn_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_array$_t_address_$dyn_memory_ptr(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function array_dataslot_t_array$_t_address_$dyn_memory_ptr(ptr) -> data {\n data := ptr\n\n data := add(ptr, 0x20)\n\n }\n\n function abi_encodeUpdatedPos_t_address_to_t_address(value0, pos) -> updatedPos {\n abi_encode_t_address_to_t_address(value0, pos)\n updatedPos := add(pos, 0x20)\n }\n\n function array_nextElement_t_array$_t_address_$dyn_memory_ptr(ptr) -> next {\n next := add(ptr, 0x20)\n }\n\n // address[] -> address[]\n function abi_encode_t_array$_t_address_$dyn_memory_ptr_to_t_array$_t_address_$dyn_memory_ptr(value, pos) -> end {\n let length := array_length_t_array$_t_address_$dyn_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_array$_t_address_$dyn_memory_ptr(pos, length)\n let baseRef := array_dataslot_t_array$_t_address_$dyn_memory_ptr(value)\n let srcPtr := baseRef\n for { let i := 0 } lt(i, length) { i := add(i, 1) }\n {\n let elementValue0 := mload(srcPtr)\n pos := abi_encodeUpdatedPos_t_address_to_t_address(elementValue0, pos)\n srcPtr := array_nextElement_t_array$_t_address_$dyn_memory_ptr(srcPtr)\n }\n end := pos\n }\n\n // struct Charity.Organization -> struct Charity.Organization\n function abi_encode_t_struct$_Organization_$32_memory_ptr_to_t_struct$_Organization_$32_memory_ptr(value, pos) -> end {\n let tail := add(pos, 0x01c0)\n\n {\n // org_address\n\n let memberValue0 := mload(add(value, 0x00))\n abi_encode_t_address_to_t_address(memberValue0, add(pos, 0x00))\n }\n\n {\n // name\n\n let memberValue0 := mload(add(value, 0x20))\n\n mstore(add(pos, 0x20), sub(tail, pos))\n tail := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr(memberValue0, tail)\n\n }\n\n {\n // doc_cid\n\n let memberValue0 := mload(add(value, 0x40))\n\n mstore(add(pos, 0x40), sub(tail, pos))\n tail := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr(memberValue0, tail)\n\n }\n\n {\n // upvotes\n\n let memberValue0 := mload(add(value, 0x60))\n abi_encode_t_uint256_to_t_uint256(memberValue0, add(pos, 0x60))\n }\n\n {\n // downvotes\n\n let memberValue0 := mload(add(value, 0x80))\n abi_encode_t_uint256_to_t_uint256(memberValue0, add(pos, 0x80))\n }\n\n {\n // verification_status\n\n let memberValue0 := mload(add(value, 0xa0))\n abi_encode_t_bool_to_t_bool(memberValue0, add(pos, 0xa0))\n }\n\n {\n // upvoters\n\n let memberValue0 := mload(add(value, 0xc0))\n\n mstore(add(pos, 0xc0), sub(tail, pos))\n tail := abi_encode_t_array$_t_address_$dyn_memory_ptr_to_t_array$_t_address_$dyn_memory_ptr(memberValue0, tail)\n\n }\n\n {\n // downvoters\n\n let memberValue0 := mload(add(value, 0xe0))\n\n mstore(add(pos, 0xe0), sub(tail, pos))\n tail := abi_encode_t_array$_t_address_$dyn_memory_ptr_to_t_array$_t_address_$dyn_memory_ptr(memberValue0, tail)\n\n }\n\n {\n // stake\n\n let memberValue0 := mload(add(value, 0x0100))\n abi_encode_t_uint256_to_t_uint256(memberValue0, add(pos, 0x0100))\n }\n\n {\n // desc\n\n let memberValue0 := mload(add(value, 0x0120))\n\n mstore(add(pos, 0x0120), sub(tail, pos))\n tail := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr(memberValue0, tail)\n\n }\n\n {\n // points\n\n let memberValue0 := mload(add(value, 0x0140))\n abi_encode_t_uint256_to_t_uint256(memberValue0, add(pos, 0x0140))\n }\n\n {\n // application_time\n\n let memberValue0 := mload(add(value, 0x0160))\n abi_encode_t_uint256_to_t_uint256(memberValue0, add(pos, 0x0160))\n }\n\n {\n // isStakePaid\n\n let memberValue0 := mload(add(value, 0x0180))\n abi_encode_t_bool_to_t_bool(memberValue0, add(pos, 0x0180))\n }\n\n {\n // decision\n\n let memberValue0 := mload(add(value, 0x01a0))\n abi_encode_t_bool_to_t_bool(memberValue0, add(pos, 0x01a0))\n }\n\n end := tail\n }\n\n function abi_encodeUpdatedPos_t_struct$_Organization_$32_memory_ptr_to_t_struct$_Organization_$32_memory_ptr(value0, pos) -> updatedPos {\n updatedPos := abi_encode_t_struct$_Organization_$32_memory_ptr_to_t_struct$_Organization_$32_memory_ptr(value0, pos)\n }\n\n function array_nextElement_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr(ptr) -> next {\n next := add(ptr, 0x20)\n }\n\n // struct Charity.Organization[] -> struct Charity.Organization[]\n function abi_encode_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr_to_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr_fromStack(pos, length)\n let headStart := pos\n let tail := add(pos, mul(length, 0x20))\n let baseRef := array_dataslot_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr(value)\n let srcPtr := baseRef\n for { let i := 0 } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, sub(tail, headStart))\n let elementValue0 := mload(srcPtr)\n tail := abi_encodeUpdatedPos_t_struct$_Organization_$32_memory_ptr_to_t_struct$_Organization_$32_memory_ptr(elementValue0, tail)\n srcPtr := array_nextElement_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr(srcPtr)\n pos := add(pos, 0x20)\n }\n pos := tail\n end := pos\n }\n\n function abi_encode_tuple_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr_to_t_array$_t_struct$_Organization_$32_memory_ptr_$dyn_memory_ptr_fromStack(value0, tail)\n\n }\n\n function array_length_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function array_dataslot_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr(ptr) -> data {\n data := ptr\n\n data := add(ptr, 0x20)\n\n }\n\n // struct Charity.FinancialReport -> struct Charity.FinancialReport\n function abi_encode_t_struct$_FinancialReport_$84_memory_ptr_to_t_struct$_FinancialReport_$84_memory_ptr(value, pos) -> end {\n let tail := add(pos, 0x0160)\n\n {\n // org_address\n\n let memberValue0 := mload(add(value, 0x00))\n abi_encode_t_address_to_t_address(memberValue0, add(pos, 0x00))\n }\n\n {\n // upvotes\n\n let memberValue0 := mload(add(value, 0x20))\n abi_encode_t_uint256_to_t_uint256(memberValue0, add(pos, 0x20))\n }\n\n {\n // downvotes\n\n let memberValue0 := mload(add(value, 0x40))\n abi_encode_t_uint256_to_t_uint256(memberValue0, add(pos, 0x40))\n }\n\n {\n // upvoters\n\n let memberValue0 := mload(add(value, 0x60))\n\n mstore(add(pos, 0x60), sub(tail, pos))\n tail := abi_encode_t_array$_t_address_$dyn_memory_ptr_to_t_array$_t_address_$dyn_memory_ptr(memberValue0, tail)\n\n }\n\n {\n // downvoters\n\n let memberValue0 := mload(add(value, 0x80))\n\n mstore(add(pos, 0x80), sub(tail, pos))\n tail := abi_encode_t_array$_t_address_$dyn_memory_ptr_to_t_array$_t_address_$dyn_memory_ptr(memberValue0, tail)\n\n }\n\n {\n // reportUploadStartTime\n\n let memberValue0 := mload(add(value, 0xa0))\n abi_encode_t_uint256_to_t_uint256(memberValue0, add(pos, 0xa0))\n }\n\n {\n // reportUploadEndTime\n\n let memberValue0 := mload(add(value, 0xc0))\n abi_encode_t_uint256_to_t_uint256(memberValue0, add(pos, 0xc0))\n }\n\n {\n // isReportTrue\n\n let memberValue0 := mload(add(value, 0xe0))\n abi_encode_t_bool_to_t_bool(memberValue0, add(pos, 0xe0))\n }\n\n {\n // report_cid\n\n let memberValue0 := mload(add(value, 0x0100))\n\n mstore(add(pos, 0x0100), sub(tail, pos))\n tail := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr(memberValue0, tail)\n\n }\n\n {\n // isOpen\n\n let memberValue0 := mload(add(value, 0x0120))\n abi_encode_t_bool_to_t_bool(memberValue0, add(pos, 0x0120))\n }\n\n {\n // isSubmitted\n\n let memberValue0 := mload(add(value, 0x0140))\n abi_encode_t_bool_to_t_bool(memberValue0, add(pos, 0x0140))\n }\n\n end := tail\n }\n\n function abi_encodeUpdatedPos_t_struct$_FinancialReport_$84_memory_ptr_to_t_struct$_FinancialReport_$84_memory_ptr(value0, pos) -> updatedPos {\n updatedPos := abi_encode_t_struct$_FinancialReport_$84_memory_ptr_to_t_struct$_FinancialReport_$84_memory_ptr(value0, pos)\n }\n\n function array_nextElement_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr(ptr) -> next {\n next := add(ptr, 0x20)\n }\n\n // struct Charity.FinancialReport[] -> struct Charity.FinancialReport[]\n function abi_encode_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr_to_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr_fromStack(pos, length)\n let headStart := pos\n let tail := add(pos, mul(length, 0x20))\n let baseRef := array_dataslot_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr(value)\n let srcPtr := baseRef\n for { let i := 0 } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, sub(tail, headStart))\n let elementValue0 := mload(srcPtr)\n tail := abi_encodeUpdatedPos_t_struct$_FinancialReport_$84_memory_ptr_to_t_struct$_FinancialReport_$84_memory_ptr(elementValue0, tail)\n srcPtr := array_nextElement_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr(srcPtr)\n pos := add(pos, 0x20)\n }\n pos := tail\n end := pos\n }\n\n function abi_encode_tuple_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr_to_t_array$_t_struct$_FinancialReport_$84_memory_ptr_$dyn_memory_ptr_fromStack(value0, tail)\n\n }\n\n function revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n revert(0, 0)\n }\n\n function revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() {\n revert(0, 0)\n }\n\n function panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n\n function finalize_allocation(memPtr, size) {\n let newFreePtr := add(memPtr, round_up_to_mul_of_32(size))\n // protect against overflow\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n\n function allocate_memory(size) -> memPtr {\n memPtr := allocate_unbounded()\n finalize_allocation(memPtr, size)\n }\n\n function array_allocation_size_t_string_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := round_up_to_mul_of_32(length)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function copy_calldata_to_memory(src, dst, length) {\n calldatacopy(dst, src, length)\n // clear end\n mstore(add(dst, length), 0)\n }\n\n function abi_decode_available_length_t_string_memory_ptr(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_string_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n copy_calldata_to_memory(src, dst, length)\n }\n\n // string\n function abi_decode_t_string_memory_ptr(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := calldataload(offset)\n array := abi_decode_available_length_t_string_memory_ptr(add(offset, 0x20), length, end)\n }\n\n function abi_decode_tuple_t_addresst_string_memory_ptrt_string_memory_ptrt_string_memory_ptrt_uint256(headStart, dataEnd) -> value0, value1, value2, value3, value4 {\n if slt(sub(dataEnd, headStart), 160) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 32))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value1 := abi_decode_t_string_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 64))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value2 := abi_decode_t_string_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 96))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value3 := abi_decode_t_string_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 128\n\n value4 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_addresst_uint256(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_addresst_string_memory_ptrt_uint256(headStart, dataEnd) -> value0, value1, value2 {\n if slt(sub(dataEnd, headStart), 96) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 32))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value1 := abi_decode_t_string_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 64\n\n value2 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function array_length_t_array$_t_uint256_$dyn_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_array$_t_uint256_$dyn_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function array_dataslot_t_array$_t_uint256_$dyn_memory_ptr(ptr) -> data {\n data := ptr\n\n data := add(ptr, 0x20)\n\n }\n\n function abi_encodeUpdatedPos_t_uint256_to_t_uint256(value0, pos) -> updatedPos {\n abi_encode_t_uint256_to_t_uint256(value0, pos)\n updatedPos := add(pos, 0x20)\n }\n\n function array_nextElement_t_array$_t_uint256_$dyn_memory_ptr(ptr) -> next {\n next := add(ptr, 0x20)\n }\n\n // uint256[] -> uint256[]\n function abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_array$_t_uint256_$dyn_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_array$_t_uint256_$dyn_memory_ptr_fromStack(pos, length)\n let baseRef := array_dataslot_t_array$_t_uint256_$dyn_memory_ptr(value)\n let srcPtr := baseRef\n for { let i := 0 } lt(i, length) { i := add(i, 1) }\n {\n let elementValue0 := mload(srcPtr)\n pos := abi_encodeUpdatedPos_t_uint256_to_t_uint256(elementValue0, pos)\n srcPtr := array_nextElement_t_array$_t_uint256_$dyn_memory_ptr(srcPtr)\n }\n end := pos\n }\n\n function abi_encode_tuple_t_array$_t_uint256_$dyn_memory_ptr__to_t_array$_t_uint256_$dyn_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_array$_t_uint256_$dyn_memory_ptr_to_t_array$_t_uint256_$dyn_memory_ptr_fromStack(value0, tail)\n\n }\n\n function abi_encode_t_uint256_to_t_uint256_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_encode_tuple_t_bool_t_bool__to_t_bool_t_bool__fromStack_reversed(headStart , value1, value0) -> tail {\n tail := add(headStart, 64)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n abi_encode_t_bool_to_t_bool_fromStack(value1, add(headStart, 32))\n\n }\n\n function array_storeLengthForEncoding_t_array$_t_address_$dyn_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n // address[] -> address[]\n function abi_encode_t_array$_t_address_$dyn_memory_ptr_to_t_array$_t_address_$dyn_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_array$_t_address_$dyn_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_array$_t_address_$dyn_memory_ptr_fromStack(pos, length)\n let baseRef := array_dataslot_t_array$_t_address_$dyn_memory_ptr(value)\n let srcPtr := baseRef\n for { let i := 0 } lt(i, length) { i := add(i, 1) }\n {\n let elementValue0 := mload(srcPtr)\n pos := abi_encodeUpdatedPos_t_address_to_t_address(elementValue0, pos)\n srcPtr := array_nextElement_t_array$_t_address_$dyn_memory_ptr(srcPtr)\n }\n end := pos\n }\n\n function abi_encode_tuple_t_array$_t_address_$dyn_memory_ptr__to_t_array$_t_address_$dyn_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_array$_t_address_$dyn_memory_ptr_to_t_array$_t_address_$dyn_memory_ptr_fromStack(value0, tail)\n\n }\n\n function abi_decode_tuple_t_addresst_string_memory_ptrt_string_memory_ptrt_uint256(headStart, dataEnd) -> value0, value1, value2, value3 {\n if slt(sub(dataEnd, headStart), 128) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 32))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value1 := abi_decode_t_string_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 64))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value2 := abi_decode_t_string_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 96\n\n value3 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n mstore(pos, cleanup_t_address(value))\n }\n\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function store_literal_in_memory_ddeb0b25a32bdbd6903219d580ec164d518abe435832e90b114c90315c52a2cf(memPtr) {\n\n mstore(add(memPtr, 0), \"Organization address does not ex\")\n\n mstore(add(memPtr, 32), \"ist!\")\n\n }\n\n function abi_encode_t_stringliteral_ddeb0b25a32bdbd6903219d580ec164d518abe435832e90b114c90315c52a2cf_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 36)\n store_literal_in_memory_ddeb0b25a32bdbd6903219d580ec164d518abe435832e90b114c90315c52a2cf(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_ddeb0b25a32bdbd6903219d580ec164d518abe435832e90b114c90315c52a2cf__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_ddeb0b25a32bdbd6903219d580ec164d518abe435832e90b114c90315c52a2cf_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_53664b562d96b321f827bfb375320c905b5c20116fabd3735d276655e7a84701(memPtr) {\n\n mstore(add(memPtr, 0), \"Organization already verified!\")\n\n }\n\n function abi_encode_t_stringliteral_53664b562d96b321f827bfb375320c905b5c20116fabd3735d276655e7a84701_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 30)\n store_literal_in_memory_53664b562d96b321f827bfb375320c905b5c20116fabd3735d276655e7a84701(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_53664b562d96b321f827bfb375320c905b5c20116fabd3735d276655e7a84701__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_53664b562d96b321f827bfb375320c905b5c20116fabd3735d276655e7a84701_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_a8c8730adc0a679cd4a5e2b2364d02c0d62620d7a5cf6d44281730f36a7832c1(memPtr) {\n\n mstore(add(memPtr, 0), \"Voter organization is not verifi\")\n\n mstore(add(memPtr, 32), \"ed, not permitted to vote!\")\n\n }\n\n function abi_encode_t_stringliteral_a8c8730adc0a679cd4a5e2b2364d02c0d62620d7a5cf6d44281730f36a7832c1_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 58)\n store_literal_in_memory_a8c8730adc0a679cd4a5e2b2364d02c0d62620d7a5cf6d44281730f36a7832c1(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_a8c8730adc0a679cd4a5e2b2364d02c0d62620d7a5cf6d44281730f36a7832c1__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_a8c8730adc0a679cd4a5e2b2364d02c0d62620d7a5cf6d44281730f36a7832c1_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_414be5daad95c532f9b7381e52ffca6776b0449e47c566018321a361a4b95d16(memPtr) {\n\n mstore(add(memPtr, 0), \"Voter organization cannot vote m\")\n\n mstore(add(memPtr, 32), \"ore than once!\")\n\n }\n\n function abi_encode_t_stringliteral_414be5daad95c532f9b7381e52ffca6776b0449e47c566018321a361a4b95d16_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 46)\n store_literal_in_memory_414be5daad95c532f9b7381e52ffca6776b0449e47c566018321a361a4b95d16(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_414be5daad95c532f9b7381e52ffca6776b0449e47c566018321a361a4b95d16__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_414be5daad95c532f9b7381e52ffca6776b0449e47c566018321a361a4b95d16_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function checked_add_t_uint256(x, y) -> sum {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n // overflow, if x > (maxValue - y)\n if gt(x, sub(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff, y)) { panic_error_0x11() }\n\n sum := add(x, y)\n }\n\n function panic_error_0x31() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x31)\n revert(0, 0x24)\n }\n\n function increment_t_uint256(value) -> ret {\n value := cleanup_t_uint256(value)\n if eq(value, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) { panic_error_0x11() }\n ret := add(value, 1)\n }\n\n function panic_error_0x32() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n\n function checked_sub_t_uint256(x, y) -> diff {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n if lt(x, y) { panic_error_0x11() }\n\n diff := sub(x, y)\n }\n\n function panic_error_0x22() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n\n function extract_byte_array_length(data) -> length {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) {\n length := and(length, 0x7f)\n }\n\n if eq(outOfPlaceEncoding, lt(length, 32)) {\n panic_error_0x22()\n }\n }\n\n function store_literal_in_memory_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f(memPtr) {\n\n mstore(add(memPtr, 0), \"Organization already registered!\")\n\n }\n\n function abi_encode_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 32)\n store_literal_in_memory_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function panic_error_0x12() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x12)\n revert(0, 0x24)\n }\n\n function checked_div_t_uint256(x, y) -> r {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n if iszero(y) { panic_error_0x12() }\n\n r := div(x, y)\n }\n\n function checked_mul_t_uint256(x, y) -> product {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n // overflow, if x != 0 and y > (maxValue / x)\n if and(iszero(iszero(x)), gt(y, div(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff, x))) { panic_error_0x11() }\n\n product := mul(x, y)\n }\n\n}\n", + "id": 1, + "language": "Yul", + "name": "#utility.yul" + } + ], + "immutableReferences": {}, + "linkReferences": {}, + "object": "608060405234801561001057600080fd5b506004361061028a5760003560e01c80637d7e898a1161015c578063b7627e41116100ce578063de2d0ad011610087578063de2d0ad014610724578063e3323aba1461072e578063e75176b51461074c578063ef2d58471461077c578063f851a44014610798578063fa157f69146107b65761028a565b8063b7627e4114610662578063bb6f5bb414610692578063bc489aa9146106b0578063bfaae62f146106ba578063c9dfca10146106d8578063cdc1a476146107085761028a565b8063914f4cf211610120578063914f4cf2146105b6578063972ac5bb146105c057806399d43c7c146105de578063a52da85d1461060e578063ac64fcde1461062a578063b5e801d5146106465761028a565b80637d7e898a1461053757806380007e831461054157806386bae5681461055f5780638e349519146105905780638fc0ed2f146105ac5761028a565b80634438d4b0116102005780635cf9303f116101b95780635cf9303f146104795780635d0161f1146104a95780635e8e5efd146104c757806362ae7ac7146104e35780636db58829146104ff578063729c70591461051b5761028a565b80634438d4b0146103b95780634648df2a146103d5578063482bd55b146104055780634945a7ad146104215780634bea3db71461043d5780634cf5d5521461045b5761028a565b806322fb1dfd1161025257806322fb1dfd1461031d5780632d80468d146103275780633822b758146103455780633a1693031461034f5780633e85747e1461036d578063440370fe1461039d5761028a565b806302d32f901461028f578063134714ca146102bf578063149d4146146102c957806314cb11e8146102e55780631e47718014610301575b600080fd5b6102a960048036038101906102a491906177a1565b6107d2565b6040516102b6919061780f565b60405180910390f35b6102c7610c62565b005b6102e360048036038101906102de919061782a565b610d6c565b005b6102ff60048036038101906102fa9190617857565b610e78565b005b61031b600480360381019061031691906178b0565b611035565b005b610325611c5d565b005b61032f611cd0565b60405161033c9190617c71565b60405180910390f35b61034d6123f0565b005b610357612444565b6040516103649190617e52565b60405180910390f35b61038760048036038101906103829190617857565b612953565b604051610394919061780f565b60405180910390f35b6103b760048036038101906103b29190617fa9565b6129dc565b005b6103d360048036038101906103ce9190617857565b612cf2565b005b6103ef60048036038101906103ea9190618078565b6132dc565b6040516103fc919061780f565b60405180910390f35b61041f600480360381019061041a91906180b8565b61333b565b005b61043b6004803603810190610436919061782a565b61358e565b005b610445613b88565b60405161045291906181d6565b60405180910390f35b610463613c49565b6040516104709190618207565b60405180910390f35b610493600480360381019061048e9190617857565b613c4f565b6040516104a09190618207565b60405180910390f35b6104b1613c9a565b6040516104be9190617c71565b60405180910390f35b6104e160048036038101906104dc9190617857565b614448565b005b6104fd60048036038101906104f89190617857565b614572565b005b6105196004803603810190610514919061782a565b6145e7565b005b6105356004803603810190610530919061782a565b614d4c565b005b61053f614e54565b005b610549614ec7565b604051610556919061780f565b60405180910390f35b610579600480360381019061057491906178b0565b614f1d565b604051610587929190618222565b60405180910390f35b6105aa60048036038101906105a59190617857565b614f9d565b005b6105b4615281565b005b6105be6153b3565b005b6105c8615423565b6040516105d591906182ba565b60405180910390f35b6105f860048036038101906105f391906177a1565b6154b1565b604051610605919061780f565b60405180910390f35b61062860048036038101906106239190617857565b615940565b005b610644600480360381019061063f91906182dc565b615d10565b005b610660600480360381019061065b9190617857565b615f0a565b005b61067c60048036038101906106779190617857565b6160c7565b6040516106899190618207565b60405180910390f35b61069a616112565b6040516106a791906182ba565b60405180910390f35b6106b861639c565b005b6106c26164d2565b6040516106cf91906182ba565b60405180910390f35b6106f260048036038101906106ed9190617857565b616749565b6040516106ff919061780f565b60405180910390f35b610722600480360381019061071d9190617857565b6167d1565b005b61072c616986565b005b6107366169f9565b604051610743919061780f565b60405180910390f35b61076660048036038101906107619190617857565b616a4f565b6040516107739190618207565b60405180910390f35b61079660048036038101906107919190617857565b616a81565b005b6107a06171dd565b6040516107ad919061838a565b60405180910390f35b6107d060048036038101906107cb919061782a565b617203565b005b6000838360008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600b0154141561085b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161085290618428565b60405180910390fd5b6000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160009054906101000a900460ff16156108ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108e190618494565b60405180910390fd5b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600b01541415801561098757506000808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160009054906101000a900460ff165b6109c6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109bd90618526565b60405180910390fd5b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414610a85576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a7c906185b8565b60405180910390fd5b60016000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206004016000828254610ad79190618607565b925050819055506000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600701859080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506002600160008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550836000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600b01541015610c545760019250610c59565b600092505b50509392505050565b6000601480549050905060005b81811015610d68576014805480610c8957610c8861865d565b5b60019003818190600052602060002090600a0201600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905560018201600090556002820160009055600382016000610ce59190617310565b600482016000610cf59190617310565b600582016000905560068201600090556007820160006101000a81549060ff0219169055600882016000610d299190617331565b6009820160006101000a81549060ff02191690556009820160016101000a81549060ff0219169055505090558080610d609061868c565b915050610c6f565b5050565b60016006600083815260200190815260200160002060050154610d8f9190618607565b600660008381526020019081526020016000206005018190555060066000828152602001908152602001600020600701339080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600280600083815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050565b6001600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020154610ec79190618607565b600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020181905550600760008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600401339080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506002600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050565b801561164c576000805b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600301548110156113c65760016000808060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060184815481106110e0576110df6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a01546111539190618607565b6000808060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060184815481106111a9576111a86186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a0181905550601154826112239190618607565b91506011546000808060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600601848154811061127e5761127d6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600801546112f19190618607565b6000808060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206006018481548110611347576113466186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206008018190555080806113be9061868c565b91505061103f565b50806000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600801546114149190618704565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206008018190555060005b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600401548110156116455760016000808060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060070184815481106114fd576114fc6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a01546115709190618704565b6000808060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060070184815481106115c6576115c56186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a0181905550808061163d9061868c565b91505061145c565b5050611c59565b6000805b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600401548110156119d75760016000808060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060070184815481106116f1576116f06186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a01546117649190618607565b6000808060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060070184815481106117ba576117b96186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a0181905550601154826118349190618607565b91506011546000808060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600701848154811061188f5761188e6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600801546119029190618607565b6000808060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206007018481548110611958576119576186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206008018190555080806119cf9061868c565b915050611650565b50806000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060080154611a259190618704565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206008018190555060005b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030154811015611c565760016000808060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206006018481548110611b0e57611b0d6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a0154611b819190618704565b6000808060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206006018481548110611bd757611bd66186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a01819055508080611c4e9061868c565b915050611a6d565b50505b5050565b6000600b80549050905060005b81811015611ccc57600b805480611c8457611c8361865d565b5b6001900381819060005260206000200160006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905590558080611cc49061868c565b915050611c6a565b5050565b606060005b600880549050811015611fe6576000151560008060088481548110611cfd57611cfc6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600c0160009054906101000a900460ff1615151415611fd357601360008060088481548110611d9457611d936186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090806001815401808255809150506001900390600052602060002090600d02016000909190919091506000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001820181600101908054611e9d90618767565b611ea8929190617371565b506002820181600201908054611ebd90618767565b611ec8929190617371565b5060038201548160030155600482015481600401556005820160009054906101000a900460ff168160050160006101000a81548160ff0219169083151502179055506006820181600601908054611f209291906173fe565b506007820181600701908054611f379291906173fe565b50600882015481600801556009820181600901908054611f5690618767565b611f61929190617371565b50600a82015481600a0155600b82015481600b0155600c820160009054906101000a900460ff1681600c0160006101000a81548160ff021916908315150217905550600c820160019054906101000a900460ff1681600c0160016101000a81548160ff02191690831515021790555050505b8080611fde9061868c565b915050611cd5565b506013805480602002602001604051908101604052809291908181526020016000905b828210156123e757838290600052602060002090600d0201604051806101c00160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200160018201805461209390618767565b80601f01602080910402602001604051908101604052809291908181526020018280546120bf90618767565b801561210c5780601f106120e15761010080835404028352916020019161210c565b820191906000526020600020905b8154815290600101906020018083116120ef57829003601f168201915b5050505050815260200160028201805461212590618767565b80601f016020809104026020016040519081016040528092919081815260200182805461215190618767565b801561219e5780601f106121735761010080835404028352916020019161219e565b820191906000526020600020905b81548152906001019060200180831161218157829003601f168201915b5050505050815260200160038201548152602001600482015481526020016005820160009054906101000a900460ff161515151581526020016006820180548060200260200160405190810160405280929190818152602001828054801561225b57602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311612211575b50505050508152602001600782018054806020026020016040519081016040528092919081815260200182805480156122e957602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001906001019080831161229f575b505050505081526020016008820154815260200160098201805461230c90618767565b80601f016020809104026020016040519081016040528092919081815260200182805461233890618767565b80156123855780601f1061235a57610100808354040283529160200191612385565b820191906000526020600020905b81548152906001019060200180831161236857829003601f168201915b50505050508152602001600a8201548152602001600b8201548152602001600c820160009054906101000a900460ff16151515158152602001600c820160019054906101000a900460ff16151515158152505081526020019060010190612009565b50505050905090565b6000600c80549050905060005b8181101561244057600c8054806124175761241661865d565b5b6001900381819060005260206000200160009055905580806124389061868c565b9150506123fd565b5050565b606060005b600d8054905081101561267757601460076000600d84815481106124705761246f6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090806001815401808255809150506001900390600052602060002090600a02016000909190919091506000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001820154816001015560028201548160020155600382018160030190805461258f9291906173fe565b5060048201816004019080546125a69291906173fe565b5060058201548160050155600682015481600601556007820160009054906101000a900460ff168160070160006101000a81548160ff02191690831515021790555060088201816008019080546125fc90618767565b612607929190617371565b506009820160009054906101000a900460ff168160090160006101000a81548160ff0219169083151502179055506009820160019054906101000a900460ff168160090160016101000a81548160ff0219169083151502179055505050808061266f9061868c565b915050612449565b506014805480602002602001604051908101604052809291908181526020016000905b8282101561294a57838290600052602060002090600a0201604051806101600160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016001820154815260200160028201548152602001600382018054806020026020016040519081016040528092919081815260200182805480156127ad57602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311612763575b505050505081526020016004820180548060200260200160405190810160405280929190818152602001828054801561283b57602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190600101908083116127f1575b5050505050815260200160058201548152602001600682015481526020016007820160009054906101000a900460ff1615151515815260200160088201805461288390618767565b80601f01602080910402602001604051908101604052809291908181526020018280546128af90618767565b80156128fc5780601f106128d1576101008083540402835291602001916128fc565b820191906000526020600020905b8154815290600101906020018083116128df57829003601f168201915b505050505081526020016009820160009054906101000a900460ff161515151581526020016009820160019054906101000a900460ff1615151515815250508152602001906001019061269a565b50505050905090565b60006002600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054149050919050565b60008060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600b015414612a60576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a57906187e5565b60405180910390fd5b612a68617450565b85816000019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050848160200181905250838160400181905250828161012001819052506202a30082612acb9190618607565b81610160018181525050806000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506020820151816001019080519060200190612b779291906174db565b506040820151816002019080519060200190612b949291906174db565b50606082015181600301556080820151816004015560a08201518160050160006101000a81548160ff02191690831515021790555060c0820151816006019080519060200190612be5929190617561565b5060e0820151816007019080519060200190612c02929190617561565b506101008201518160080155610120820151816009019080519060200190612c2b9291906174db565b5061014082015181600a015561016082015181600b015561018082015181600c0160006101000a81548160ff0219169083151502179055506101a082015181600c0160016101000a81548160ff0219169083151502179055509050506008869080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550505050505050565b60001515600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060070160009054906101000a900460ff16151514156132d95760008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160006101000a81548160ff02191690831515021790555060008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600c0160006101000a81548160ff021916908315150217905550600160106000828254612e159190618704565b925050819055506000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600080600090505b6008805490508110156130dc5760008060088381548110612ea057612e9f6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160009054906101000a900460ff168015612fa0575060008060088381548110612f3457612f336186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a015482105b156130c95760008060088381548110612fbc57612fbb6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a01549150600a6008828154811061303d5761303c6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b80806130d49061868c565b915050612e7c565b506000600a805490506000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600801546131319190618834565b905060005b600a805490508110156132645781600080600a848154811061315b5761315a6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600801546131ce9190618607565b600080600a84815481106131e5576131e46186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060080181905550808061325c9061868c565b915050613136565b506000600a80549050905060005b818110156132d457600a80548061328c5761328b61865d565b5b6001900381819060005260206000200160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055905580806132cc9061868c565b915050613272565b505050505b50565b6000816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600b015410156133305760019050613335565b600090505b92915050565b6133436175eb565b83816000019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505082816101000181905250818160a0018181525050620697808261339e9190618607565b8160c001818152505060008161014001901515908115158152505080600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160010155604082015181600201556060820151816003019080519060200190613470929190617561565b50608082015181600401908051906020019061348d929190617561565b5060a0820151816005015560c0820151816006015560e08201518160070160006101000a81548160ff0219169083151502179055506101008201518160080190805190602001906134df9291906174db565b506101208201518160090160006101000a81548160ff0219169083151502179055506101408201518160090160016101000a81548160ff021916908315150217905550905050600d849080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050505050565b60006006600083815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506001151560066000848152602001908152602001600020600b0160009054906101000a900460ff1615151415613b845760008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160006101000a81548160ff02191690831515021790555060008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600c0160006101000a81548160ff0219169083151502179055506001601060008282546136c09190618704565b925050819055506000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600080600090505b600880549050811015613987576000806008838154811061374b5761374a6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160009054906101000a900460ff16801561384b5750600080600883815481106137df576137de6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a015482105b156139745760008060088381548110613867576138666186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a01549150600a600882815481106138e8576138e76186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b808061397f9061868c565b915050613727565b506000600a805490506000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600801546139dc9190618834565b905060005b600a80549050811015613b0f5781600080600a8481548110613a0657613a056186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060080154613a799190618607565b600080600a8481548110613a9057613a8f6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600801819055508080613b079061868c565b9150506139e1565b506000600a80549050905060005b81811015613b7f57600a805480613b3757613b3661865d565b5b6001900381819060005260206000200160006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905590558080613b779061868c565b915050613b1d565b505050505b5050565b606060005b601254811015613bf2574260066000838152602001908152602001600020600a01541015613bdf57600c8190806001815401808255809150506001900390600052602060002001600090919091909150555b8080613bea9061868c565b915050613b8d565b50600c805480602002602001604051908101604052809291908181526020018280548015613c3f57602002820191906000526020600020905b815481526020019060010190808311613c2b575b5050505050905090565b60105481565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600301549050919050565b606060005b60088054905081101561403e5760008060088381548110613cc357613cc26186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160009054906101000a900460ff168015613dce575060008060088381548110613d5757613d566186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600c0160009054906101000a900460ff165b1561402b57601360008060088481548110613dec57613deb6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090806001815401808255809150506001900390600052602060002090600d02016000909190919091506000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001820181600101908054613ef590618767565b613f00929190617371565b506002820181600201908054613f1590618767565b613f20929190617371565b5060038201548160030155600482015481600401556005820160009054906101000a900460ff168160050160006101000a81548160ff0219169083151502179055506006820181600601908054613f789291906173fe565b506007820181600701908054613f8f9291906173fe565b50600882015481600801556009820181600901908054613fae90618767565b613fb9929190617371565b50600a82015481600a0155600b82015481600b0155600c820160009054906101000a900460ff1681600c0160006101000a81548160ff021916908315150217905550600c820160019054906101000a900460ff1681600c0160016101000a81548160ff02191690831515021790555050505b80806140369061868c565b915050613c9f565b506013805480602002602001604051908101604052809291908181526020016000905b8282101561443f57838290600052602060002090600d0201604051806101c00160405290816000820160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016001820180546140eb90618767565b80601f016020809104026020016040519081016040528092919081815260200182805461411790618767565b80156141645780601f1061413957610100808354040283529160200191614164565b820191906000526020600020905b81548152906001019060200180831161414757829003601f168201915b5050505050815260200160028201805461417d90618767565b80601f01602080910402602001604051908101604052809291908181526020018280546141a990618767565b80156141f65780601f106141cb576101008083540402835291602001916141f6565b820191906000526020600020905b8154815290600101906020018083116141d957829003601f168201915b5050505050815260200160038201548152602001600482015481526020016005820160009054906101000a900460ff16151515158152602001600682018054806020026020016040519081016040528092919081815260200182805480156142b357602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311614269575b505050505081526020016007820180548060200260200160405190810160405280929190818152602001828054801561434157602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190600101908083116142f7575b505050505081526020016008820154815260200160098201805461436490618767565b80601f016020809104026020016040519081016040528092919081815260200182805461439090618767565b80156143dd5780601f106143b2576101008083540402835291602001916143dd565b820191906000526020600020905b8154815290600101906020018083116143c057829003601f168201915b50505050508152602001600a8201548152602001600b8201548152602001600c820160009054906101000a900460ff16151515158152602001600c820160019054906101000a900460ff16151515158152505081526020019060010190614061565b50505050905090565b60336010546144579190618865565b60646000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600301546144a59190618865565b106145095760016000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160006101000a81548160ff02191690831515021790555061456f565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160006101000a81548160ff02191690831515021790555061456e816000611035565b5b50565b6001601060008282546145859190618607565b925050819055506001600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b60006006600083815260200190815260200160002060010160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905060066000838152602001908152602001600020600b0160009054906101000a900460ff1615614d485760005b6000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600601805490508110156149c8576011546000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060184815481106146f3576146f26186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600801546147669190618704565b6000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060184815481106147bc576147bb6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206008018190555060016000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060184815481106148805761487f6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a01546148f39190618704565b6000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206006018481548110614949576149486186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a018190555080806149c09061868c565b91505061464e565b5060005b6000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060070180549050811015614d46576011546000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206007018481548110614a7157614a706186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060080154614ae49190618607565b6000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206007018481548110614b3a57614b396186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206008018190555060016000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206007018481548110614bfe57614bfd6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a0154614c719190618607565b6000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206007018481548110614cc757614cc66186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a01819055508080614d3e9061868c565b9150506149cc565b505b5050565b600060066000838152602001908152602001600020600501546006600084815260200190815260200160002060040154614d869190618607565b9050603381614d959190618865565b60646006600085815260200190815260200160002060040154614db89190618865565b10614df157600160066000848152602001908152602001600020600b0160006101000a81548160ff021916908315150217905550614e21565b600060066000848152602001908152602001600020600b0160006101000a81548160ff0219169083151502179055505b60006006600084815260200190815260200160002060080160006101000a81548160ff0219169083151502179055505050565b6000600e80549050905060005b81811015614ec357600e805480614e7b57614e7a61865d565b5b6001900381819060005260206000200160006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905590558080614ebb9061868c565b915050614e61565b5050565b60008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600c0160009054906101000a900460ff16905090565b6000806033601054614f2f9190618865565b60646000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030154614f7d9190618865565b10614f8e5760018391509150614f96565b600083915091505b9250929050565b6000600980549050905060005b8181101561500c576009805480614fc457614fc361865d565b5b6001900381819060005260206000200160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055905580806150049061868c565b915050614faa565b5060005b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060180549050811015615144576000600560008060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060184815481106150b5576150b46186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550808061513c9061868c565b915050615010565b5060005b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206007018054905081101561527c576000600560008060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060070184815481106151ed576151ec6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555080806152749061868c565b915050615148565b505050565b6000601380549050905060005b818110156153af5760138054806152a8576152a761865d565b5b60019003818190600052602060002090600d0201600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff02191690556001820160006152f49190617331565b6002820160006153049190617331565b600382016000905560048201600090556005820160006101000a81549060ff02191690556006820160006153389190617310565b6007820160006153489190617310565b60088201600090556009820160006153609190617331565b600a820160009055600b820160009055600c820160006101000a81549060ff0219169055600c820160016101000a81549060ff02191690555050905580806153a79061868c565b91505061528e565b5050565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600c0160006101000a81548160ff021916908315150217905550615418336001611035565b61542133614572565b565b6060600d8054806020026020016040519081016040528092919081815260200182805480156154a757602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001906001019080831161545d575b5050505050905090565b6000838360008060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600b0154141561553a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161553190618428565b60405180910390fd5b6000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160009054906101000a900460ff16156155c9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016155c090618494565b60405180910390fd5b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600b01541415801561566657506000808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060050160009054906101000a900460ff165b6156a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161569c90618526565b60405180910390fd5b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205414615764576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161575b906185b8565b60405180910390fd5b60016000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160008282546157b69190618607565b925050819055506000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600601859080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060018060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550836000808873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600b015410156159325760019250615937565b600092505b50509392505050565b60005b6000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060180549050811015615a77576001600560008060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060184815481106159e8576159e76186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080615a6f9061868c565b915050615943565b5060005b6000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060070180549050811015615baf576001600560008060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206007018481548110615b2057615b1f6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080615ba79061868c565b915050615a7b565b5060005b600880549050811015615d0c57600015156005600060088481548110615bdc57615bdb6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151415615cf957600960088281548110615c6d57615c6c6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b8080615d049061868c565b915050615bb3565b5050565b615d18617661565b60125481600001818152505084816020019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505083816040018190525082816060018190525081816101200181815250506206978082615d889190618607565b81610140018181525050600181610100019015159081151581525050806006600060125481526020019081526020016000206000820151816000015560208201518160010160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506040820151816002019080519060200190615e279291906174db565b506060820151816003019080519060200190615e449291906174db565b506080820151816004015560a0820151816005015560c0820151816006019080519060200190615e75929190617561565b5060e0820151816007019080519060200190615e92929190617561565b506101008201518160080160006101000a81548160ff021916908315150217905550610120820151816009015561014082015181600a015561016082015181600b0160006101000a81548160ff0219169083151502179055509050506001601254615efd9190618607565b6012819055505050505050565b6001600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154615f599190618607565b600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010181905550600760008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600301339080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600401549050919050565b606060005b60088054905081101561630f57600115156000806008848154811061613f5761613e6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600c0160009054906101000a900460ff16151514801561625557506000151560076000600884815481106161db576161da6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060090160019054906101000a900460ff161515145b156162fc57600e600882815481106162705761626f6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b80806163079061868c565b915050616117565b50600e80548060200260200160405190810160405280929190818152602001828054801561639257602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311616348575b5050505050905090565b60005b6009805490508110156164cf57601154600080600984815481106163c6576163c56186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600801546164399190618704565b600080600984815481106164505761644f6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206008018190555080806164c79061868c565b91505061639f565b50565b606060005b6008805490508110156166bc5760001515600080600884815481106164ff576164fe6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600c0160019054906101000a900460ff16151514801561660257504260008060088481548110616597576165966186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600b0154105b156166a957600b6008828154811061661d5761661c6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b80806166b49061868c565b9150506164d7565b50600b80548060200260200160405190810160405280929190818152602001828054801561673f57602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190600101908083116166f5575b5050505050905090565b600060018060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054149050919050565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020154600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101546168639190618607565b90506033816168729190618865565b6064600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101546168c19190618865565b10616926576001600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060070160006101000a81548160ff021916908315150217905550616982565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060070160006101000a81548160ff0219169083151502179055505b5050565b6000600d80549050905060005b818110156169f557600d8054806169ad576169ac61865d565b5b6001900381819060005260206000200160006101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055905580806169ed9061868c565b915050616993565b5050565b60008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600c0160009054906101000a900460ff16905090565b6000616a5a826160c7565b616a6383613c4f565b601054616a709190618704565b616a7a9190618704565b9050919050565b60001515600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060070160009054906101000a900460ff16151514156171da5760005b6000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060180549050811015616e5a576011546000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206006018481548110616b8557616b846186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060080154616bf89190618704565b6000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206006018481548110616c4e57616c4d6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206008018190555060016000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206006018481548110616d1257616d116186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a0154616d859190618704565b6000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206006018481548110616ddb57616dda6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a01819055508080616e529061868c565b915050616ae0565b5060005b6000808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600701805490508110156171d8576011546000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206007018481548110616f0357616f026186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060080154616f769190618607565b6000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206007018481548110616fcc57616fcb6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206008018190555060016000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060070184815481106170905761708f6186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a01546171039190618607565b6000808060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206007018481548110617159576171586186d5565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a018190555080806171d09061868c565b915050616e5e565b505b50565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160066000838152602001908152602001600020600401546172269190618607565b600660008381526020019081526020016000206004018190555060066000828152602001908152602001600020600601339080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060016002600083815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050565b508054600082559060005260206000209081019061732e91906176dc565b50565b50805461733d90618767565b6000825580601f1061734f575061736e565b601f01602090049060005260206000209081019061736d91906176dc565b5b50565b82805461737d90618767565b90600052602060002090601f01602090048101928261739f57600085556173ed565b82601f106173b057805485556173ed565b828001600101855582156173ed57600052602060002091601f016020900482015b828111156173ec5782548255916001019190600101906173d1565b5b5090506173fa91906176dc565b5090565b82805482825590600052602060002090810192821561743f5760005260206000209182015b8281111561743e578254825591600101919060010190617423565b5b50905061744c91906176dc565b5090565b604051806101c00160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001606081526020016060815260200160008152602001600081526020016000151581526020016060815260200160608152602001600081526020016060815260200160008152602001600081526020016000151581526020016000151581525090565b8280546174e790618767565b90600052602060002090601f0160209004810192826175095760008555617550565b82601f1061752257805160ff1916838001178555617550565b82800160010185558215617550579182015b8281111561754f578251825591602001919060010190617534565b5b50905061755d91906176dc565b5090565b8280548282559060005260206000209081019282156175da579160200282015b828111156175d95782518260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555091602001919060010190617581565b5b5090506175e791906176dc565b5090565b604051806101600160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001600081526020016000815260200160608152602001606081526020016000815260200160008152602001600015158152602001606081526020016000151581526020016000151581525090565b60405180610180016040528060008152602001600073ffffffffffffffffffffffffffffffffffffffff16815260200160608152602001606081526020016000815260200160008152602001606081526020016060815260200160001515815260200160008152602001600081526020016000151581525090565b5b808211156176f55760008160009055506001016176dd565b5090565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006177388261770d565b9050919050565b6177488161772d565b811461775357600080fd5b50565b6000813590506177658161773f565b92915050565b6000819050919050565b61777e8161776b565b811461778957600080fd5b50565b60008135905061779b81617775565b92915050565b6000806000606084860312156177ba576177b9617703565b5b60006177c886828701617756565b93505060206177d986828701617756565b92505060406177ea8682870161778c565b9150509250925092565b60008115159050919050565b617809816177f4565b82525050565b60006020820190506178246000830184617800565b92915050565b6000602082840312156178405761783f617703565b5b600061784e8482850161778c565b91505092915050565b60006020828403121561786d5761786c617703565b5b600061787b84828501617756565b91505092915050565b61788d816177f4565b811461789857600080fd5b50565b6000813590506178aa81617884565b92915050565b600080604083850312156178c7576178c6617703565b5b60006178d585828601617756565b92505060206178e68582860161789b565b9150509250929050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6179258161772d565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561796557808201518184015260208101905061794a565b83811115617974576000848401525b50505050565b6000601f19601f8301169050919050565b60006179968261792b565b6179a08185617936565b93506179b0818560208601617947565b6179b98161797a565b840191505092915050565b6179cd8161776b565b82525050565b6179dc816177f4565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b6000617a1a838361791c565b60208301905092915050565b6000602082019050919050565b6000617a3e826179e2565b617a4881856179ed565b9350617a53836179fe565b8060005b83811015617a84578151617a6b8882617a0e565b9750617a7683617a26565b925050600181019050617a57565b5085935050505092915050565b60006101c083016000830151617aaa600086018261791c565b5060208301518482036020860152617ac2828261798b565b91505060408301518482036040860152617adc828261798b565b9150506060830151617af160608601826179c4565b506080830151617b0460808601826179c4565b5060a0830151617b1760a08601826179d3565b5060c083015184820360c0860152617b2f8282617a33565b91505060e083015184820360e0860152617b498282617a33565b915050610100830151617b606101008601826179c4565b50610120830151848203610120860152617b7a828261798b565b915050610140830151617b916101408601826179c4565b50610160830151617ba66101608601826179c4565b50610180830151617bbb6101808601826179d3565b506101a0830151617bd06101a08601826179d3565b508091505092915050565b6000617be78383617a91565b905092915050565b6000602082019050919050565b6000617c07826178f0565b617c1181856178fb565b935083602082028501617c238561790c565b8060005b85811015617c5f5784840389528151617c408582617bdb565b9450617c4b83617bef565b925060208a01995050600181019050617c27565b50829750879550505050505092915050565b60006020820190508181036000830152617c8b8184617bfc565b905092915050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600061016083016000830151617cd8600086018261791c565b506020830151617ceb60208601826179c4565b506040830151617cfe60408601826179c4565b5060608301518482036060860152617d168282617a33565b91505060808301518482036080860152617d308282617a33565b91505060a0830151617d4560a08601826179c4565b5060c0830151617d5860c08601826179c4565b5060e0830151617d6b60e08601826179d3565b50610100830151848203610100860152617d85828261798b565b915050610120830151617d9c6101208601826179d3565b50610140830151617db16101408601826179d3565b508091505092915050565b6000617dc88383617cbf565b905092915050565b6000602082019050919050565b6000617de882617c93565b617df28185617c9e565b935083602082028501617e0485617caf565b8060005b85811015617e405784840389528151617e218582617dbc565b9450617e2c83617dd0565b925060208a01995050600181019050617e08565b50829750879550505050505092915050565b60006020820190508181036000830152617e6c8184617ddd565b905092915050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b617eb68261797a565b810181811067ffffffffffffffff82111715617ed557617ed4617e7e565b5b80604052505050565b6000617ee86176f9565b9050617ef48282617ead565b919050565b600067ffffffffffffffff821115617f1457617f13617e7e565b5b617f1d8261797a565b9050602081019050919050565b82818337600083830152505050565b6000617f4c617f4784617ef9565b617ede565b905082815260208101848484011115617f6857617f67617e79565b5b617f73848285617f2a565b509392505050565b600082601f830112617f9057617f8f617e74565b5b8135617fa0848260208601617f39565b91505092915050565b600080600080600060a08688031215617fc557617fc4617703565b5b6000617fd388828901617756565b955050602086013567ffffffffffffffff811115617ff457617ff3617708565b5b61800088828901617f7b565b945050604086013567ffffffffffffffff81111561802157618020617708565b5b61802d88828901617f7b565b935050606086013567ffffffffffffffff81111561804e5761804d617708565b5b61805a88828901617f7b565b925050608061806b8882890161778c565b9150509295509295909350565b6000806040838503121561808f5761808e617703565b5b600061809d85828601617756565b92505060206180ae8582860161778c565b9150509250929050565b6000806000606084860312156180d1576180d0617703565b5b60006180df86828701617756565b935050602084013567ffffffffffffffff811115618100576180ff617708565b5b61810c86828701617f7b565b925050604061811d8682870161778c565b9150509250925092565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600061815f83836179c4565b60208301905092915050565b6000602082019050919050565b600061818382618127565b61818d8185618132565b935061819883618143565b8060005b838110156181c95781516181b08882618153565b97506181bb8361816b565b92505060018101905061819c565b5085935050505092915050565b600060208201905081810360008301526181f08184618178565b905092915050565b6182018161776b565b82525050565b600060208201905061821c60008301846181f8565b92915050565b60006040820190506182376000830185617800565b6182446020830184617800565b9392505050565b600082825260208201905092915050565b6000618267826179e2565b618271818561824b565b935061827c836179fe565b8060005b838110156182ad5781516182948882617a0e565b975061829f83617a26565b925050600181019050618280565b5085935050505092915050565b600060208201905081810360008301526182d4818461825c565b905092915050565b600080600080608085870312156182f6576182f5617703565b5b600061830487828801617756565b945050602085013567ffffffffffffffff81111561832557618324617708565b5b61833187828801617f7b565b935050604085013567ffffffffffffffff81111561835257618351617708565b5b61835e87828801617f7b565b925050606061836f8782880161778c565b91505092959194509250565b6183848161772d565b82525050565b600060208201905061839f600083018461837b565b92915050565b600082825260208201905092915050565b7f4f7267616e697a6174696f6e206164647265737320646f6573206e6f7420657860008201527f6973742100000000000000000000000000000000000000000000000000000000602082015250565b60006184126024836183a5565b915061841d826183b6565b604082019050919050565b6000602082019050818103600083015261844181618405565b9050919050565b7f4f7267616e697a6174696f6e20616c7265616479207665726966696564210000600082015250565b600061847e601e836183a5565b915061848982618448565b602082019050919050565b600060208201905081810360008301526184ad81618471565b9050919050565b7f566f746572206f7267616e697a6174696f6e206973206e6f742076657269666960008201527f65642c206e6f74207065726d697474656420746f20766f746521000000000000602082015250565b6000618510603a836183a5565b915061851b826184b4565b604082019050919050565b6000602082019050818103600083015261853f81618503565b9050919050565b7f566f746572206f7267616e697a6174696f6e2063616e6e6f7420766f7465206d60008201527f6f7265207468616e206f6e636521000000000000000000000000000000000000602082015250565b60006185a2602e836183a5565b91506185ad82618546565b604082019050919050565b600060208201905081810360008301526185d181618595565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006186128261776b565b915061861d8361776b565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115618652576186516185d8565b5b828201905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b60006186978261776b565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156186ca576186c96185d8565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600061870f8261776b565b915061871a8361776b565b92508282101561872d5761872c6185d8565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061877f57607f821691505b6020821081141561879357618792618738565b5b50919050565b7f4f7267616e697a6174696f6e20616c7265616479207265676973746572656421600082015250565b60006187cf6020836183a5565b91506187da82618799565b602082019050919050565b600060208201905081810360008301526187fe816187c2565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061883f8261776b565b915061884a8361776b565b92508261885a57618859618805565b5b828204905092915050565b60006188708261776b565b915061887b8361776b565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156188b4576188b36185d8565b5b82820290509291505056fea2646970667358221220d23c73a98d67933766a8fb5dd76104119b3a0c5c135d3cda1a20de941746d08b64736f6c63430008090033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x28A JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x7D7E898A GT PUSH2 0x15C JUMPI DUP1 PUSH4 0xB7627E41 GT PUSH2 0xCE JUMPI DUP1 PUSH4 0xDE2D0AD0 GT PUSH2 0x87 JUMPI DUP1 PUSH4 0xDE2D0AD0 EQ PUSH2 0x724 JUMPI DUP1 PUSH4 0xE3323ABA EQ PUSH2 0x72E JUMPI DUP1 PUSH4 0xE75176B5 EQ PUSH2 0x74C JUMPI DUP1 PUSH4 0xEF2D5847 EQ PUSH2 0x77C JUMPI DUP1 PUSH4 0xF851A440 EQ PUSH2 0x798 JUMPI DUP1 PUSH4 0xFA157F69 EQ PUSH2 0x7B6 JUMPI PUSH2 0x28A JUMP JUMPDEST DUP1 PUSH4 0xB7627E41 EQ PUSH2 0x662 JUMPI DUP1 PUSH4 0xBB6F5BB4 EQ PUSH2 0x692 JUMPI DUP1 PUSH4 0xBC489AA9 EQ PUSH2 0x6B0 JUMPI DUP1 PUSH4 0xBFAAE62F EQ PUSH2 0x6BA JUMPI DUP1 PUSH4 0xC9DFCA10 EQ PUSH2 0x6D8 JUMPI DUP1 PUSH4 0xCDC1A476 EQ PUSH2 0x708 JUMPI PUSH2 0x28A JUMP JUMPDEST DUP1 PUSH4 0x914F4CF2 GT PUSH2 0x120 JUMPI DUP1 PUSH4 0x914F4CF2 EQ PUSH2 0x5B6 JUMPI DUP1 PUSH4 0x972AC5BB EQ PUSH2 0x5C0 JUMPI DUP1 PUSH4 0x99D43C7C EQ PUSH2 0x5DE JUMPI DUP1 PUSH4 0xA52DA85D EQ PUSH2 0x60E JUMPI DUP1 PUSH4 0xAC64FCDE EQ PUSH2 0x62A JUMPI DUP1 PUSH4 0xB5E801D5 EQ PUSH2 0x646 JUMPI PUSH2 0x28A JUMP JUMPDEST DUP1 PUSH4 0x7D7E898A EQ PUSH2 0x537 JUMPI DUP1 PUSH4 0x80007E83 EQ PUSH2 0x541 JUMPI DUP1 PUSH4 0x86BAE568 EQ PUSH2 0x55F JUMPI DUP1 PUSH4 0x8E349519 EQ PUSH2 0x590 JUMPI DUP1 PUSH4 0x8FC0ED2F EQ PUSH2 0x5AC JUMPI PUSH2 0x28A JUMP JUMPDEST DUP1 PUSH4 0x4438D4B0 GT PUSH2 0x200 JUMPI DUP1 PUSH4 0x5CF9303F GT PUSH2 0x1B9 JUMPI DUP1 PUSH4 0x5CF9303F EQ PUSH2 0x479 JUMPI DUP1 PUSH4 0x5D0161F1 EQ PUSH2 0x4A9 JUMPI DUP1 PUSH4 0x5E8E5EFD EQ PUSH2 0x4C7 JUMPI DUP1 PUSH4 0x62AE7AC7 EQ PUSH2 0x4E3 JUMPI DUP1 PUSH4 0x6DB58829 EQ PUSH2 0x4FF JUMPI DUP1 PUSH4 0x729C7059 EQ PUSH2 0x51B JUMPI PUSH2 0x28A JUMP JUMPDEST DUP1 PUSH4 0x4438D4B0 EQ PUSH2 0x3B9 JUMPI DUP1 PUSH4 0x4648DF2A EQ PUSH2 0x3D5 JUMPI DUP1 PUSH4 0x482BD55B EQ PUSH2 0x405 JUMPI DUP1 PUSH4 0x4945A7AD EQ PUSH2 0x421 JUMPI DUP1 PUSH4 0x4BEA3DB7 EQ PUSH2 0x43D JUMPI DUP1 PUSH4 0x4CF5D552 EQ PUSH2 0x45B JUMPI PUSH2 0x28A JUMP JUMPDEST DUP1 PUSH4 0x22FB1DFD GT PUSH2 0x252 JUMPI DUP1 PUSH4 0x22FB1DFD EQ PUSH2 0x31D JUMPI DUP1 PUSH4 0x2D80468D EQ PUSH2 0x327 JUMPI DUP1 PUSH4 0x3822B758 EQ PUSH2 0x345 JUMPI DUP1 PUSH4 0x3A169303 EQ PUSH2 0x34F JUMPI DUP1 PUSH4 0x3E85747E EQ PUSH2 0x36D JUMPI DUP1 PUSH4 0x440370FE EQ PUSH2 0x39D JUMPI PUSH2 0x28A JUMP JUMPDEST DUP1 PUSH4 0x2D32F90 EQ PUSH2 0x28F JUMPI DUP1 PUSH4 0x134714CA EQ PUSH2 0x2BF JUMPI DUP1 PUSH4 0x149D4146 EQ PUSH2 0x2C9 JUMPI DUP1 PUSH4 0x14CB11E8 EQ PUSH2 0x2E5 JUMPI DUP1 PUSH4 0x1E477180 EQ PUSH2 0x301 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2A9 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2A4 SWAP2 SWAP1 PUSH2 0x77A1 JUMP JUMPDEST PUSH2 0x7D2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2B6 SWAP2 SWAP1 PUSH2 0x780F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2C7 PUSH2 0xC62 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x2E3 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2DE SWAP2 SWAP1 PUSH2 0x782A JUMP JUMPDEST PUSH2 0xD6C JUMP JUMPDEST STOP JUMPDEST PUSH2 0x2FF PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2FA SWAP2 SWAP1 PUSH2 0x7857 JUMP JUMPDEST PUSH2 0xE78 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x31B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x316 SWAP2 SWAP1 PUSH2 0x78B0 JUMP JUMPDEST PUSH2 0x1035 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x325 PUSH2 0x1C5D JUMP JUMPDEST STOP JUMPDEST PUSH2 0x32F PUSH2 0x1CD0 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x33C SWAP2 SWAP1 PUSH2 0x7C71 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x34D PUSH2 0x23F0 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x357 PUSH2 0x2444 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x364 SWAP2 SWAP1 PUSH2 0x7E52 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x387 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x382 SWAP2 SWAP1 PUSH2 0x7857 JUMP JUMPDEST PUSH2 0x2953 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x394 SWAP2 SWAP1 PUSH2 0x780F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x3B7 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3B2 SWAP2 SWAP1 PUSH2 0x7FA9 JUMP JUMPDEST PUSH2 0x29DC JUMP JUMPDEST STOP JUMPDEST PUSH2 0x3D3 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3CE SWAP2 SWAP1 PUSH2 0x7857 JUMP JUMPDEST PUSH2 0x2CF2 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x3EF PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x3EA SWAP2 SWAP1 PUSH2 0x8078 JUMP JUMPDEST PUSH2 0x32DC JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3FC SWAP2 SWAP1 PUSH2 0x780F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x41F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x41A SWAP2 SWAP1 PUSH2 0x80B8 JUMP JUMPDEST PUSH2 0x333B JUMP JUMPDEST STOP JUMPDEST PUSH2 0x43B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x436 SWAP2 SWAP1 PUSH2 0x782A JUMP JUMPDEST PUSH2 0x358E JUMP JUMPDEST STOP JUMPDEST PUSH2 0x445 PUSH2 0x3B88 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x452 SWAP2 SWAP1 PUSH2 0x81D6 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x463 PUSH2 0x3C49 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x470 SWAP2 SWAP1 PUSH2 0x8207 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x493 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x48E SWAP2 SWAP1 PUSH2 0x7857 JUMP JUMPDEST PUSH2 0x3C4F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4A0 SWAP2 SWAP1 PUSH2 0x8207 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x4B1 PUSH2 0x3C9A JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x4BE SWAP2 SWAP1 PUSH2 0x7C71 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x4E1 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4DC SWAP2 SWAP1 PUSH2 0x7857 JUMP JUMPDEST PUSH2 0x4448 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x4FD PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x4F8 SWAP2 SWAP1 PUSH2 0x7857 JUMP JUMPDEST PUSH2 0x4572 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x519 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x514 SWAP2 SWAP1 PUSH2 0x782A JUMP JUMPDEST PUSH2 0x45E7 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x535 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x530 SWAP2 SWAP1 PUSH2 0x782A JUMP JUMPDEST PUSH2 0x4D4C JUMP JUMPDEST STOP JUMPDEST PUSH2 0x53F PUSH2 0x4E54 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x549 PUSH2 0x4EC7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x556 SWAP2 SWAP1 PUSH2 0x780F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x579 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x574 SWAP2 SWAP1 PUSH2 0x78B0 JUMP JUMPDEST PUSH2 0x4F1D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x587 SWAP3 SWAP2 SWAP1 PUSH2 0x8222 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x5AA PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5A5 SWAP2 SWAP1 PUSH2 0x7857 JUMP JUMPDEST PUSH2 0x4F9D JUMP JUMPDEST STOP JUMPDEST PUSH2 0x5B4 PUSH2 0x5281 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x5BE PUSH2 0x53B3 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x5C8 PUSH2 0x5423 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x5D5 SWAP2 SWAP1 PUSH2 0x82BA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x5F8 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x5F3 SWAP2 SWAP1 PUSH2 0x77A1 JUMP JUMPDEST PUSH2 0x54B1 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x605 SWAP2 SWAP1 PUSH2 0x780F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x628 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x623 SWAP2 SWAP1 PUSH2 0x7857 JUMP JUMPDEST PUSH2 0x5940 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x644 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x63F SWAP2 SWAP1 PUSH2 0x82DC JUMP JUMPDEST PUSH2 0x5D10 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x660 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x65B SWAP2 SWAP1 PUSH2 0x7857 JUMP JUMPDEST PUSH2 0x5F0A JUMP JUMPDEST STOP JUMPDEST PUSH2 0x67C PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x677 SWAP2 SWAP1 PUSH2 0x7857 JUMP JUMPDEST PUSH2 0x60C7 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x689 SWAP2 SWAP1 PUSH2 0x8207 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x69A PUSH2 0x6112 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x6A7 SWAP2 SWAP1 PUSH2 0x82BA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x6B8 PUSH2 0x639C JUMP JUMPDEST STOP JUMPDEST PUSH2 0x6C2 PUSH2 0x64D2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x6CF SWAP2 SWAP1 PUSH2 0x82BA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x6F2 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x6ED SWAP2 SWAP1 PUSH2 0x7857 JUMP JUMPDEST PUSH2 0x6749 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x6FF SWAP2 SWAP1 PUSH2 0x780F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x722 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x71D SWAP2 SWAP1 PUSH2 0x7857 JUMP JUMPDEST PUSH2 0x67D1 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x72C PUSH2 0x6986 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x736 PUSH2 0x69F9 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x743 SWAP2 SWAP1 PUSH2 0x780F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x766 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x761 SWAP2 SWAP1 PUSH2 0x7857 JUMP JUMPDEST PUSH2 0x6A4F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x773 SWAP2 SWAP1 PUSH2 0x8207 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x796 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x791 SWAP2 SWAP1 PUSH2 0x7857 JUMP JUMPDEST PUSH2 0x6A81 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x7A0 PUSH2 0x71DD JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x7AD SWAP2 SWAP1 PUSH2 0x838A JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x7D0 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x7CB SWAP2 SWAP1 PUSH2 0x782A JUMP JUMPDEST PUSH2 0x7203 JUMP JUMPDEST STOP JUMPDEST PUSH1 0x0 DUP4 DUP4 PUSH1 0x0 DUP1 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xB ADD SLOAD EQ ISZERO PUSH2 0x85B JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x852 SWAP1 PUSH2 0x8428 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0x8EA JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x8E1 SWAP1 PUSH2 0x8494 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xB ADD SLOAD EQ ISZERO DUP1 ISZERO PUSH2 0x987 JUMPI POP PUSH1 0x0 DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND JUMPDEST PUSH2 0x9C6 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x9BD SWAP1 PUSH2 0x8526 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD EQ PUSH2 0xA85 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xA7C SWAP1 PUSH2 0x85B8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x0 DUP1 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0xAD7 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0x0 DUP1 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP6 SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x2 PUSH1 0x1 PUSH1 0x0 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP DUP4 PUSH1 0x0 DUP1 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xB ADD SLOAD LT ISZERO PUSH2 0xC54 JUMPI PUSH1 0x1 SWAP3 POP PUSH2 0xC59 JUMP JUMPDEST PUSH1 0x0 SWAP3 POP JUMPDEST POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x14 DUP1 SLOAD SWAP1 POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0xD68 JUMPI PUSH1 0x14 DUP1 SLOAD DUP1 PUSH2 0xC89 JUMPI PUSH2 0xC88 PUSH2 0x865D JUMP JUMPDEST JUMPDEST PUSH1 0x1 SWAP1 SUB DUP2 DUP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0xA MUL ADD PUSH1 0x0 DUP1 DUP3 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE PUSH1 0x1 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0x2 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0x3 DUP3 ADD PUSH1 0x0 PUSH2 0xCE5 SWAP2 SWAP1 PUSH2 0x7310 JUMP JUMPDEST PUSH1 0x4 DUP3 ADD PUSH1 0x0 PUSH2 0xCF5 SWAP2 SWAP1 PUSH2 0x7310 JUMP JUMPDEST PUSH1 0x5 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0x6 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0x7 DUP3 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH1 0xFF MUL NOT AND SWAP1 SSTORE PUSH1 0x8 DUP3 ADD PUSH1 0x0 PUSH2 0xD29 SWAP2 SWAP1 PUSH2 0x7331 JUMP JUMPDEST PUSH1 0x9 DUP3 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH1 0xFF MUL NOT AND SWAP1 SSTORE PUSH1 0x9 DUP3 ADD PUSH1 0x1 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH1 0xFF MUL NOT AND SWAP1 SSTORE POP POP SWAP1 SSTORE DUP1 DUP1 PUSH2 0xD60 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0xC6F JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x6 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD SLOAD PUSH2 0xD8F SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST PUSH1 0x6 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD DUP2 SWAP1 SSTORE POP PUSH1 0x6 PUSH1 0x0 DUP3 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD CALLER SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x2 DUP1 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x7 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD SLOAD PUSH2 0xEC7 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST PUSH1 0x7 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD DUP2 SWAP1 SSTORE POP PUSH1 0x7 PUSH1 0x0 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD CALLER SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x2 PUSH1 0x3 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP POP JUMP JUMPDEST DUP1 ISZERO PUSH2 0x164C JUMPI PUSH1 0x0 DUP1 JUMPDEST PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD SLOAD DUP2 LT ISZERO PUSH2 0x13C6 JUMPI PUSH1 0x1 PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x10E0 JUMPI PUSH2 0x10DF PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD SLOAD PUSH2 0x1153 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x11A9 JUMPI PUSH2 0x11A8 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD DUP2 SWAP1 SSTORE POP PUSH1 0x11 SLOAD DUP3 PUSH2 0x1223 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST SWAP2 POP PUSH1 0x11 SLOAD PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x127E JUMPI PUSH2 0x127D PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD SLOAD PUSH2 0x12F1 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x1347 JUMPI PUSH2 0x1346 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD DUP2 SWAP1 SSTORE POP DUP1 DUP1 PUSH2 0x13BE SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x103F JUMP JUMPDEST POP DUP1 PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD SLOAD PUSH2 0x1414 SWAP2 SWAP1 PUSH2 0x8704 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD DUP2 SWAP1 SSTORE POP PUSH1 0x0 JUMPDEST PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD SLOAD DUP2 LT ISZERO PUSH2 0x1645 JUMPI PUSH1 0x1 PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x14FD JUMPI PUSH2 0x14FC PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD SLOAD PUSH2 0x1570 SWAP2 SWAP1 PUSH2 0x8704 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x15C6 JUMPI PUSH2 0x15C5 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD DUP2 SWAP1 SSTORE POP DUP1 DUP1 PUSH2 0x163D SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x145C JUMP JUMPDEST POP POP PUSH2 0x1C59 JUMP JUMPDEST PUSH1 0x0 DUP1 JUMPDEST PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD SLOAD DUP2 LT ISZERO PUSH2 0x19D7 JUMPI PUSH1 0x1 PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x16F1 JUMPI PUSH2 0x16F0 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD SLOAD PUSH2 0x1764 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x17BA JUMPI PUSH2 0x17B9 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD DUP2 SWAP1 SSTORE POP PUSH1 0x11 SLOAD DUP3 PUSH2 0x1834 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST SWAP2 POP PUSH1 0x11 SLOAD PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x188F JUMPI PUSH2 0x188E PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD SLOAD PUSH2 0x1902 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x1958 JUMPI PUSH2 0x1957 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD DUP2 SWAP1 SSTORE POP DUP1 DUP1 PUSH2 0x19CF SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x1650 JUMP JUMPDEST POP DUP1 PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD SLOAD PUSH2 0x1A25 SWAP2 SWAP1 PUSH2 0x8704 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD DUP2 SWAP1 SSTORE POP PUSH1 0x0 JUMPDEST PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD SLOAD DUP2 LT ISZERO PUSH2 0x1C56 JUMPI PUSH1 0x1 PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x1B0E JUMPI PUSH2 0x1B0D PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD SLOAD PUSH2 0x1B81 SWAP2 SWAP1 PUSH2 0x8704 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x1BD7 JUMPI PUSH2 0x1BD6 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD DUP2 SWAP1 SSTORE POP DUP1 DUP1 PUSH2 0x1C4E SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x1A6D JUMP JUMPDEST POP POP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xB DUP1 SLOAD SWAP1 POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x1CCC JUMPI PUSH1 0xB DUP1 SLOAD DUP1 PUSH2 0x1C84 JUMPI PUSH2 0x1C83 PUSH2 0x865D JUMP JUMPDEST JUMPDEST PUSH1 0x1 SWAP1 SUB DUP2 DUP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE SWAP1 SSTORE DUP1 DUP1 PUSH2 0x1CC4 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x1C6A JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 JUMPDEST PUSH1 0x8 DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x1FE6 JUMPI PUSH1 0x0 ISZERO ISZERO PUSH1 0x0 DUP1 PUSH1 0x8 DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x1CFD JUMPI PUSH2 0x1CFC PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xC ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO EQ ISZERO PUSH2 0x1FD3 JUMPI PUSH1 0x13 PUSH1 0x0 DUP1 PUSH1 0x8 DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x1D94 JUMPI PUSH2 0x1D93 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0xD MUL ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 POP PUSH1 0x0 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x1 DUP3 ADD DUP2 PUSH1 0x1 ADD SWAP1 DUP1 SLOAD PUSH2 0x1E9D SWAP1 PUSH2 0x8767 JUMP JUMPDEST PUSH2 0x1EA8 SWAP3 SWAP2 SWAP1 PUSH2 0x7371 JUMP JUMPDEST POP PUSH1 0x2 DUP3 ADD DUP2 PUSH1 0x2 ADD SWAP1 DUP1 SLOAD PUSH2 0x1EBD SWAP1 PUSH2 0x8767 JUMP JUMPDEST PUSH2 0x1EC8 SWAP3 SWAP2 SWAP1 PUSH2 0x7371 JUMP JUMPDEST POP PUSH1 0x3 DUP3 ADD SLOAD DUP2 PUSH1 0x3 ADD SSTORE PUSH1 0x4 DUP3 ADD SLOAD DUP2 PUSH1 0x4 ADD SSTORE PUSH1 0x5 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 PUSH1 0x5 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0x6 DUP3 ADD DUP2 PUSH1 0x6 ADD SWAP1 DUP1 SLOAD PUSH2 0x1F20 SWAP3 SWAP2 SWAP1 PUSH2 0x73FE JUMP JUMPDEST POP PUSH1 0x7 DUP3 ADD DUP2 PUSH1 0x7 ADD SWAP1 DUP1 SLOAD PUSH2 0x1F37 SWAP3 SWAP2 SWAP1 PUSH2 0x73FE JUMP JUMPDEST POP PUSH1 0x8 DUP3 ADD SLOAD DUP2 PUSH1 0x8 ADD SSTORE PUSH1 0x9 DUP3 ADD DUP2 PUSH1 0x9 ADD SWAP1 DUP1 SLOAD PUSH2 0x1F56 SWAP1 PUSH2 0x8767 JUMP JUMPDEST PUSH2 0x1F61 SWAP3 SWAP2 SWAP1 PUSH2 0x7371 JUMP JUMPDEST POP PUSH1 0xA DUP3 ADD SLOAD DUP2 PUSH1 0xA ADD SSTORE PUSH1 0xB DUP3 ADD SLOAD DUP2 PUSH1 0xB ADD SSTORE PUSH1 0xC DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 PUSH1 0xC ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0xC DUP3 ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 PUSH1 0xC ADD PUSH1 0x1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP POP POP JUMPDEST DUP1 DUP1 PUSH2 0x1FDE SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x1CD5 JUMP JUMPDEST POP PUSH1 0x13 DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 SWAP1 JUMPDEST DUP3 DUP3 LT ISZERO PUSH2 0x23E7 JUMPI DUP4 DUP3 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0xD MUL ADD PUSH1 0x40 MLOAD DUP1 PUSH2 0x1C0 ADD PUSH1 0x40 MSTORE SWAP1 DUP2 PUSH1 0x0 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1 DUP3 ADD DUP1 SLOAD PUSH2 0x2093 SWAP1 PUSH2 0x8767 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x20BF SWAP1 PUSH2 0x8767 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x210C JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x20E1 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x210C JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x20EF JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x2 DUP3 ADD DUP1 SLOAD PUSH2 0x2125 SWAP1 PUSH2 0x8767 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x2151 SWAP1 PUSH2 0x8767 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x219E JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x2173 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x219E JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x2181 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x3 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x4 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x5 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x6 DUP3 ADD DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD DUP1 ISZERO PUSH2 0x225B JUMPI PUSH1 0x20 MUL DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 ADD SWAP1 DUP1 DUP4 GT PUSH2 0x2211 JUMPI JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x7 DUP3 ADD DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD DUP1 ISZERO PUSH2 0x22E9 JUMPI PUSH1 0x20 MUL DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 ADD SWAP1 DUP1 DUP4 GT PUSH2 0x229F JUMPI JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x8 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x9 DUP3 ADD DUP1 SLOAD PUSH2 0x230C SWAP1 PUSH2 0x8767 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x2338 SWAP1 PUSH2 0x8767 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x2385 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x235A JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x2385 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x2368 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xA DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xB DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xC DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xC DUP3 ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO ISZERO ISZERO DUP2 MSTORE POP POP DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x2009 JUMP JUMPDEST POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC DUP1 SLOAD SWAP1 POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x2440 JUMPI PUSH1 0xC DUP1 SLOAD DUP1 PUSH2 0x2417 JUMPI PUSH2 0x2416 PUSH2 0x865D JUMP JUMPDEST JUMPDEST PUSH1 0x1 SWAP1 SUB DUP2 DUP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SSTORE SWAP1 SSTORE DUP1 DUP1 PUSH2 0x2438 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x23FD JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 JUMPDEST PUSH1 0xD DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x2677 JUMPI PUSH1 0x14 PUSH1 0x7 PUSH1 0x0 PUSH1 0xD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x2470 JUMPI PUSH2 0x246F PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0xA MUL ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 POP PUSH1 0x0 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x1 DUP3 ADD SLOAD DUP2 PUSH1 0x1 ADD SSTORE PUSH1 0x2 DUP3 ADD SLOAD DUP2 PUSH1 0x2 ADD SSTORE PUSH1 0x3 DUP3 ADD DUP2 PUSH1 0x3 ADD SWAP1 DUP1 SLOAD PUSH2 0x258F SWAP3 SWAP2 SWAP1 PUSH2 0x73FE JUMP JUMPDEST POP PUSH1 0x4 DUP3 ADD DUP2 PUSH1 0x4 ADD SWAP1 DUP1 SLOAD PUSH2 0x25A6 SWAP3 SWAP2 SWAP1 PUSH2 0x73FE JUMP JUMPDEST POP PUSH1 0x5 DUP3 ADD SLOAD DUP2 PUSH1 0x5 ADD SSTORE PUSH1 0x6 DUP3 ADD SLOAD DUP2 PUSH1 0x6 ADD SSTORE PUSH1 0x7 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 PUSH1 0x7 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0x8 DUP3 ADD DUP2 PUSH1 0x8 ADD SWAP1 DUP1 SLOAD PUSH2 0x25FC SWAP1 PUSH2 0x8767 JUMP JUMPDEST PUSH2 0x2607 SWAP3 SWAP2 SWAP1 PUSH2 0x7371 JUMP JUMPDEST POP PUSH1 0x9 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 PUSH1 0x9 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0x9 DUP3 ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 PUSH1 0x9 ADD PUSH1 0x1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP POP POP DUP1 DUP1 PUSH2 0x266F SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x2449 JUMP JUMPDEST POP PUSH1 0x14 DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 SWAP1 JUMPDEST DUP3 DUP3 LT ISZERO PUSH2 0x294A JUMPI DUP4 DUP3 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0xA MUL ADD PUSH1 0x40 MLOAD DUP1 PUSH2 0x160 ADD PUSH1 0x40 MSTORE SWAP1 DUP2 PUSH1 0x0 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x2 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x3 DUP3 ADD DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD DUP1 ISZERO PUSH2 0x27AD JUMPI PUSH1 0x20 MUL DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 ADD SWAP1 DUP1 DUP4 GT PUSH2 0x2763 JUMPI JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x4 DUP3 ADD DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD DUP1 ISZERO PUSH2 0x283B JUMPI PUSH1 0x20 MUL DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 ADD SWAP1 DUP1 DUP4 GT PUSH2 0x27F1 JUMPI JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x5 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x6 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x7 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x8 DUP3 ADD DUP1 SLOAD PUSH2 0x2883 SWAP1 PUSH2 0x8767 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x28AF SWAP1 PUSH2 0x8767 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x28FC JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x28D1 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x28FC JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x28DF JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x9 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x9 DUP3 ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO ISZERO ISZERO DUP2 MSTORE POP POP DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x269A JUMP JUMPDEST POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x2 PUSH1 0x1 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD EQ SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xB ADD SLOAD EQ PUSH2 0x2A60 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x2A57 SWAP1 PUSH2 0x87E5 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x2A68 PUSH2 0x7450 JUMP JUMPDEST DUP6 DUP2 PUSH1 0x0 ADD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP POP DUP5 DUP2 PUSH1 0x20 ADD DUP2 SWAP1 MSTORE POP DUP4 DUP2 PUSH1 0x40 ADD DUP2 SWAP1 MSTORE POP DUP3 DUP2 PUSH2 0x120 ADD DUP2 SWAP1 MSTORE POP PUSH3 0x2A300 DUP3 PUSH2 0x2ACB SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST DUP2 PUSH2 0x160 ADD DUP2 DUP2 MSTORE POP POP DUP1 PUSH1 0x0 DUP1 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 ADD MLOAD DUP2 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x20 DUP3 ADD MLOAD DUP2 PUSH1 0x1 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x2B77 SWAP3 SWAP2 SWAP1 PUSH2 0x74DB JUMP JUMPDEST POP PUSH1 0x40 DUP3 ADD MLOAD DUP2 PUSH1 0x2 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x2B94 SWAP3 SWAP2 SWAP1 PUSH2 0x74DB JUMP JUMPDEST POP PUSH1 0x60 DUP3 ADD MLOAD DUP2 PUSH1 0x3 ADD SSTORE PUSH1 0x80 DUP3 ADD MLOAD DUP2 PUSH1 0x4 ADD SSTORE PUSH1 0xA0 DUP3 ADD MLOAD DUP2 PUSH1 0x5 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0xC0 DUP3 ADD MLOAD DUP2 PUSH1 0x6 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x2BE5 SWAP3 SWAP2 SWAP1 PUSH2 0x7561 JUMP JUMPDEST POP PUSH1 0xE0 DUP3 ADD MLOAD DUP2 PUSH1 0x7 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x2C02 SWAP3 SWAP2 SWAP1 PUSH2 0x7561 JUMP JUMPDEST POP PUSH2 0x100 DUP3 ADD MLOAD DUP2 PUSH1 0x8 ADD SSTORE PUSH2 0x120 DUP3 ADD MLOAD DUP2 PUSH1 0x9 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x2C2B SWAP3 SWAP2 SWAP1 PUSH2 0x74DB JUMP JUMPDEST POP PUSH2 0x140 DUP3 ADD MLOAD DUP2 PUSH1 0xA ADD SSTORE PUSH2 0x160 DUP3 ADD MLOAD DUP2 PUSH1 0xB ADD SSTORE PUSH2 0x180 DUP3 ADD MLOAD DUP2 PUSH1 0xC ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH2 0x1A0 DUP3 ADD MLOAD DUP2 PUSH1 0xC ADD PUSH1 0x1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP SWAP1 POP POP PUSH1 0x8 DUP7 SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 ISZERO ISZERO PUSH1 0x7 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO EQ ISZERO PUSH2 0x32D9 JUMPI PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xC ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0x1 PUSH1 0x10 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x2E15 SWAP2 SWAP1 PUSH2 0x8704 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0x0 PUSH1 0x4 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 POP JUMPDEST PUSH1 0x8 DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x30DC JUMPI PUSH1 0x0 DUP1 PUSH1 0x8 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x2EA0 JUMPI PUSH2 0x2E9F PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP1 ISZERO PUSH2 0x2FA0 JUMPI POP PUSH1 0x0 DUP1 PUSH1 0x8 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x2F34 JUMPI PUSH2 0x2F33 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD SLOAD DUP3 LT JUMPDEST ISZERO PUSH2 0x30C9 JUMPI PUSH1 0x0 DUP1 PUSH1 0x8 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x2FBC JUMPI PUSH2 0x2FBB PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD SLOAD SWAP2 POP PUSH1 0xA PUSH1 0x8 DUP3 DUP2 SLOAD DUP2 LT PUSH2 0x303D JUMPI PUSH2 0x303C PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP JUMPDEST DUP1 DUP1 PUSH2 0x30D4 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x2E7C JUMP JUMPDEST POP PUSH1 0x0 PUSH1 0xA DUP1 SLOAD SWAP1 POP PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD SLOAD PUSH2 0x3131 SWAP2 SWAP1 PUSH2 0x8834 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 JUMPDEST PUSH1 0xA DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x3264 JUMPI DUP2 PUSH1 0x0 DUP1 PUSH1 0xA DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x315B JUMPI PUSH2 0x315A PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD SLOAD PUSH2 0x31CE SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0xA DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x31E5 JUMPI PUSH2 0x31E4 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD DUP2 SWAP1 SSTORE POP DUP1 DUP1 PUSH2 0x325C SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x3136 JUMP JUMPDEST POP PUSH1 0x0 PUSH1 0xA DUP1 SLOAD SWAP1 POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x32D4 JUMPI PUSH1 0xA DUP1 SLOAD DUP1 PUSH2 0x328C JUMPI PUSH2 0x328B PUSH2 0x865D JUMP JUMPDEST JUMPDEST PUSH1 0x1 SWAP1 SUB DUP2 DUP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE SWAP1 SSTORE DUP1 DUP1 PUSH2 0x32CC SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x3272 JUMP JUMPDEST POP POP POP POP JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xB ADD SLOAD LT ISZERO PUSH2 0x3330 JUMPI PUSH1 0x1 SWAP1 POP PUSH2 0x3335 JUMP JUMPDEST PUSH1 0x0 SWAP1 POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x3343 PUSH2 0x75EB JUMP JUMPDEST DUP4 DUP2 PUSH1 0x0 ADD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP POP DUP3 DUP2 PUSH2 0x100 ADD DUP2 SWAP1 MSTORE POP DUP2 DUP2 PUSH1 0xA0 ADD DUP2 DUP2 MSTORE POP POP PUSH3 0x69780 DUP3 PUSH2 0x339E SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST DUP2 PUSH1 0xC0 ADD DUP2 DUP2 MSTORE POP POP PUSH1 0x0 DUP2 PUSH2 0x140 ADD SWAP1 ISZERO ISZERO SWAP1 DUP2 ISZERO ISZERO DUP2 MSTORE POP POP DUP1 PUSH1 0x7 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 ADD MLOAD DUP2 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x20 DUP3 ADD MLOAD DUP2 PUSH1 0x1 ADD SSTORE PUSH1 0x40 DUP3 ADD MLOAD DUP2 PUSH1 0x2 ADD SSTORE PUSH1 0x60 DUP3 ADD MLOAD DUP2 PUSH1 0x3 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x3470 SWAP3 SWAP2 SWAP1 PUSH2 0x7561 JUMP JUMPDEST POP PUSH1 0x80 DUP3 ADD MLOAD DUP2 PUSH1 0x4 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x348D SWAP3 SWAP2 SWAP1 PUSH2 0x7561 JUMP JUMPDEST POP PUSH1 0xA0 DUP3 ADD MLOAD DUP2 PUSH1 0x5 ADD SSTORE PUSH1 0xC0 DUP3 ADD MLOAD DUP2 PUSH1 0x6 ADD SSTORE PUSH1 0xE0 DUP3 ADD MLOAD DUP2 PUSH1 0x7 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH2 0x100 DUP3 ADD MLOAD DUP2 PUSH1 0x8 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x34DF SWAP3 SWAP2 SWAP1 PUSH2 0x74DB JUMP JUMPDEST POP PUSH2 0x120 DUP3 ADD MLOAD DUP2 PUSH1 0x9 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH2 0x140 DUP3 ADD MLOAD DUP2 PUSH1 0x9 ADD PUSH1 0x1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP SWAP1 POP POP PUSH1 0xD DUP5 SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x6 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP PUSH1 0x1 ISZERO ISZERO PUSH1 0x6 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xB ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO EQ ISZERO PUSH2 0x3B84 JUMPI PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xC ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0x1 PUSH1 0x10 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x36C0 SWAP2 SWAP1 PUSH2 0x8704 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0x0 PUSH1 0x4 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0x0 DUP1 PUSH1 0x0 SWAP1 POP JUMPDEST PUSH1 0x8 DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x3987 JUMPI PUSH1 0x0 DUP1 PUSH1 0x8 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x374B JUMPI PUSH2 0x374A PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP1 ISZERO PUSH2 0x384B JUMPI POP PUSH1 0x0 DUP1 PUSH1 0x8 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x37DF JUMPI PUSH2 0x37DE PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD SLOAD DUP3 LT JUMPDEST ISZERO PUSH2 0x3974 JUMPI PUSH1 0x0 DUP1 PUSH1 0x8 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x3867 JUMPI PUSH2 0x3866 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD SLOAD SWAP2 POP PUSH1 0xA PUSH1 0x8 DUP3 DUP2 SLOAD DUP2 LT PUSH2 0x38E8 JUMPI PUSH2 0x38E7 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP JUMPDEST DUP1 DUP1 PUSH2 0x397F SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x3727 JUMP JUMPDEST POP PUSH1 0x0 PUSH1 0xA DUP1 SLOAD SWAP1 POP PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD SLOAD PUSH2 0x39DC SWAP2 SWAP1 PUSH2 0x8834 JUMP JUMPDEST SWAP1 POP PUSH1 0x0 JUMPDEST PUSH1 0xA DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x3B0F JUMPI DUP2 PUSH1 0x0 DUP1 PUSH1 0xA DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x3A06 JUMPI PUSH2 0x3A05 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD SLOAD PUSH2 0x3A79 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0xA DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x3A90 JUMPI PUSH2 0x3A8F PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD DUP2 SWAP1 SSTORE POP DUP1 DUP1 PUSH2 0x3B07 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x39E1 JUMP JUMPDEST POP PUSH1 0x0 PUSH1 0xA DUP1 SLOAD SWAP1 POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x3B7F JUMPI PUSH1 0xA DUP1 SLOAD DUP1 PUSH2 0x3B37 JUMPI PUSH2 0x3B36 PUSH2 0x865D JUMP JUMPDEST JUMPDEST PUSH1 0x1 SWAP1 SUB DUP2 DUP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE SWAP1 SSTORE DUP1 DUP1 PUSH2 0x3B77 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x3B1D JUMP JUMPDEST POP POP POP POP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 JUMPDEST PUSH1 0x12 SLOAD DUP2 LT ISZERO PUSH2 0x3BF2 JUMPI TIMESTAMP PUSH1 0x6 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD SLOAD LT ISZERO PUSH2 0x3BDF JUMPI PUSH1 0xC DUP2 SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 POP SSTORE JUMPDEST DUP1 DUP1 PUSH2 0x3BEA SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x3B8D JUMP JUMPDEST POP PUSH1 0xC DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD DUP1 ISZERO PUSH2 0x3C3F JUMPI PUSH1 0x20 MUL DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 ADD SWAP1 DUP1 DUP4 GT PUSH2 0x3C2B JUMPI JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x10 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD SLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 JUMPDEST PUSH1 0x8 DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x403E JUMPI PUSH1 0x0 DUP1 PUSH1 0x8 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x3CC3 JUMPI PUSH2 0x3CC2 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP1 ISZERO PUSH2 0x3DCE JUMPI POP PUSH1 0x0 DUP1 PUSH1 0x8 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x3D57 JUMPI PUSH2 0x3D56 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xC ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND JUMPDEST ISZERO PUSH2 0x402B JUMPI PUSH1 0x13 PUSH1 0x0 DUP1 PUSH1 0x8 DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x3DEC JUMPI PUSH2 0x3DEB PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0xD MUL ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 POP PUSH1 0x0 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x1 DUP3 ADD DUP2 PUSH1 0x1 ADD SWAP1 DUP1 SLOAD PUSH2 0x3EF5 SWAP1 PUSH2 0x8767 JUMP JUMPDEST PUSH2 0x3F00 SWAP3 SWAP2 SWAP1 PUSH2 0x7371 JUMP JUMPDEST POP PUSH1 0x2 DUP3 ADD DUP2 PUSH1 0x2 ADD SWAP1 DUP1 SLOAD PUSH2 0x3F15 SWAP1 PUSH2 0x8767 JUMP JUMPDEST PUSH2 0x3F20 SWAP3 SWAP2 SWAP1 PUSH2 0x7371 JUMP JUMPDEST POP PUSH1 0x3 DUP3 ADD SLOAD DUP2 PUSH1 0x3 ADD SSTORE PUSH1 0x4 DUP3 ADD SLOAD DUP2 PUSH1 0x4 ADD SSTORE PUSH1 0x5 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 PUSH1 0x5 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0x6 DUP3 ADD DUP2 PUSH1 0x6 ADD SWAP1 DUP1 SLOAD PUSH2 0x3F78 SWAP3 SWAP2 SWAP1 PUSH2 0x73FE JUMP JUMPDEST POP PUSH1 0x7 DUP3 ADD DUP2 PUSH1 0x7 ADD SWAP1 DUP1 SLOAD PUSH2 0x3F8F SWAP3 SWAP2 SWAP1 PUSH2 0x73FE JUMP JUMPDEST POP PUSH1 0x8 DUP3 ADD SLOAD DUP2 PUSH1 0x8 ADD SSTORE PUSH1 0x9 DUP3 ADD DUP2 PUSH1 0x9 ADD SWAP1 DUP1 SLOAD PUSH2 0x3FAE SWAP1 PUSH2 0x8767 JUMP JUMPDEST PUSH2 0x3FB9 SWAP3 SWAP2 SWAP1 PUSH2 0x7371 JUMP JUMPDEST POP PUSH1 0xA DUP3 ADD SLOAD DUP2 PUSH1 0xA ADD SSTORE PUSH1 0xB DUP3 ADD SLOAD DUP2 PUSH1 0xB ADD SSTORE PUSH1 0xC DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 PUSH1 0xC ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH1 0xC DUP3 ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND DUP2 PUSH1 0xC ADD PUSH1 0x1 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP POP POP JUMPDEST DUP1 DUP1 PUSH2 0x4036 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x3C9F JUMP JUMPDEST POP PUSH1 0x13 DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 SWAP1 JUMPDEST DUP3 DUP3 LT ISZERO PUSH2 0x443F JUMPI DUP4 DUP3 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0xD MUL ADD PUSH1 0x40 MLOAD DUP1 PUSH2 0x1C0 ADD PUSH1 0x40 MSTORE SWAP1 DUP2 PUSH1 0x0 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x1 DUP3 ADD DUP1 SLOAD PUSH2 0x40EB SWAP1 PUSH2 0x8767 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x4117 SWAP1 PUSH2 0x8767 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x4164 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x4139 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x4164 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x4147 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x2 DUP3 ADD DUP1 SLOAD PUSH2 0x417D SWAP1 PUSH2 0x8767 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x41A9 SWAP1 PUSH2 0x8767 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x41F6 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x41CB JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x41F6 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x41D9 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x3 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x4 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x5 DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x6 DUP3 ADD DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD DUP1 ISZERO PUSH2 0x42B3 JUMPI PUSH1 0x20 MUL DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 ADD SWAP1 DUP1 DUP4 GT PUSH2 0x4269 JUMPI JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x7 DUP3 ADD DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD DUP1 ISZERO PUSH2 0x4341 JUMPI PUSH1 0x20 MUL DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 ADD SWAP1 DUP1 DUP4 GT PUSH2 0x42F7 JUMPI JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x8 DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x9 DUP3 ADD DUP1 SLOAD PUSH2 0x4364 SWAP1 PUSH2 0x8767 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x4390 SWAP1 PUSH2 0x8767 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x43DD JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x43B2 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x43DD JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x43C0 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xA DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xB DUP3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xC DUP3 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0xC DUP3 ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO ISZERO ISZERO DUP2 MSTORE POP POP DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x4061 JUMP JUMPDEST POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x33 PUSH1 0x10 SLOAD PUSH2 0x4457 SWAP2 SWAP1 PUSH2 0x8865 JUMP JUMPDEST PUSH1 0x64 PUSH1 0x0 DUP1 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD SLOAD PUSH2 0x44A5 SWAP2 SWAP1 PUSH2 0x8865 JUMP JUMPDEST LT PUSH2 0x4509 JUMPI PUSH1 0x1 PUSH1 0x0 DUP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH2 0x456F JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH2 0x456E DUP2 PUSH1 0x0 PUSH2 0x1035 JUMP JUMPDEST JUMPDEST POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x10 PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x4585 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0x1 PUSH1 0x4 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x6 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP PUSH1 0x6 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xB ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0x4D48 JUMPI PUSH1 0x0 JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x49C8 JUMPI PUSH1 0x11 SLOAD PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x46F3 JUMPI PUSH2 0x46F2 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD SLOAD PUSH2 0x4766 SWAP2 SWAP1 PUSH2 0x8704 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x47BC JUMPI PUSH2 0x47BB PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD DUP2 SWAP1 SSTORE POP PUSH1 0x1 PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x4880 JUMPI PUSH2 0x487F PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD SLOAD PUSH2 0x48F3 SWAP2 SWAP1 PUSH2 0x8704 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x4949 JUMPI PUSH2 0x4948 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD DUP2 SWAP1 SSTORE POP DUP1 DUP1 PUSH2 0x49C0 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x464E JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x4D46 JUMPI PUSH1 0x11 SLOAD PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x4A71 JUMPI PUSH2 0x4A70 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD SLOAD PUSH2 0x4AE4 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x4B3A JUMPI PUSH2 0x4B39 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD DUP2 SWAP1 SSTORE POP PUSH1 0x1 PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x4BFE JUMPI PUSH2 0x4BFD PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD SLOAD PUSH2 0x4C71 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x4CC7 JUMPI PUSH2 0x4CC6 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD DUP2 SWAP1 SSTORE POP DUP1 DUP1 PUSH2 0x4D3E SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x49CC JUMP JUMPDEST POP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x6 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD SLOAD PUSH1 0x6 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD SLOAD PUSH2 0x4D86 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST SWAP1 POP PUSH1 0x33 DUP2 PUSH2 0x4D95 SWAP2 SWAP1 PUSH2 0x8865 JUMP JUMPDEST PUSH1 0x64 PUSH1 0x6 PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD SLOAD PUSH2 0x4DB8 SWAP2 SWAP1 PUSH2 0x8865 JUMP JUMPDEST LT PUSH2 0x4DF1 JUMPI PUSH1 0x1 PUSH1 0x6 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xB ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH2 0x4E21 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x6 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xB ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP JUMPDEST PUSH1 0x0 PUSH1 0x6 PUSH1 0x0 DUP5 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xE DUP1 SLOAD SWAP1 POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x4EC3 JUMPI PUSH1 0xE DUP1 SLOAD DUP1 PUSH2 0x4E7B JUMPI PUSH2 0x4E7A PUSH2 0x865D JUMP JUMPDEST JUMPDEST PUSH1 0x1 SWAP1 SUB DUP2 DUP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE SWAP1 SSTORE DUP1 DUP1 PUSH2 0x4EBB SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x4E61 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xC ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x33 PUSH1 0x10 SLOAD PUSH2 0x4F2F SWAP2 SWAP1 PUSH2 0x8865 JUMP JUMPDEST PUSH1 0x64 PUSH1 0x0 DUP1 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD SLOAD PUSH2 0x4F7D SWAP2 SWAP1 PUSH2 0x8865 JUMP JUMPDEST LT PUSH2 0x4F8E JUMPI PUSH1 0x1 DUP4 SWAP2 POP SWAP2 POP PUSH2 0x4F96 JUMP JUMPDEST PUSH1 0x0 DUP4 SWAP2 POP SWAP2 POP JUMPDEST SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x9 DUP1 SLOAD SWAP1 POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x500C JUMPI PUSH1 0x9 DUP1 SLOAD DUP1 PUSH2 0x4FC4 JUMPI PUSH2 0x4FC3 PUSH2 0x865D JUMP JUMPDEST JUMPDEST PUSH1 0x1 SWAP1 SUB DUP2 DUP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE SWAP1 SSTORE DUP1 DUP1 PUSH2 0x5004 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x4FAA JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST PUSH1 0x0 DUP1 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x5144 JUMPI PUSH1 0x0 PUSH1 0x5 PUSH1 0x0 DUP1 PUSH1 0x0 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x50B5 JUMPI PUSH2 0x50B4 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP DUP1 DUP1 PUSH2 0x513C SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x5010 JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST PUSH1 0x0 DUP1 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x527C JUMPI PUSH1 0x0 PUSH1 0x5 PUSH1 0x0 DUP1 PUSH1 0x0 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x51ED JUMPI PUSH2 0x51EC PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP DUP1 DUP1 PUSH2 0x5274 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x5148 JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x13 DUP1 SLOAD SWAP1 POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x53AF JUMPI PUSH1 0x13 DUP1 SLOAD DUP1 PUSH2 0x52A8 JUMPI PUSH2 0x52A7 PUSH2 0x865D JUMP JUMPDEST JUMPDEST PUSH1 0x1 SWAP1 SUB DUP2 DUP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0xD MUL ADD PUSH1 0x0 DUP1 DUP3 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE PUSH1 0x1 DUP3 ADD PUSH1 0x0 PUSH2 0x52F4 SWAP2 SWAP1 PUSH2 0x7331 JUMP JUMPDEST PUSH1 0x2 DUP3 ADD PUSH1 0x0 PUSH2 0x5304 SWAP2 SWAP1 PUSH2 0x7331 JUMP JUMPDEST PUSH1 0x3 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0x4 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0x5 DUP3 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH1 0xFF MUL NOT AND SWAP1 SSTORE PUSH1 0x6 DUP3 ADD PUSH1 0x0 PUSH2 0x5338 SWAP2 SWAP1 PUSH2 0x7310 JUMP JUMPDEST PUSH1 0x7 DUP3 ADD PUSH1 0x0 PUSH2 0x5348 SWAP2 SWAP1 PUSH2 0x7310 JUMP JUMPDEST PUSH1 0x8 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0x9 DUP3 ADD PUSH1 0x0 PUSH2 0x5360 SWAP2 SWAP1 PUSH2 0x7331 JUMP JUMPDEST PUSH1 0xA DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0xB DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0xC DUP3 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH1 0xFF MUL NOT AND SWAP1 SSTORE PUSH1 0xC DUP3 ADD PUSH1 0x1 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH1 0xFF MUL NOT AND SWAP1 SSTORE POP POP SWAP1 SSTORE DUP1 DUP1 PUSH2 0x53A7 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x528E JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x0 DUP1 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xC ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH2 0x5418 CALLER PUSH1 0x1 PUSH2 0x1035 JUMP JUMPDEST PUSH2 0x5421 CALLER PUSH2 0x4572 JUMP JUMPDEST JUMP JUMPDEST PUSH1 0x60 PUSH1 0xD DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD DUP1 ISZERO PUSH2 0x54A7 JUMPI PUSH1 0x20 MUL DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 ADD SWAP1 DUP1 DUP4 GT PUSH2 0x545D JUMPI JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP4 DUP4 PUSH1 0x0 DUP1 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xB ADD SLOAD EQ ISZERO PUSH2 0x553A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x5531 SWAP1 PUSH2 0x8428 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0x55C9 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x55C0 SWAP1 PUSH2 0x8494 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xB ADD SLOAD EQ ISZERO DUP1 ISZERO PUSH2 0x5666 JUMPI POP PUSH1 0x0 DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND JUMPDEST PUSH2 0x56A5 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x569C SWAP1 PUSH2 0x8526 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x1 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD EQ PUSH2 0x5764 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x575B SWAP1 PUSH2 0x85B8 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x0 DUP1 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x57B6 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0x0 DUP1 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP6 SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x1 DUP1 PUSH1 0x0 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP DUP4 PUSH1 0x0 DUP1 DUP9 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xB ADD SLOAD LT ISZERO PUSH2 0x5932 JUMPI PUSH1 0x1 SWAP3 POP PUSH2 0x5937 JUMP JUMPDEST PUSH1 0x0 SWAP3 POP JUMPDEST POP POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x5A77 JUMPI PUSH1 0x1 PUSH1 0x5 PUSH1 0x0 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x59E8 JUMPI PUSH2 0x59E7 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP DUP1 DUP1 PUSH2 0x5A6F SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x5943 JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x5BAF JUMPI PUSH1 0x1 PUSH1 0x5 PUSH1 0x0 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x5B20 JUMPI PUSH2 0x5B1F PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP DUP1 DUP1 PUSH2 0x5BA7 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x5A7B JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST PUSH1 0x8 DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x5D0C JUMPI PUSH1 0x0 ISZERO ISZERO PUSH1 0x5 PUSH1 0x0 PUSH1 0x8 DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x5BDC JUMPI PUSH2 0x5BDB PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO EQ ISZERO PUSH2 0x5CF9 JUMPI PUSH1 0x9 PUSH1 0x8 DUP3 DUP2 SLOAD DUP2 LT PUSH2 0x5C6D JUMPI PUSH2 0x5C6C PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP JUMPDEST DUP1 DUP1 PUSH2 0x5D04 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x5BB3 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH2 0x5D18 PUSH2 0x7661 JUMP JUMPDEST PUSH1 0x12 SLOAD DUP2 PUSH1 0x0 ADD DUP2 DUP2 MSTORE POP POP DUP5 DUP2 PUSH1 0x20 ADD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE POP POP DUP4 DUP2 PUSH1 0x40 ADD DUP2 SWAP1 MSTORE POP DUP3 DUP2 PUSH1 0x60 ADD DUP2 SWAP1 MSTORE POP DUP2 DUP2 PUSH2 0x120 ADD DUP2 DUP2 MSTORE POP POP PUSH3 0x69780 DUP3 PUSH2 0x5D88 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST DUP2 PUSH2 0x140 ADD DUP2 DUP2 MSTORE POP POP PUSH1 0x1 DUP2 PUSH2 0x100 ADD SWAP1 ISZERO ISZERO SWAP1 DUP2 ISZERO ISZERO DUP2 MSTORE POP POP DUP1 PUSH1 0x6 PUSH1 0x0 PUSH1 0x12 SLOAD DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 DUP3 ADD MLOAD DUP2 PUSH1 0x0 ADD SSTORE PUSH1 0x20 DUP3 ADD MLOAD DUP2 PUSH1 0x1 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x40 DUP3 ADD MLOAD DUP2 PUSH1 0x2 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x5E27 SWAP3 SWAP2 SWAP1 PUSH2 0x74DB JUMP JUMPDEST POP PUSH1 0x60 DUP3 ADD MLOAD DUP2 PUSH1 0x3 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x5E44 SWAP3 SWAP2 SWAP1 PUSH2 0x74DB JUMP JUMPDEST POP PUSH1 0x80 DUP3 ADD MLOAD DUP2 PUSH1 0x4 ADD SSTORE PUSH1 0xA0 DUP3 ADD MLOAD DUP2 PUSH1 0x5 ADD SSTORE PUSH1 0xC0 DUP3 ADD MLOAD DUP2 PUSH1 0x6 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x5E75 SWAP3 SWAP2 SWAP1 PUSH2 0x7561 JUMP JUMPDEST POP PUSH1 0xE0 DUP3 ADD MLOAD DUP2 PUSH1 0x7 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0x5E92 SWAP3 SWAP2 SWAP1 PUSH2 0x7561 JUMP JUMPDEST POP PUSH2 0x100 DUP3 ADD MLOAD DUP2 PUSH1 0x8 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH2 0x120 DUP3 ADD MLOAD DUP2 PUSH1 0x9 ADD SSTORE PUSH2 0x140 DUP3 ADD MLOAD DUP2 PUSH1 0xA ADD SSTORE PUSH2 0x160 DUP3 ADD MLOAD DUP2 PUSH1 0xB ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP SWAP1 POP POP PUSH1 0x1 PUSH1 0x12 SLOAD PUSH2 0x5EFD SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST PUSH1 0x12 DUP2 SWAP1 SSTORE POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x7 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD SLOAD PUSH2 0x5F59 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST PUSH1 0x7 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD DUP2 SWAP1 SSTORE POP PUSH1 0x7 PUSH1 0x0 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD CALLER SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x1 PUSH1 0x3 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD SLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 JUMPDEST PUSH1 0x8 DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x630F JUMPI PUSH1 0x1 ISZERO ISZERO PUSH1 0x0 DUP1 PUSH1 0x8 DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x613F JUMPI PUSH2 0x613E PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xC ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO EQ DUP1 ISZERO PUSH2 0x6255 JUMPI POP PUSH1 0x0 ISZERO ISZERO PUSH1 0x7 PUSH1 0x0 PUSH1 0x8 DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x61DB JUMPI PUSH2 0x61DA PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x9 ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO EQ JUMPDEST ISZERO PUSH2 0x62FC JUMPI PUSH1 0xE PUSH1 0x8 DUP3 DUP2 SLOAD DUP2 LT PUSH2 0x6270 JUMPI PUSH2 0x626F PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP JUMPDEST DUP1 DUP1 PUSH2 0x6307 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x6117 JUMP JUMPDEST POP PUSH1 0xE DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD DUP1 ISZERO PUSH2 0x6392 JUMPI PUSH1 0x20 MUL DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 ADD SWAP1 DUP1 DUP4 GT PUSH2 0x6348 JUMPI JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 JUMPDEST PUSH1 0x9 DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x64CF JUMPI PUSH1 0x11 SLOAD PUSH1 0x0 DUP1 PUSH1 0x9 DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x63C6 JUMPI PUSH2 0x63C5 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD SLOAD PUSH2 0x6439 SWAP2 SWAP1 PUSH2 0x8704 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x9 DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x6450 JUMPI PUSH2 0x644F PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD DUP2 SWAP1 SSTORE POP DUP1 DUP1 PUSH2 0x64C7 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x639F JUMP JUMPDEST POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 JUMPDEST PUSH1 0x8 DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x66BC JUMPI PUSH1 0x0 ISZERO ISZERO PUSH1 0x0 DUP1 PUSH1 0x8 DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x64FF JUMPI PUSH2 0x64FE PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xC ADD PUSH1 0x1 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO EQ DUP1 ISZERO PUSH2 0x6602 JUMPI POP TIMESTAMP PUSH1 0x0 DUP1 PUSH1 0x8 DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x6597 JUMPI PUSH2 0x6596 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xB ADD SLOAD LT JUMPDEST ISZERO PUSH2 0x66A9 JUMPI PUSH1 0xB PUSH1 0x8 DUP3 DUP2 SLOAD DUP2 LT PUSH2 0x661D JUMPI PUSH2 0x661C PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP JUMPDEST DUP1 DUP1 PUSH2 0x66B4 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x64D7 JUMP JUMPDEST POP PUSH1 0xB DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD DUP1 ISZERO PUSH2 0x673F JUMPI PUSH1 0x20 MUL DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 ADD SWAP1 DUP1 DUP4 GT PUSH2 0x66F5 JUMPI JUMPDEST POP POP POP POP POP SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 DUP1 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SLOAD EQ SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x7 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD SLOAD PUSH1 0x7 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD SLOAD PUSH2 0x6863 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST SWAP1 POP PUSH1 0x33 DUP2 PUSH2 0x6872 SWAP2 SWAP1 PUSH2 0x8865 JUMP JUMPDEST PUSH1 0x64 PUSH1 0x7 PUSH1 0x0 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD SLOAD PUSH2 0x68C1 SWAP2 SWAP1 PUSH2 0x8865 JUMP JUMPDEST LT PUSH2 0x6926 JUMPI PUSH1 0x1 PUSH1 0x7 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH2 0x6982 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x7 PUSH1 0x0 DUP5 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0xD DUP1 SLOAD SWAP1 POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x69F5 JUMPI PUSH1 0xD DUP1 SLOAD DUP1 PUSH2 0x69AD JUMPI PUSH2 0x69AC PUSH2 0x865D JUMP JUMPDEST JUMPDEST PUSH1 0x1 SWAP1 SUB DUP2 DUP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE SWAP1 SSTORE DUP1 DUP1 PUSH2 0x69ED SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x6993 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xC ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x6A5A DUP3 PUSH2 0x60C7 JUMP JUMPDEST PUSH2 0x6A63 DUP4 PUSH2 0x3C4F JUMP JUMPDEST PUSH1 0x10 SLOAD PUSH2 0x6A70 SWAP2 SWAP1 PUSH2 0x8704 JUMP JUMPDEST PUSH2 0x6A7A SWAP2 SWAP1 PUSH2 0x8704 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 ISZERO ISZERO PUSH1 0x7 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO EQ ISZERO PUSH2 0x71DA JUMPI PUSH1 0x0 JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x6E5A JUMPI PUSH1 0x11 SLOAD PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x6B85 JUMPI PUSH2 0x6B84 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD SLOAD PUSH2 0x6BF8 SWAP2 SWAP1 PUSH2 0x8704 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x6C4E JUMPI PUSH2 0x6C4D PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD DUP2 SWAP1 SSTORE POP PUSH1 0x1 PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x6D12 JUMPI PUSH2 0x6D11 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD SLOAD PUSH2 0x6D85 SWAP2 SWAP1 PUSH2 0x8704 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x6DDB JUMPI PUSH2 0x6DDA PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD DUP2 SWAP1 SSTORE POP DUP1 DUP1 PUSH2 0x6E52 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x6AE0 JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST PUSH1 0x0 DUP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP1 SLOAD SWAP1 POP DUP2 LT ISZERO PUSH2 0x71D8 JUMPI PUSH1 0x11 SLOAD PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x6F03 JUMPI PUSH2 0x6F02 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD SLOAD PUSH2 0x6F76 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x6FCC JUMPI PUSH2 0x6FCB PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD DUP2 SWAP1 SSTORE POP PUSH1 0x1 PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x7090 JUMPI PUSH2 0x708F PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD SLOAD PUSH2 0x7103 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x7159 JUMPI PUSH2 0x7158 PUSH2 0x86D5 JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xA ADD DUP2 SWAP1 SSTORE POP DUP1 DUP1 PUSH2 0x71D0 SWAP1 PUSH2 0x868C JUMP JUMPDEST SWAP2 POP POP PUSH2 0x6E5E JUMP JUMPDEST POP JUMPDEST POP JUMP JUMPDEST PUSH1 0xF PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x6 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD SLOAD PUSH2 0x7226 SWAP2 SWAP1 PUSH2 0x8607 JUMP JUMPDEST PUSH1 0x6 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD DUP2 SWAP1 SSTORE POP PUSH1 0x6 PUSH1 0x0 DUP3 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD CALLER SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x1 PUSH1 0x2 PUSH1 0x0 DUP4 DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 DUP2 SWAP1 SSTORE POP POP JUMP JUMPDEST POP DUP1 SLOAD PUSH1 0x0 DUP3 SSTORE SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 DUP2 ADD SWAP1 PUSH2 0x732E SWAP2 SWAP1 PUSH2 0x76DC JUMP JUMPDEST POP JUMP JUMPDEST POP DUP1 SLOAD PUSH2 0x733D SWAP1 PUSH2 0x8767 JUMP JUMPDEST PUSH1 0x0 DUP3 SSTORE DUP1 PUSH1 0x1F LT PUSH2 0x734F JUMPI POP PUSH2 0x736E JUMP JUMPDEST PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 DUP2 ADD SWAP1 PUSH2 0x736D SWAP2 SWAP1 PUSH2 0x76DC JUMP JUMPDEST JUMPDEST POP JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH2 0x737D SWAP1 PUSH2 0x8767 JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH2 0x739F JUMPI PUSH1 0x0 DUP6 SSTORE PUSH2 0x73ED JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH2 0x73B0 JUMPI DUP1 SLOAD DUP6 SSTORE PUSH2 0x73ED JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0x73ED JUMPI PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP2 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x73EC JUMPI DUP3 SLOAD DUP3 SSTORE SWAP2 PUSH1 0x1 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x73D1 JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x73FA SWAP2 SWAP1 PUSH2 0x76DC JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST DUP3 DUP1 SLOAD DUP3 DUP3 SSTORE SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 DUP2 ADD SWAP3 DUP3 ISZERO PUSH2 0x743F JUMPI PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x743E JUMPI DUP3 SLOAD DUP3 SSTORE SWAP2 PUSH1 0x1 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x7423 JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x744C SWAP2 SWAP1 PUSH2 0x76DC JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH2 0x1C0 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 ISZERO ISZERO DUP2 MSTORE POP SWAP1 JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH2 0x74E7 SWAP1 PUSH2 0x8767 JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH2 0x7509 JUMPI PUSH1 0x0 DUP6 SSTORE PUSH2 0x7550 JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH2 0x7522 JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH2 0x7550 JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0x7550 JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x754F JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x7534 JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x755D SWAP2 SWAP1 PUSH2 0x76DC JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST DUP3 DUP1 SLOAD DUP3 DUP3 SSTORE SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 DUP2 ADD SWAP3 DUP3 ISZERO PUSH2 0x75DA JUMPI SWAP2 PUSH1 0x20 MUL DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x75D9 JUMPI DUP3 MLOAD DUP3 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x7581 JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x75E7 SWAP2 SWAP1 PUSH2 0x76DC JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH2 0x160 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 ISZERO ISZERO DUP2 MSTORE POP SWAP1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH2 0x180 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 ISZERO ISZERO DUP2 MSTORE POP SWAP1 JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0x76F5 JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH2 0x76DD JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7738 DUP3 PUSH2 0x770D JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x7748 DUP2 PUSH2 0x772D JUMP JUMPDEST DUP2 EQ PUSH2 0x7753 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x7765 DUP2 PUSH2 0x773F JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x777E DUP2 PUSH2 0x776B JUMP JUMPDEST DUP2 EQ PUSH2 0x7789 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x779B DUP2 PUSH2 0x7775 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x77BA JUMPI PUSH2 0x77B9 PUSH2 0x7703 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x77C8 DUP7 DUP3 DUP8 ADD PUSH2 0x7756 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 PUSH2 0x77D9 DUP7 DUP3 DUP8 ADD PUSH2 0x7756 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x77EA DUP7 DUP3 DUP8 ADD PUSH2 0x778C JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x7809 DUP2 PUSH2 0x77F4 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x7824 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x7800 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x7840 JUMPI PUSH2 0x783F PUSH2 0x7703 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x784E DUP5 DUP3 DUP6 ADD PUSH2 0x778C JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x786D JUMPI PUSH2 0x786C PUSH2 0x7703 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x787B DUP5 DUP3 DUP6 ADD PUSH2 0x7756 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x788D DUP2 PUSH2 0x77F4 JUMP JUMPDEST DUP2 EQ PUSH2 0x7898 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x78AA DUP2 PUSH2 0x7884 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x78C7 JUMPI PUSH2 0x78C6 PUSH2 0x7703 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x78D5 DUP6 DUP3 DUP7 ADD PUSH2 0x7756 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x78E6 DUP6 DUP3 DUP7 ADD PUSH2 0x789B JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x7925 DUP2 PUSH2 0x772D JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x7965 JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x794A JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x7974 JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7996 DUP3 PUSH2 0x792B JUMP JUMPDEST PUSH2 0x79A0 DUP2 DUP6 PUSH2 0x7936 JUMP JUMPDEST SWAP4 POP PUSH2 0x79B0 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x7947 JUMP JUMPDEST PUSH2 0x79B9 DUP2 PUSH2 0x797A JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x79CD DUP2 PUSH2 0x776B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH2 0x79DC DUP2 PUSH2 0x77F4 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7A1A DUP4 DUP4 PUSH2 0x791C JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7A3E DUP3 PUSH2 0x79E2 JUMP JUMPDEST PUSH2 0x7A48 DUP2 DUP6 PUSH2 0x79ED JUMP JUMPDEST SWAP4 POP PUSH2 0x7A53 DUP4 PUSH2 0x79FE JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x7A84 JUMPI DUP2 MLOAD PUSH2 0x7A6B DUP9 DUP3 PUSH2 0x7A0E JUMP JUMPDEST SWAP8 POP PUSH2 0x7A76 DUP4 PUSH2 0x7A26 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x7A57 JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1C0 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD PUSH2 0x7AAA PUSH1 0x0 DUP7 ADD DUP3 PUSH2 0x791C JUMP JUMPDEST POP PUSH1 0x20 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x20 DUP7 ADD MSTORE PUSH2 0x7AC2 DUP3 DUP3 PUSH2 0x798B JUMP JUMPDEST SWAP2 POP POP PUSH1 0x40 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x40 DUP7 ADD MSTORE PUSH2 0x7ADC DUP3 DUP3 PUSH2 0x798B JUMP JUMPDEST SWAP2 POP POP PUSH1 0x60 DUP4 ADD MLOAD PUSH2 0x7AF1 PUSH1 0x60 DUP7 ADD DUP3 PUSH2 0x79C4 JUMP JUMPDEST POP PUSH1 0x80 DUP4 ADD MLOAD PUSH2 0x7B04 PUSH1 0x80 DUP7 ADD DUP3 PUSH2 0x79C4 JUMP JUMPDEST POP PUSH1 0xA0 DUP4 ADD MLOAD PUSH2 0x7B17 PUSH1 0xA0 DUP7 ADD DUP3 PUSH2 0x79D3 JUMP JUMPDEST POP PUSH1 0xC0 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0xC0 DUP7 ADD MSTORE PUSH2 0x7B2F DUP3 DUP3 PUSH2 0x7A33 JUMP JUMPDEST SWAP2 POP POP PUSH1 0xE0 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0xE0 DUP7 ADD MSTORE PUSH2 0x7B49 DUP3 DUP3 PUSH2 0x7A33 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x100 DUP4 ADD MLOAD PUSH2 0x7B60 PUSH2 0x100 DUP7 ADD DUP3 PUSH2 0x79C4 JUMP JUMPDEST POP PUSH2 0x120 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH2 0x120 DUP7 ADD MSTORE PUSH2 0x7B7A DUP3 DUP3 PUSH2 0x798B JUMP JUMPDEST SWAP2 POP POP PUSH2 0x140 DUP4 ADD MLOAD PUSH2 0x7B91 PUSH2 0x140 DUP7 ADD DUP3 PUSH2 0x79C4 JUMP JUMPDEST POP PUSH2 0x160 DUP4 ADD MLOAD PUSH2 0x7BA6 PUSH2 0x160 DUP7 ADD DUP3 PUSH2 0x79C4 JUMP JUMPDEST POP PUSH2 0x180 DUP4 ADD MLOAD PUSH2 0x7BBB PUSH2 0x180 DUP7 ADD DUP3 PUSH2 0x79D3 JUMP JUMPDEST POP PUSH2 0x1A0 DUP4 ADD MLOAD PUSH2 0x7BD0 PUSH2 0x1A0 DUP7 ADD DUP3 PUSH2 0x79D3 JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7BE7 DUP4 DUP4 PUSH2 0x7A91 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7C07 DUP3 PUSH2 0x78F0 JUMP JUMPDEST PUSH2 0x7C11 DUP2 DUP6 PUSH2 0x78FB JUMP JUMPDEST SWAP4 POP DUP4 PUSH1 0x20 DUP3 MUL DUP6 ADD PUSH2 0x7C23 DUP6 PUSH2 0x790C JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x7C5F JUMPI DUP5 DUP5 SUB DUP10 MSTORE DUP2 MLOAD PUSH2 0x7C40 DUP6 DUP3 PUSH2 0x7BDB JUMP JUMPDEST SWAP5 POP PUSH2 0x7C4B DUP4 PUSH2 0x7BEF JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP11 ADD SWAP10 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x7C27 JUMP JUMPDEST POP DUP3 SWAP8 POP DUP8 SWAP6 POP POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x7C8B DUP2 DUP5 PUSH2 0x7BFC JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x160 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD PUSH2 0x7CD8 PUSH1 0x0 DUP7 ADD DUP3 PUSH2 0x791C JUMP JUMPDEST POP PUSH1 0x20 DUP4 ADD MLOAD PUSH2 0x7CEB PUSH1 0x20 DUP7 ADD DUP3 PUSH2 0x79C4 JUMP JUMPDEST POP PUSH1 0x40 DUP4 ADD MLOAD PUSH2 0x7CFE PUSH1 0x40 DUP7 ADD DUP3 PUSH2 0x79C4 JUMP JUMPDEST POP PUSH1 0x60 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x60 DUP7 ADD MSTORE PUSH2 0x7D16 DUP3 DUP3 PUSH2 0x7A33 JUMP JUMPDEST SWAP2 POP POP PUSH1 0x80 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x80 DUP7 ADD MSTORE PUSH2 0x7D30 DUP3 DUP3 PUSH2 0x7A33 JUMP JUMPDEST SWAP2 POP POP PUSH1 0xA0 DUP4 ADD MLOAD PUSH2 0x7D45 PUSH1 0xA0 DUP7 ADD DUP3 PUSH2 0x79C4 JUMP JUMPDEST POP PUSH1 0xC0 DUP4 ADD MLOAD PUSH2 0x7D58 PUSH1 0xC0 DUP7 ADD DUP3 PUSH2 0x79C4 JUMP JUMPDEST POP PUSH1 0xE0 DUP4 ADD MLOAD PUSH2 0x7D6B PUSH1 0xE0 DUP7 ADD DUP3 PUSH2 0x79D3 JUMP JUMPDEST POP PUSH2 0x100 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH2 0x100 DUP7 ADD MSTORE PUSH2 0x7D85 DUP3 DUP3 PUSH2 0x798B JUMP JUMPDEST SWAP2 POP POP PUSH2 0x120 DUP4 ADD MLOAD PUSH2 0x7D9C PUSH2 0x120 DUP7 ADD DUP3 PUSH2 0x79D3 JUMP JUMPDEST POP PUSH2 0x140 DUP4 ADD MLOAD PUSH2 0x7DB1 PUSH2 0x140 DUP7 ADD DUP3 PUSH2 0x79D3 JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7DC8 DUP4 DUP4 PUSH2 0x7CBF JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7DE8 DUP3 PUSH2 0x7C93 JUMP JUMPDEST PUSH2 0x7DF2 DUP2 DUP6 PUSH2 0x7C9E JUMP JUMPDEST SWAP4 POP DUP4 PUSH1 0x20 DUP3 MUL DUP6 ADD PUSH2 0x7E04 DUP6 PUSH2 0x7CAF JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x7E40 JUMPI DUP5 DUP5 SUB DUP10 MSTORE DUP2 MLOAD PUSH2 0x7E21 DUP6 DUP3 PUSH2 0x7DBC JUMP JUMPDEST SWAP5 POP PUSH2 0x7E2C DUP4 PUSH2 0x7DD0 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP11 ADD SWAP10 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x7E08 JUMP JUMPDEST POP DUP3 SWAP8 POP DUP8 SWAP6 POP POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x7E6C DUP2 DUP5 PUSH2 0x7DDD JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0x7EB6 DUP3 PUSH2 0x797A JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x7ED5 JUMPI PUSH2 0x7ED4 PUSH2 0x7E7E JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7EE8 PUSH2 0x76F9 JUMP JUMPDEST SWAP1 POP PUSH2 0x7EF4 DUP3 DUP3 PUSH2 0x7EAD JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x7F14 JUMPI PUSH2 0x7F13 PUSH2 0x7E7E JUMP JUMPDEST JUMPDEST PUSH2 0x7F1D DUP3 PUSH2 0x797A JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x7F4C PUSH2 0x7F47 DUP5 PUSH2 0x7EF9 JUMP JUMPDEST PUSH2 0x7EDE JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x7F68 JUMPI PUSH2 0x7F67 PUSH2 0x7E79 JUMP JUMPDEST JUMPDEST PUSH2 0x7F73 DUP5 DUP3 DUP6 PUSH2 0x7F2A JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x7F90 JUMPI PUSH2 0x7F8F PUSH2 0x7E74 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x7FA0 DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x7F39 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0xA0 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x7FC5 JUMPI PUSH2 0x7FC4 PUSH2 0x7703 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x7FD3 DUP9 DUP3 DUP10 ADD PUSH2 0x7756 JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x7FF4 JUMPI PUSH2 0x7FF3 PUSH2 0x7708 JUMP JUMPDEST JUMPDEST PUSH2 0x8000 DUP9 DUP3 DUP10 ADD PUSH2 0x7F7B JUMP JUMPDEST SWAP5 POP POP PUSH1 0x40 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x8021 JUMPI PUSH2 0x8020 PUSH2 0x7708 JUMP JUMPDEST JUMPDEST PUSH2 0x802D DUP9 DUP3 DUP10 ADD PUSH2 0x7F7B JUMP JUMPDEST SWAP4 POP POP PUSH1 0x60 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x804E JUMPI PUSH2 0x804D PUSH2 0x7708 JUMP JUMPDEST JUMPDEST PUSH2 0x805A DUP9 DUP3 DUP10 ADD PUSH2 0x7F7B JUMP JUMPDEST SWAP3 POP POP PUSH1 0x80 PUSH2 0x806B DUP9 DUP3 DUP10 ADD PUSH2 0x778C JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x808F JUMPI PUSH2 0x808E PUSH2 0x7703 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x809D DUP6 DUP3 DUP7 ADD PUSH2 0x7756 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x80AE DUP6 DUP3 DUP7 ADD PUSH2 0x778C JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x80D1 JUMPI PUSH2 0x80D0 PUSH2 0x7703 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x80DF DUP7 DUP3 DUP8 ADD PUSH2 0x7756 JUMP JUMPDEST SWAP4 POP POP PUSH1 0x20 DUP5 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x8100 JUMPI PUSH2 0x80FF PUSH2 0x7708 JUMP JUMPDEST JUMPDEST PUSH2 0x810C DUP7 DUP3 DUP8 ADD PUSH2 0x7F7B JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 PUSH2 0x811D DUP7 DUP3 DUP8 ADD PUSH2 0x778C JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x815F DUP4 DUP4 PUSH2 0x79C4 JUMP JUMPDEST PUSH1 0x20 DUP4 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8183 DUP3 PUSH2 0x8127 JUMP JUMPDEST PUSH2 0x818D DUP2 DUP6 PUSH2 0x8132 JUMP JUMPDEST SWAP4 POP PUSH2 0x8198 DUP4 PUSH2 0x8143 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x81C9 JUMPI DUP2 MLOAD PUSH2 0x81B0 DUP9 DUP3 PUSH2 0x8153 JUMP JUMPDEST SWAP8 POP PUSH2 0x81BB DUP4 PUSH2 0x816B JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x819C JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x81F0 DUP2 DUP5 PUSH2 0x8178 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x8201 DUP2 PUSH2 0x776B JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x821C PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x81F8 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 DUP3 ADD SWAP1 POP PUSH2 0x8237 PUSH1 0x0 DUP4 ADD DUP6 PUSH2 0x7800 JUMP JUMPDEST PUSH2 0x8244 PUSH1 0x20 DUP4 ADD DUP5 PUSH2 0x7800 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8267 DUP3 PUSH2 0x79E2 JUMP JUMPDEST PUSH2 0x8271 DUP2 DUP6 PUSH2 0x824B JUMP JUMPDEST SWAP4 POP PUSH2 0x827C DUP4 PUSH2 0x79FE JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x82AD JUMPI DUP2 MLOAD PUSH2 0x8294 DUP9 DUP3 PUSH2 0x7A0E JUMP JUMPDEST SWAP8 POP PUSH2 0x829F DUP4 PUSH2 0x7A26 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x8280 JUMP JUMPDEST POP DUP6 SWAP4 POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x82D4 DUP2 DUP5 PUSH2 0x825C JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x80 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x82F6 JUMPI PUSH2 0x82F5 PUSH2 0x7703 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x8304 DUP8 DUP3 DUP9 ADD PUSH2 0x7756 JUMP JUMPDEST SWAP5 POP POP PUSH1 0x20 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x8325 JUMPI PUSH2 0x8324 PUSH2 0x7708 JUMP JUMPDEST JUMPDEST PUSH2 0x8331 DUP8 DUP3 DUP9 ADD PUSH2 0x7F7B JUMP JUMPDEST SWAP4 POP POP PUSH1 0x40 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x8352 JUMPI PUSH2 0x8351 PUSH2 0x7708 JUMP JUMPDEST JUMPDEST PUSH2 0x835E DUP8 DUP3 DUP9 ADD PUSH2 0x7F7B JUMP JUMPDEST SWAP3 POP POP PUSH1 0x60 PUSH2 0x836F DUP8 DUP3 DUP9 ADD PUSH2 0x778C JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 SWAP2 SWAP5 POP SWAP3 POP JUMP JUMPDEST PUSH2 0x8384 DUP2 PUSH2 0x772D JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x839F PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x837B JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4F7267616E697A6174696F6E206164647265737320646F6573206E6F74206578 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6973742100000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8412 PUSH1 0x24 DUP4 PUSH2 0x83A5 JUMP JUMPDEST SWAP2 POP PUSH2 0x841D DUP3 PUSH2 0x83B6 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x8441 DUP2 PUSH2 0x8405 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4F7267616E697A6174696F6E20616C7265616479207665726966696564210000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x847E PUSH1 0x1E DUP4 PUSH2 0x83A5 JUMP JUMPDEST SWAP2 POP PUSH2 0x8489 DUP3 PUSH2 0x8448 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x84AD DUP2 PUSH2 0x8471 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x566F746572206F7267616E697A6174696F6E206973206E6F7420766572696669 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x65642C206E6F74207065726D697474656420746F20766F746521000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8510 PUSH1 0x3A DUP4 PUSH2 0x83A5 JUMP JUMPDEST SWAP2 POP PUSH2 0x851B DUP3 PUSH2 0x84B4 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x853F DUP2 PUSH2 0x8503 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x566F746572206F7267616E697A6174696F6E2063616E6E6F7420766F7465206D PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6F7265207468616E206F6E636521000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x85A2 PUSH1 0x2E DUP4 PUSH2 0x83A5 JUMP JUMPDEST SWAP2 POP PUSH2 0x85AD DUP3 PUSH2 0x8546 JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x85D1 DUP2 PUSH2 0x8595 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x8612 DUP3 PUSH2 0x776B JUMP JUMPDEST SWAP2 POP PUSH2 0x861D DUP4 PUSH2 0x776B JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x8652 JUMPI PUSH2 0x8651 PUSH2 0x85D8 JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x31 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x8697 DUP3 PUSH2 0x776B JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 EQ ISZERO PUSH2 0x86CA JUMPI PUSH2 0x86C9 PUSH2 0x85D8 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x870F DUP3 PUSH2 0x776B JUMP JUMPDEST SWAP2 POP PUSH2 0x871A DUP4 PUSH2 0x776B JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x872D JUMPI PUSH2 0x872C PUSH2 0x85D8 JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x877F JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH2 0x8793 JUMPI PUSH2 0x8792 PUSH2 0x8738 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4F7267616E697A6174696F6E20616C7265616479207265676973746572656421 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x87CF PUSH1 0x20 DUP4 PUSH2 0x83A5 JUMP JUMPDEST SWAP2 POP PUSH2 0x87DA DUP3 PUSH2 0x8799 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x87FE DUP2 PUSH2 0x87C2 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x12 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x883F DUP3 PUSH2 0x776B JUMP JUMPDEST SWAP2 POP PUSH2 0x884A DUP4 PUSH2 0x776B JUMP JUMPDEST SWAP3 POP DUP3 PUSH2 0x885A JUMPI PUSH2 0x8859 PUSH2 0x8805 JUMP JUMPDEST JUMPDEST DUP3 DUP3 DIV SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x8870 DUP3 PUSH2 0x776B JUMP JUMPDEST SWAP2 POP PUSH2 0x887B DUP4 PUSH2 0x776B JUMP JUMPDEST SWAP3 POP DUP2 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DIV DUP4 GT DUP3 ISZERO ISZERO AND ISZERO PUSH2 0x88B4 JUMPI PUSH2 0x88B3 PUSH2 0x85D8 JUMP JUMPDEST JUMPDEST DUP3 DUP3 MUL SWAP1 POP SWAP3 SWAP2 POP POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xD2 EXTCODECOPY PUSH20 0xA98D67933766A8FB5DD76104119B3A0C5C135D3C 0xDA BYTE KECCAK256 0xDE SWAP5 OR CHAINID 0xD0 DUP12 PUSH5 0x736F6C6343 STOP ADDMOD MULMOD STOP CALLER ", + "sourceMap": "60:28889:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7958:510;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;23710:211;;;:::i;:::-;;16914:241;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;22910:320;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9491:2250;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;13330:190;;;:::i;:::-;;4894:397;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;17639:217;;;:::i;:::-;;23323:322;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3673:136;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6622:724;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;27144:1513;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3920:280;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;21887:535;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;20048:1543;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;17254:317;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1956:33;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2814:129;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4300:496;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11749:391;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;12564:139;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;18467:1415;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;17943:410;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;24747:205;;;:::i;:::-;;2408:112;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8547:327;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;14787:641;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5369:201;;;:::i;:::-;;12266:178;;;:::i;:::-;;24012:118;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7399:504;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13648:697;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;15896:625;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;22509:311;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3041:133;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;24223:464;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14447:273;;;:::i;:::-;;12792:474;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3464:134;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;25046:441;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;28727:219;;;:::i;:::-;;2609:110;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3182:209;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;25597:1389;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1927:20;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16600:233;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7958:510;8128:4;8091:11;8104:13;5719:1;5672:13;:26;5686:11;5672:26;;;;;;;;;;;;;;;:43;;;:48;;5650:134;;;;;;;;;;;;:::i;:::-;;;;;;;;;5818:13;:26;5832:11;5818:26;;;;;;;;;;;;;;;:46;;;;;;;;;;;;5817:47;5795:127;;;;;;;;;;;;:::i;:::-;;;;;;;;;6004:1;5955:13;:28;5969:13;5955:28;;;;;;;;;;;;;;;:45;;;:50;;:119;;;;;6026:13;:28;6040:13;6026:28;;;;;;;;;;;;;;;:48;;;;;;;;;;;;5955:119;5933:227;;;;;;;;;;;;:::i;:::-;;;;;;;;;6231:1;6193:6;:19;6200:11;6193:19;;;;;;;;;;;;;;;:34;6213:13;6193:34;;;;;;;;;;;;;;;;:39;6171:135;;;;;;;;;;;;:::i;:::-;;;;;;;;;8185:1:::1;8145:13;:26:::0;8159:11:::1;8145:26;;;;;;;;;;;;;;;:36;;;:41;;;;;;;:::i;:::-;;;;;;;;8197:13;:26:::0;8211:11:::1;8197:26;;;;;;;;;;;;;;;:37;;8240:13;8197:57;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8302:1;8265:6;:19;8272:11;8265:19;;;;;;;;;;;;;;;:34;8285:13;8265:34;;;;;;;;;;;;;;;:38;;;;8364:12;8318:13;:26:::0;8332:11:::1;8318:26;;;;;;;;;;;;;;;:43;;;:58;8314:147;;;8400:4;8393:11;;;;8314:147;8444:5;8437:12;;6317:1;7958:510:::0;;;;;;;:::o;23710:211::-;23765:16;23784:20;:27;;;;23765:46;;23827:9;23822:92;23846:8;23842:1;:12;23822:92;;;23876:20;:26;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23856:3;;;;;:::i;:::-;;;;23822:92;;;;23754:167;23710:211::o;16914:241::-;17038:1;17006:12;:19;17019:5;17006:19;;;;;;;;;;;:29;;;:33;;;;:::i;:::-;16974:12;:19;16987:5;16974:19;;;;;;;;;;;:29;;:65;;;;17050:12;:19;17063:5;17050:19;;;;;;;;;;;:30;;17086:10;17050:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17146:1;17108:16;:23;17125:5;17108:23;;;;;;;;;;;:35;17132:10;17108:35;;;;;;;;;;;;;;;:39;;;;16914:241;:::o;22910:320::-;23088:1;23031:18;:31;23050:11;23031:31;;;;;;;;;;;;;;;:41;;;:58;;;;:::i;:::-;22974:18;:31;22993:11;22974:31;;;;;;;;;;;;;;;:41;;:115;;;;23100:18;:31;23119:11;23100:31;;;;;;;;;;;;;;;:42;;23148:10;23100:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23221:1;23170:23;:36;23194:11;23170:36;;;;;;;;;;;;;;;:48;23207:10;23170:48;;;;;;;;;;;;;;;:52;;;;22910:320;:::o;9491:2250::-;9574:8;9570:2164;;;9599:11;9634:9;9629:577;9653:13;:26;9667:11;9653:26;;;;;;;;;;;;;;;:34;;;9649:1;:38;9629:577;;;9907:1;9797:13;:53;9811:13;:26;9825:11;9811:26;;;;;;;;;;;;;;;:35;;9847:1;9811:38;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;9797:53;;;;;;;;;;;;;;;:86;;;:111;;;;:::i;:::-;9713:13;:53;9727:13;:26;9741:11;9727:26;;;;;;;;;;;;;;;:35;;9763:1;9727:38;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;9713:53;;;;;;;;;;;;;;;:60;;:195;;;;9939:20;;9933:3;:26;;;;:::i;:::-;9927:32;;10170:20;;10061:13;:53;10075:13;:26;10089:11;10075:26;;;;;;;;;;;;;;;:35;;10111:1;10075:38;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10061:53;;;;;;;;;;;;;;;:85;;;:129;;;;:::i;:::-;9978:13;:53;9992:13;:26;10006:11;9992:26;;;;;;;;;;;;;;;:35;;10028:1;9992:38;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;9978:53;;;;;;;;;;;;;;;:59;;:212;;;;9689:3;;;;;:::i;:::-;;;;9629:577;;;;10324:3;10272:13;:26;10286:11;10272:26;;;;;;;;;;;;;;;:32;;;:55;;;;:::i;:::-;10220:13;:26;10234:11;10220:26;;;;;;;;;;;;;;;:32;;:107;;;;10347:9;10342:301;10366:13;:26;10380:11;10366:26;;;;;;;;;;;;;;;:36;;;10362:1;:40;10342:301;;;10626:1;10514:13;:55;10528:13;:26;10542:11;10528:26;;;;;;;;;;;;;;;:37;;10566:1;10528:40;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10514:55;;;;;;;;;;;;;;;:88;;;:113;;;;:::i;:::-;10428:13;:55;10442:13;:26;10456:11;10442:26;;;;;;;;;;;;;;;:37;;10480:1;10442:40;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10428:55;;;;;;;;;;;;;;;:62;;:199;;;;10404:3;;;;;:::i;:::-;;;;10342:301;;;;9584:1070;9570:2164;;;10675:11;10710:9;10705:587;10729:13;:26;10743:11;10729:26;;;;;;;;;;;;;;;:36;;;10725:1;:40;10705:587;;;10989:1;10877:13;:55;10891:13;:26;10905:11;10891:26;;;;;;;;;;;;;;;:37;;10929:1;10891:40;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10877:55;;;;;;;;;;;;;;;:88;;;:113;;;;:::i;:::-;10791:13;:55;10805:13;:26;10819:11;10805:26;;;;;;;;;;;;;;;:37;;10843:1;10805:40;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10791:55;;;;;;;;;;;;;;;:62;;:199;;;;11021:20;;11015:3;:26;;;;:::i;:::-;11009:32;;11256:20;;11145:13;:55;11159:13;:26;11173:11;11159:26;;;;;;;;;;;;;;;:37;;11197:1;11159:40;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;11145:55;;;;;;;;;;;;;;;:87;;;:131;;;;:::i;:::-;11060:13;:55;11074:13;:26;11088:11;11074:26;;;;;;;;;;;;;;;:37;;11112:1;11074:40;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;11060:55;;;;;;;;;;;;;;;:61;;:216;;;;10767:3;;;;;:::i;:::-;;;;10705:587;;;;11410:3;11358:13;:26;11372:11;11358:26;;;;;;;;;;;;;;;:32;;;:55;;;;:::i;:::-;11306:13;:26;11320:11;11306:26;;;;;;;;;;;;;;;:32;;:107;;;;11433:9;11428:295;11452:13;:26;11466:11;11452:26;;;;;;;;;;;;;;;:34;;;11448:1;:38;11428:295;;;11706:1;11596:13;:53;11610:13;:26;11624:11;11610:26;;;;;;;;;;;;;;;:35;;11646:1;11610:38;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;11596:53;;;;;;;;;;;;;;;:86;;;:111;;;;:::i;:::-;11512:13;:53;11526:13;:26;11540:11;11526:26;;;;;;;;;;;;;;;:35;;11562:1;11526:38;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;11512:53;;;;;;;;;;;;;;;:60;;:195;;;;11488:3;;;;;:::i;:::-;;;;11428:295;;;;10660:1074;9570:2164;9491:2250;;:::o;13330:190::-;13378:16;13397:13;:20;;;;13378:39;;13433:9;13428:85;13452:8;13448:1;:12;13428:85;;;13482:13;:19;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;13462:3;;;;;:::i;:::-;;;;13428:85;;;;13367:153;13330:190::o;4894:397::-;4967:21;5011:9;5006:243;5030:19;:26;;;;5026:1;:30;5006:243;;;5135:5;5082:58;;:13;:37;5096:19;5116:1;5096:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;5082:37;;;;;;;;;;;;;;;:49;;;;;;;;;;;;:58;;;5078:160;;;5161:17;5184:13;:37;5198:19;5218:1;5198:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;5184:37;;;;;;;;;;;;;;;5161:61;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5078:160;5058:3;;;;;:::i;:::-;;;;5006:243;;;;5266:17;5259:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4894:397;:::o;17639:217::-;17696:16;17715:22;:29;;;;17696:48;;17760:9;17755:94;17779:8;17775:1;:12;17755:94;;;17809:22;:28;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;17789:3;;;;;:::i;:::-;;;;17755:94;;;;17685:171;17639:217::o;23323:322::-;23370:24;23412:9;23407:193;23431:23;:30;;;;23427:1;:34;23407:193;;;23483:20;23527:18;:46;23546:23;23570:1;23546:26;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;23527:46;;;;;;;;;;;;;;;23483:105;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23463:3;;;;;:::i;:::-;;;;23407:193;;;;23617:20;23610:27;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23323:322;:::o;3673:136::-;3741:4;3800:1;3765:6;:19;3772:11;3765:19;;;;;;;;;;;;;;;:31;3785:10;3765:31;;;;;;;;;;;;;;;;:36;3758:43;;3673:136;;;:::o;6622:724::-;6923:1;6867:13;:35;6881:20;6867:35;;;;;;;;;;;;;;;:52;;;:57;6845:139;;;;;;;;;;;;:::i;:::-;;;;;;;;;6997:23;;:::i;:::-;7051:20;7033:3;:15;;:38;;;;;;;;;;;7093:17;7082:3;:8;;:28;;;;7135:12;7121:3;:11;;:26;;;;7169:11;7158:3;:8;;:22;;;;7221:6;7214:4;:13;;;;:::i;:::-;7191:3;:20;;:36;;;;;7276:3;7238:13;:35;7252:20;7238:35;;;;;;;;;;;;;;;:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7292:19;7317:20;7292:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6834:512;6622:724;;;;;:::o;27144:1513::-;27280:5;27232:53;;:18;:31;27251:11;27232:31;;;;;;;;;;;;;;;:44;;;;;;;;;;;;:53;;;27228:1422;;;27351:5;27302:13;:26;27316:11;27302:26;;;;;;;;;;;;;;;:46;;;:54;;;;;;;;;;;;;;;;;;27412:5;27371:13;:26;27385:11;27371:26;;;;;;;;;;;;;;;:38;;;:46;;;;;;;;;;;;;;;;;;27454:1;27432:18;;:23;;;;;;;:::i;:::-;;;;;;;;27500:5;27470:14;:27;27485:11;27470:27;;;;;;;;;;;;;;;;:35;;;;;;;;;;;;;;;;;;27520:17;27559:9;27571:1;27559:13;;27554:441;27578:19;:26;;;;27574:1;:30;27554:441;;;27656:13;:37;27670:19;27690:1;27670:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;27656:37;;;;;;;;;;;;;;;:57;;;;;;;;;;;;:138;;;;;27750:13;:37;27764:19;27784:1;27764:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;27750:37;;;;;;;;;;;;;;;:44;;;27738:9;:56;27656:138;27630:350;;;27849:13;:37;27863:19;27883:1;27863:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;27849:37;;;;;;;;;;;;;;;:44;;;27837:56;;27916:15;27937:19;27957:1;27937:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;27916:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27630:350;27606:3;;;;;:::i;:::-;;;;27554:441;;;;28009:29;28093:15;:22;;;;28041:13;:26;28055:11;28041:26;;;;;;;;;;;;;;;:32;;;:74;;;;:::i;:::-;28009:106;;28137:9;28132:340;28156:15;:22;;;;28152:1;:26;28132:340;;;28435:21;28372:13;:33;28386:15;28402:1;28386:18;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;28372:33;;;;;;;;;;;;;;;:39;;;:84;;;;:::i;:::-;28309:13;:33;28323:15;28339:1;28323:18;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;28309:33;;;;;;;;;;;;;;;:39;;:147;;;;28180:3;;;;;:::i;:::-;;;;28132:340;;;;28488:16;28507:15;:22;;;;28488:41;;28549:9;28544:95;28568:8;28564:1;:12;28544:95;;;28602:15;:21;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;28578:3;;;;;:::i;:::-;;;;28544:95;;;;27287:1363;;;27228:1422;27144:1513;:::o;3920:280::-;4029:4;4096:12;4050:13;:26;4064:11;4050:26;;;;;;;;;;;;;;;:43;;;:58;4046:147;;;4132:4;4125:11;;;;4046:147;4176:5;4169:12;;3920:280;;;;;:::o;21887:535::-;22039:29;;:::i;:::-;22102:11;22081:6;:18;;:32;;;;;;;;;;;22144:3;22124:6;:17;;:23;;;;22189:17;22158:6;:28;;:48;;;;;22266:6;22246:17;:26;;;;:::i;:::-;22217:6;:26;;:55;;;;;22304:5;22283:6;:18;;:26;;;;;;;;;;;22356:6;22322:18;:31;22341:11;22322:31;;;;;;;;;;;;;;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;22373:23;22402:11;22373:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;22028:394;21887:535;;;:::o;20048:1543::-;20111:19;20133:12;:19;20146:5;20133:19;;;;;;;;;;;:31;;;;;;;;;;;;20111:53;;20213:4;20179:38;;:12;:19;20192:5;20179:19;;;;;;;;;;;:30;;;;;;;;;;;;:38;;;20175:1409;;;20283:5;20234:13;:26;20248:11;20234:26;;;;;;;;;;;;;;;:46;;;:54;;;;;;;;;;;;;;;;;;20344:5;20303:13;:26;20317:11;20303:26;;;;;;;;;;;;;;;:38;;;:46;;;;;;;;;;;;;;;;;;20386:1;20364:18;;:23;;;;;;;:::i;:::-;;;;;;;;20432:5;20402:14;:27;20417:11;20402:27;;;;;;;;;;;;;;;;:35;;;;;;;;;;;;;;;;;;20454:17;20493:9;20505:1;20493:13;;20488:441;20512:19;:26;;;;20508:1;:30;20488:441;;;20590:13;:37;20604:19;20624:1;20604:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;20590:37;;;;;;;;;;;;;;;:57;;;;;;;;;;;;:138;;;;;20684:13;:37;20698:19;20718:1;20698:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;20684:37;;;;;;;;;;;;;;;:44;;;20672:9;:56;20590:138;20564:350;;;20783:13;:37;20797:19;20817:1;20797:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;20783:37;;;;;;;;;;;;;;;:44;;;20771:56;;20850:15;20871:19;20891:1;20871:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;20850:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20564:350;20540:3;;;;;:::i;:::-;;;;20488:441;;;;20943:29;21027:15;:22;;;;20975:13;:26;20989:11;20975:26;;;;;;;;;;;;;;;:32;;;:74;;;;:::i;:::-;20943:106;;21071:9;21066:340;21090:15;:22;;;;21086:1;:26;21066:340;;;21369:21;21306:13;:33;21320:15;21336:1;21320:18;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;21306:33;;;;;;;;;;;;;;;:39;;;:84;;;;:::i;:::-;21243:13;:33;21257:15;21273:1;21257:18;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;21243:33;;;;;;;;;;;;;;;:39;;:147;;;;21114:3;;;;;:::i;:::-;;;;21066:340;;;;21422:16;21441:15;:22;;;;21422:41;;21483:9;21478:95;21502:8;21498:1;:12;21478:95;;;21536:15;:21;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;21512:3;;;;;:::i;:::-;;;;21478:95;;;;20219:1365;;;20175:1409;20100:1491;20048:1543;:::o;17254:317::-;17305:16;17339:9;17334:190;17358:20;;17354:1;:24;17334:190;;;17431:15;17404:12;:15;17417:1;17404:15;;;;;;;;;;;:24;;;:42;17400:113;;;17467:22;17495:1;17467:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17400:113;17380:3;;;;;:::i;:::-;;;;17334:190;;;;17541:22;17534:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17254:317;:::o;1956:33::-;;;;:::o;2814:129::-;2877:7;2904:13;:23;2918:8;2904:23;;;;;;;;;;;;;;;:31;;;2897:38;;2814:129;;;:::o;4300:496::-;4371:21;4415:9;4410:344;4434:19;:26;;;;4430:1;:30;4410:344;;;4504:13;:37;4518:19;4538:1;4518:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4504:37;;;;;;;;;;;;;;;:57;;;;;;;;;;;;:127;;;;;4582:13;:37;4596:19;4616:1;4596:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4582:37;;;;;;;;;;;;;;;:49;;;;;;;;;;;;4504:127;4482:261;;;4666:17;4689:13;:37;4703:19;4723:1;4703:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4689:37;;;;;;;;;;;;;;;4666:61;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4482:261;4462:3;;;;;:::i;:::-;;;;4410:344;;;;4771:17;4764:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4300:496;:::o;11749:391::-;11902:2;11881:18;;:23;;;;:::i;:::-;11874:3;11837:13;:26;11851:11;11837:26;;;;;;;;;;;;;;;:34;;;:40;;;;:::i;:::-;:67;11819:314;;11980:4;11931:13;:26;11945:11;11931:26;;;;;;;;;;;;;;;:46;;;:53;;;;;;;;;;;;;;;;;;11819:314;;;12066:5;12017:13;:26;12031:11;12017:26;;;;;;;;;;;;;;;:46;;;:54;;;;;;;;;;;;;;;;;;12086:35;12102:11;12115:5;12086:15;:35::i;:::-;11819:314;11749:391;:::o;12564:139::-;12649:1;12627:18;;:23;;;;;;;:::i;:::-;;;;;;;;12691:4;12661:14;:27;12676:11;12661:27;;;;;;;;;;;;;;;;:34;;;;;;;;;;;;;;;;;;12564:139;:::o;18467:1415::-;18525:19;18547:12;:19;18560:5;18547:19;;;;;;;;;;;:31;;;;;;;;;;;;18525:53;;18593:12;:19;18606:5;18593:19;;;;;;;;;;;:30;;;;;;;;;;;;18589:1286;;;18663:9;18640:600;18699:13;:26;18713:11;18699:26;;;;;;;;;;;;;;;:35;;:42;;;;18695:1;:46;18640:600;;;18990:20;;18881:13;:53;18895:13;:26;18909:11;18895:26;;;;;;;;;;;;;;;:35;;18931:1;18895:38;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;18881:53;;;;;;;;;;;;;;;:85;;;:129;;;;:::i;:::-;18798:13;:53;18812:13;:26;18826:11;18812:26;;;;;;;;;;;;;;;:35;;18848:1;18812:38;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;18798:53;;;;;;;;;;;;;;;:59;;:212;;;;19223:1;19113:13;:53;19127:13;:26;19141:11;19127:26;;;;;;;;;;;;;;;:35;;19163:1;19127:38;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;19113:53;;;;;;;;;;;;;;;:86;;;:111;;;;:::i;:::-;19029:13;:53;19043:13;:26;19057:11;19043:26;;;;;;;;;;;;;;;:35;;19079:1;19043:38;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;19029:53;;;;;;;;;;;;;;;:60;;:195;;;;18760:3;;;;;:::i;:::-;;;;18640:600;;;;19277:9;19254:610;19313:13;:26;19327:11;19313:26;;;;;;;;;;;;;;;:37;;:44;;;;19309:1;:48;19254:610;;;19610:20;;19499:13;:55;19513:13;:26;19527:11;19513:26;;;;;;;;;;;;;;;:37;;19551:1;19513:40;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;19499:55;;;;;;;;;;;;;;;:87;;;:131;;;;:::i;:::-;19414:13;:55;19428:13;:26;19442:11;19428:26;;;;;;;;;;;;;;;:37;;19466:1;19428:40;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;19414:55;;;;;;;;;;;;;;;:61;;:216;;;;19847:1;19735:13;:55;19749:13;:26;19763:11;19749:26;;;;;;;;;;;;;;;:37;;19787:1;19749:40;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;19735:55;;;;;;;;;;;;;;;:88;;;:113;;;;:::i;:::-;19649:13;:55;19663:13;:26;19677:11;19663:26;;;;;;;;;;;;;;;:37;;19701:1;19663:40;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;19649:55;;;;;;;;;;;;;;;:62;;:199;;;;19376:3;;;;;:::i;:::-;;;;19254:610;;;;18589:1286;18514:1368;18467:1415;:::o;17943:410::-;18004:18;18068:12;:19;18081:5;18068:19;;;;;;;;;;;:29;;;18025:12;:19;18038:5;18025:19;;;;;;;;;;;:27;;;:72;;;;:::i;:::-;18004:93;;18162:2;18149:10;:15;;;;:::i;:::-;18142:3;18112:12;:19;18125:5;18112:19;;;;;;;;;;;:27;;;:33;;;;:::i;:::-;:52;18108:193;;18214:4;18181:12;:19;18194:5;18181:19;;;;;;;;;;;:30;;;:37;;;;;;;;;;;;;;;;;;18108:193;;;18284:5;18251:12;:19;18264:5;18251:19;;;;;;;;;;;:30;;;:38;;;;;;;;;;;;;;;;;;18108:193;18340:5;18311:12;:19;18324:5;18311:19;;;;;;;;;;;:26;;;:34;;;;;;;;;;;;;;;;;;17993:360;17943:410;:::o;24747:205::-;24800:16;24819:18;:25;;;;24800:44;;24860:9;24855:90;24879:8;24875:1;:12;24855:90;;;24909:18;:24;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;24889:3;;;;;:::i;:::-;;;;24855:90;;;;24789:163;24747:205::o;2408:112::-;2451:4;2475:13;:25;2489:10;2475:25;;;;;;;;;;;;;;;:37;;;;;;;;;;;;2468:44;;2408:112;:::o;8547:327::-;8662:4;8668;8768:2;8747:18;;:23;;;;:::i;:::-;8740:3;8703:13;:26;8717:11;8703:26;;;;;;;;;;;;;;;:34;;;:40;;;;:::i;:::-;:67;8685:147;;8805:4;8811:8;8797:23;;;;;;8685:147;8850:5;8857:8;8842:24;;;;8547:327;;;;;;:::o;14787:641::-;14854:16;14873:15;:22;;;;14854:41;;14911:9;14906:87;14930:8;14926:1;:12;14906:87;;;14960:15;:21;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;14940:3;;;;;:::i;:::-;;;;14906:87;;;;15022:9;15003:202;15054:13;:26;15068:11;15054:26;;;;;;;;;;;;;;;:35;;:42;;;;15050:1;:46;15003:202;;;15188:5;15141:4;:44;15146:13;:26;15160:11;15146:26;;;;;;;;;;;;;;;:35;;15182:1;15146:38;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;15141:44;;;;;;;;;;;;;;;;:52;;;;;;;;;;;;;;;;;;15111:3;;;;;:::i;:::-;;;;15003:202;;;;15234:9;15215:206;15266:13;:26;15280:11;15266:26;;;;;;;;;;;;;;;:37;;:44;;;;15262:1;:48;15215:206;;;15404:5;15355:4;:46;15360:13;:26;15374:11;15360:26;;;;;;;;;;;;;;;:37;;15398:1;15360:40;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;15355:46;;;;;;;;;;;;;;;;:54;;;;;;;;;;;;;;;;;;15325:3;;;;;:::i;:::-;;;;15215:206;;;;14843:585;14787:641;:::o;5369:201::-;5420:16;5439:17;:24;;;;5420:43;;5479:9;5474:89;5498:8;5494:1;:12;5474:89;;;5528:17;:23;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5508:3;;;;;:::i;:::-;;;;5474:89;;;;5409:161;5369:201::o;12266:178::-;12351:4;12311:13;:25;12325:10;12311:25;;;;;;;;;;;;;;;:37;;;:44;;;;;;;;;;;;;;;;;;12366:33;12382:10;12394:4;12366:15;:33::i;:::-;12410:26;12425:10;12410:14;:26::i;:::-;12266:178::o;24012:118::-;24063:16;24099:23;24092:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;24012:118;:::o;7399:504::-;7567:4;7530:11;7543:13;5719:1;5672:13;:26;5686:11;5672:26;;;;;;;;;;;;;;;:43;;;:48;;5650:134;;;;;;;;;;;;:::i;:::-;;;;;;;;;5818:13;:26;5832:11;5818:26;;;;;;;;;;;;;;;:46;;;;;;;;;;;;5817:47;5795:127;;;;;;;;;;;;:::i;:::-;;;;;;;;;6004:1;5955:13;:28;5969:13;5955:28;;;;;;;;;;;;;;;:45;;;:50;;:119;;;;;6026:13;:28;6040:13;6026:28;;;;;;;;;;;;;;;:48;;;;;;;;;;;;5955:119;5933:227;;;;;;;;;;;;:::i;:::-;;;;;;;;;6231:1;6193:6;:19;6200:11;6193:19;;;;;;;;;;;;;;;:34;6213:13;6193:34;;;;;;;;;;;;;;;;:39;6171:135;;;;;;;;;;;;:::i;:::-;;;;;;;;;7622:1:::1;7584:13;:26:::0;7598:11:::1;7584:26;;;;;;;;;;;;;;;:34;;;:39;;;;;;;:::i;:::-;;;;;;;;7634:13;:26:::0;7648:11:::1;7634:26;;;;;;;;;;;;;;;:35;;7675:13;7634:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7737:1;7700:6:::0;:19:::1;7707:11;7700:19;;;;;;;;;;;;;;;:34;7720:13;7700:34;;;;;;;;;;;;;;;:38;;;;7799:12;7753:13;:26:::0;7767:11:::1;7753:26;;;;;;;;;;;;;;;:43;;;:58;7749:147;;;7835:4;7828:11;;;;7749:147;7879:5;7872:12;;6317:1;7399:504:::0;;;;;;;:::o;13648:697::-;13724:9;13705:201;13756:13;:26;13770:11;13756:26;;;;;;;;;;;;;;;:35;;:42;;;;13752:1;:46;13705:201;;;13890:4;13843;:44;13848:13;:26;13862:11;13848:26;;;;;;;;;;;;;;;:35;;13884:1;13848:38;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;13843:44;;;;;;;;;;;;;;;;:51;;;;;;;;;;;;;;;;;;13813:3;;;;;:::i;:::-;;;;13705:201;;;;13935:9;13916:205;13967:13;:26;13981:11;13967:26;;;;;;;;;;;;;;;:37;;:44;;;;13963:1;:48;13916:205;;;14105:4;14056;:46;14061:13;:26;14075:11;14061:26;;;;;;;;;;;;;;;:37;;14099:1;14061:40;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;14056:46;;;;;;;;;;;;;;;;:53;;;;;;;;;;;;;;;;;;14026:3;;;;;:::i;:::-;;;;13916:205;;;;14138:9;14133:205;14157:19;:26;;;;14153:1;:30;14133:205;;;14241:5;14209:37;;:4;:28;14214:19;14234:1;14214:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;14209:28;;;;;;;;;;;;;;;;;;;;;;;;;:37;;;14205:122;;;14267:15;14288:19;14308:1;14288:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;14267:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14205:122;14185:3;;;;;:::i;:::-;;;;14133:205;;;;13648:697;:::o;15896:625::-;16096:20;;:::i;:::-;16138;;16129:3;:6;;:29;;;;;16187:20;16169:3;:15;;:38;;;;;;;;;;;16232:12;16218:3;:11;;:26;;;;16266:11;16255:3;:8;;:22;;;;16305:17;16288:3;:14;;:34;;;;;16368:6;16348:17;:26;;;;:::i;:::-;16333:3;:12;;:41;;;;;16398:4;16385:3;:10;;:17;;;;;;;;;;;16452:3;16415:12;:34;16428:20;;16415:34;;;;;;;;;;;:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16512:1;16489:20;;:24;;;;:::i;:::-;16466:20;:47;;;;16085:436;15896:625;;;;:::o;22509:311::-;22680:1;22625:18;:31;22644:11;22625:31;;;;;;;;;;;;;;;:39;;;:56;;;;:::i;:::-;22570:18;:31;22589:11;22570:31;;;;;;;;;;;;;;;:39;;:111;;;;22692:18;:31;22711:11;22692:31;;;;;;;;;;;;;;;:40;;22738:10;22692:57;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;22811:1;22760:23;:36;22784:11;22760:36;;;;;;;;;;;;;;;:48;22797:10;22760:48;;;;;;;;;;;;;;;:52;;;;22509:311;:::o;3041:133::-;3106:7;3133:13;:23;3147:8;3133:23;;;;;;;;;;;;;;;:33;;;3126:40;;3041:133;;;:::o;24223:464::-;24271:16;24305:9;24300:344;24324:19;:26;;;;24320:1;:30;24300:344;;;24447:4;24394:57;;:13;:37;24408:19;24428:1;24408:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;24394:37;;;;;;;;;;;;;;;:49;;;;;;;;;;;;:57;;;:141;;;;;24530:5;24472:63;;:18;:42;24491:19;24511:1;24491:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;24472:42;;;;;;;;;;;;;;;:54;;;;;;;;;;;;:63;;;24394:141;24372:261;;;24570:18;24594:19;24614:1;24594:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;24570:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;24372:261;24352:3;;;;;:::i;:::-;;;;24300:344;;;;24661:18;24654:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;24223:464;:::o;14447:273::-;14500:9;14495:218;14519:15;:22;;;;14515:1;:26;14495:218;;;14681:20;;14622:13;:33;14636:15;14652:1;14636:18;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;14622:33;;;;;;;;;;;;;;;:39;;;:79;;;;:::i;:::-;14563:13;:33;14577:15;14593:1;14577:18;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;14563:33;;;;;;;;;;;;;;;:39;;:138;;;;14543:3;;;;;:::i;:::-;;;;14495:218;;;;14447:273::o;12792:474::-;12836:16;12870:9;12865:363;12889:19;:26;;;;12885:1;:30;12865:363;;;13009:5;12959:55;;:13;:37;12973:19;12993:1;12973:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;12959:37;;;;;;;;;;;;;;;:46;;;;;;;;;;;;:55;;;:165;;;;;13109:15;13035:13;:37;13049:19;13069:1;13049:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;13035:37;;;;;;;;;;;;;;;:54;;;:89;12959:165;12937:280;;;13159:13;13178:19;13198:1;13178:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;13159:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12937:280;12917:3;;;;;:::i;:::-;;;;12865:363;;;;13245:13;13238:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12792:474;:::o;3464:134::-;3530:4;3589:1;3554:6;:19;3561:11;3554:19;;;;;;;;;;;;;;;:31;3574:10;3554:31;;;;;;;;;;;;;;;;:36;3547:43;;3464:134;;;:::o;25046:441::-;25119:18;25195;:31;25214:11;25195:31;;;;;;;;;;;;;;;:41;;;25140:18;:31;25159:11;25140:31;;;;;;;;;;;;;;;:39;;;:96;;;;:::i;:::-;25119:117;;25313:2;25300:10;:15;;;;:::i;:::-;25293:3;25251:18;:31;25270:11;25251:31;;;;;;;;;;;;;;;:39;;;:45;;;;:::i;:::-;:64;25247:233;;25379:4;25332:18;:31;25351:11;25332:31;;;;;;;;;;;;;;;:44;;;:51;;;;;;;;;;;;;;;;;;25247:233;;;25463:5;25416:18;:31;25435:11;25416:31;;;;;;;;;;;;;;;:44;;;:52;;;;;;;;;;;;;;;;;;25247:233;25108:379;25046:441;:::o;28727:219::-;28784:16;28803:23;:30;;;;28784:49;;28849:9;28844:95;28868:8;28864:1;:12;28844:95;;;28898:23;:29;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;28878:3;;;;;:::i;:::-;;;;28844:95;;;;28773:173;28727:219::o;2609:110::-;2650:4;2674:13;:25;2688:10;2674:25;;;;;;;;;;;;;;;:37;;;;;;;;;;;;2667:44;;2609:110;:::o;3182:209::-;3243:7;3357:26;3374:8;3357:16;:26::i;:::-;3317:24;3332:8;3317:14;:24::i;:::-;3283:18;;:58;;;;:::i;:::-;:100;;;;:::i;:::-;3263:120;;3182:209;;;:::o;25597:1389::-;25722:5;25674:53;;:18;:31;25693:11;25674:31;;;;;;;;;;;;;;;:44;;;;;;;;;;;;:53;;;25670:1309;;;25767:9;25744:600;25803:13;:26;25817:11;25803:26;;;;;;;;;;;;;;;:35;;:42;;;;25799:1;:46;25744:600;;;26094:20;;25985:13;:53;25999:13;:26;26013:11;25999:26;;;;;;;;;;;;;;;:35;;26035:1;25999:38;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;25985:53;;;;;;;;;;;;;;;:85;;;:129;;;;:::i;:::-;25902:13;:53;25916:13;:26;25930:11;25916:26;;;;;;;;;;;;;;;:35;;25952:1;25916:38;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;25902:53;;;;;;;;;;;;;;;:59;;:212;;;;26327:1;26217:13;:53;26231:13;:26;26245:11;26231:26;;;;;;;;;;;;;;;:35;;26267:1;26231:38;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;26217:53;;;;;;;;;;;;;;;:86;;;:111;;;;:::i;:::-;26133:13;:53;26147:13;:26;26161:11;26147:26;;;;;;;;;;;;;;;:35;;26183:1;26147:38;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;26133:53;;;;;;;;;;;;;;;:60;;:195;;;;25864:3;;;;;:::i;:::-;;;;25744:600;;;;26381:9;26358:610;26417:13;:26;26431:11;26417:26;;;;;;;;;;;;;;;:37;;:44;;;;26413:1;:48;26358:610;;;26714:20;;26603:13;:55;26617:13;:26;26631:11;26617:26;;;;;;;;;;;;;;;:37;;26655:1;26617:40;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;26603:55;;;;;;;;;;;;;;;:87;;;:131;;;;:::i;:::-;26518:13;:55;26532:13;:26;26546:11;26532:26;;;;;;;;;;;;;;;:37;;26570:1;26532:40;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;26518:55;;;;;;;;;;;;;;;:61;;:216;;;;26951:1;26839:13;:55;26853:13;:26;26867:11;26853:26;;;;;;;;;;;;;;;:37;;26891:1;26853:40;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;26839:55;;;;;;;;;;;;;;;:88;;;:113;;;;:::i;:::-;26753:13;:55;26767:13;:26;26781:11;26767:26;;;;;;;;;;;;;;;:37;;26805:1;26767:40;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;26753:55;;;;;;;;;;;;;;;:62;;:199;;;;26480:3;;;;;:::i;:::-;;;;26358:610;;;;25670:1309;25597:1389;:::o;1927:20::-;;;;;;;;;;;;;:::o;16600:233::-;16718:1;16688:12;:19;16701:5;16688:19;;;;;;;;;;;:27;;;:31;;;;:::i;:::-;16658:12;:19;16671:5;16658:19;;;;;;;;;;;:27;;:61;;;;16730:12;:19;16743:5;16730:19;;;;;;;;;;;:28;;16764:10;16730:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16824:1;16786:16;:23;16803:5;16786:23;;;;;;;;;;;:35;16810:10;16786:35;;;;;;;;;;;;;;;:39;;;;16600:233;:::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;7:75:1:-;40:6;73:2;67:9;57:19;;7:75;:::o;88:117::-;197:1;194;187:12;211:117;320:1;317;310:12;334:126;371:7;411:42;404:5;400:54;389:65;;334:126;;;:::o;466:96::-;503:7;532:24;550:5;532:24;:::i;:::-;521:35;;466:96;;;:::o;568:122::-;641:24;659:5;641:24;:::i;:::-;634:5;631:35;621:63;;680:1;677;670:12;621:63;568:122;:::o;696:139::-;742:5;780:6;767:20;758:29;;796:33;823:5;796:33;:::i;:::-;696:139;;;;:::o;841:77::-;878:7;907:5;896:16;;841:77;;;:::o;924:122::-;997:24;1015:5;997:24;:::i;:::-;990:5;987:35;977:63;;1036:1;1033;1026:12;977:63;924:122;:::o;1052:139::-;1098:5;1136:6;1123:20;1114:29;;1152:33;1179:5;1152:33;:::i;:::-;1052:139;;;;:::o;1197:619::-;1274:6;1282;1290;1339:2;1327:9;1318:7;1314:23;1310:32;1307:119;;;1345:79;;:::i;:::-;1307:119;1465:1;1490:53;1535:7;1526:6;1515:9;1511:22;1490:53;:::i;:::-;1480:63;;1436:117;1592:2;1618:53;1663:7;1654:6;1643:9;1639:22;1618:53;:::i;:::-;1608:63;;1563:118;1720:2;1746:53;1791:7;1782:6;1771:9;1767:22;1746:53;:::i;:::-;1736:63;;1691:118;1197:619;;;;;:::o;1822:90::-;1856:7;1899:5;1892:13;1885:21;1874:32;;1822:90;;;:::o;1918:109::-;1999:21;2014:5;1999:21;:::i;:::-;1994:3;1987:34;1918:109;;:::o;2033:210::-;2120:4;2158:2;2147:9;2143:18;2135:26;;2171:65;2233:1;2222:9;2218:17;2209:6;2171:65;:::i;:::-;2033:210;;;;:::o;2249:329::-;2308:6;2357:2;2345:9;2336:7;2332:23;2328:32;2325:119;;;2363:79;;:::i;:::-;2325:119;2483:1;2508:53;2553:7;2544:6;2533:9;2529:22;2508:53;:::i;:::-;2498:63;;2454:117;2249:329;;;;:::o;2584:::-;2643:6;2692:2;2680:9;2671:7;2667:23;2663:32;2660:119;;;2698:79;;:::i;:::-;2660:119;2818:1;2843:53;2888:7;2879:6;2868:9;2864:22;2843:53;:::i;:::-;2833:63;;2789:117;2584:329;;;;:::o;2919:116::-;2989:21;3004:5;2989:21;:::i;:::-;2982:5;2979:32;2969:60;;3025:1;3022;3015:12;2969:60;2919:116;:::o;3041:133::-;3084:5;3122:6;3109:20;3100:29;;3138:30;3162:5;3138:30;:::i;:::-;3041:133;;;;:::o;3180:468::-;3245:6;3253;3302:2;3290:9;3281:7;3277:23;3273:32;3270:119;;;3308:79;;:::i;:::-;3270:119;3428:1;3453:53;3498:7;3489:6;3478:9;3474:22;3453:53;:::i;:::-;3443:63;;3399:117;3555:2;3581:50;3623:7;3614:6;3603:9;3599:22;3581:50;:::i;:::-;3571:60;;3526:115;3180:468;;;;;:::o;3654:142::-;3749:6;3783:5;3777:12;3767:22;;3654:142;;;:::o;3802:212::-;3929:11;3963:6;3958:3;3951:19;4003:4;3998:3;3994:14;3979:29;;3802:212;;;;:::o;4020:160::-;4115:4;4138:3;4130:11;;4168:4;4163:3;4159:14;4151:22;;4020:160;;;:::o;4186:108::-;4263:24;4281:5;4263:24;:::i;:::-;4258:3;4251:37;4186:108;;:::o;4300:99::-;4352:6;4386:5;4380:12;4370:22;;4300:99;;;:::o;4405:159::-;4479:11;4513:6;4508:3;4501:19;4553:4;4548:3;4544:14;4529:29;;4405:159;;;;:::o;4570:307::-;4638:1;4648:113;4662:6;4659:1;4656:13;4648:113;;;4747:1;4742:3;4738:11;4732:18;4728:1;4723:3;4719:11;4712:39;4684:2;4681:1;4677:10;4672:15;;4648:113;;;4779:6;4776:1;4773:13;4770:101;;;4859:1;4850:6;4845:3;4841:16;4834:27;4770:101;4619:258;4570:307;;;:::o;4883:102::-;4924:6;4975:2;4971:7;4966:2;4959:5;4955:14;4951:28;4941:38;;4883:102;;;:::o;4991:344::-;5069:3;5097:39;5130:5;5097:39;:::i;:::-;5152:61;5206:6;5201:3;5152:61;:::i;:::-;5145:68;;5222:52;5267:6;5262:3;5255:4;5248:5;5244:16;5222:52;:::i;:::-;5299:29;5321:6;5299:29;:::i;:::-;5294:3;5290:39;5283:46;;5073:262;4991:344;;;;:::o;5341:108::-;5418:24;5436:5;5418:24;:::i;:::-;5413:3;5406:37;5341:108;;:::o;5455:99::-;5526:21;5541:5;5526:21;:::i;:::-;5521:3;5514:34;5455:99;;:::o;5560:114::-;5627:6;5661:5;5655:12;5645:22;;5560:114;;;:::o;5680:174::-;5769:11;5803:6;5798:3;5791:19;5843:4;5838:3;5834:14;5819:29;;5680:174;;;;:::o;5860:132::-;5927:4;5950:3;5942:11;;5980:4;5975:3;5971:14;5963:22;;5860:132;;;:::o;5998:179::-;6067:10;6088:46;6130:3;6122:6;6088:46;:::i;:::-;6166:4;6161:3;6157:14;6143:28;;5998:179;;;;:::o;6183:113::-;6253:4;6285;6280:3;6276:14;6268:22;;6183:113;;;:::o;6332:712::-;6441:3;6470:54;6518:5;6470:54;:::i;:::-;6540:76;6609:6;6604:3;6540:76;:::i;:::-;6533:83;;6640:56;6690:5;6640:56;:::i;:::-;6719:7;6750:1;6735:284;6760:6;6757:1;6754:13;6735:284;;;6836:6;6830:13;6863:63;6922:3;6907:13;6863:63;:::i;:::-;6856:70;;6949:60;7002:6;6949:60;:::i;:::-;6939:70;;6795:224;6782:1;6779;6775:9;6770:14;;6735:284;;;6739:14;7035:3;7028:10;;6446:598;;;6332:712;;;;:::o;7116:3111::-;7231:3;7267:6;7262:3;7258:16;7363:4;7356:5;7352:16;7346:23;7382:63;7439:4;7434:3;7430:14;7416:12;7382:63;:::i;:::-;7284:171;7537:4;7530:5;7526:16;7520:23;7590:3;7584:4;7580:14;7573:4;7568:3;7564:14;7557:38;7616:73;7684:4;7670:12;7616:73;:::i;:::-;7608:81;;7465:235;7785:4;7778:5;7774:16;7768:23;7838:3;7832:4;7828:14;7821:4;7816:3;7812:14;7805:38;7864:73;7932:4;7918:12;7864:73;:::i;:::-;7856:81;;7710:238;8033:4;8026:5;8022:16;8016:23;8052:63;8109:4;8104:3;8100:14;8086:12;8052:63;:::i;:::-;7958:167;8212:4;8205:5;8201:16;8195:23;8231:63;8288:4;8283:3;8279:14;8265:12;8231:63;:::i;:::-;8135:169;8401:4;8394:5;8390:16;8384:23;8420:57;8471:4;8466:3;8462:14;8448:12;8420:57;:::i;:::-;8314:173;8573:4;8566:5;8562:16;8556:23;8626:3;8620:4;8616:14;8609:4;8604:3;8600:14;8593:38;8652:103;8750:4;8736:12;8652:103;:::i;:::-;8644:111;;8497:269;8854:4;8847:5;8843:16;8837:23;8907:3;8901:4;8897:14;8890:4;8885:3;8881:14;8874:38;8933:103;9031:4;9017:12;8933:103;:::i;:::-;8925:111;;8776:271;9130:6;9123:5;9119:18;9113:25;9151:65;9208:6;9203:3;9199:16;9185:12;9151:65;:::i;:::-;9057:169;9308:6;9301:5;9297:18;9291:25;9365:3;9359:4;9355:14;9346:6;9341:3;9337:16;9330:40;9391:73;9459:4;9445:12;9391:73;:::i;:::-;9383:81;;9236:239;9559:6;9552:5;9548:18;9542:25;9580:65;9637:6;9632:3;9628:16;9614:12;9580:65;:::i;:::-;9485:170;9749:6;9742:5;9738:18;9732:25;9770:65;9827:6;9822:3;9818:16;9804:12;9770:65;:::i;:::-;9665:180;9934:6;9927:5;9923:18;9917:25;9955:59;10006:6;10001:3;9997:16;9983:12;9955:59;:::i;:::-;9855:169;10110:6;10103:5;10099:18;10093:25;10131:59;10182:6;10177:3;10173:16;10159:12;10131:59;:::i;:::-;10034:166;10217:4;10210:11;;7236:2991;7116:3111;;;;:::o;10233:268::-;10358:10;10393:102;10491:3;10483:6;10393:102;:::i;:::-;10379:116;;10233:268;;;;:::o;10507:141::-;10605:4;10637;10632:3;10628:14;10620:22;;10507:141;;;:::o;10724:1135::-;10899:3;10928:82;11004:5;10928:82;:::i;:::-;11026:114;11133:6;11128:3;11026:114;:::i;:::-;11019:121;;11166:3;11211:4;11203:6;11199:17;11194:3;11190:27;11241:84;11319:5;11241:84;:::i;:::-;11348:7;11379:1;11364:450;11389:6;11386:1;11383:13;11364:450;;;11460:9;11454:4;11450:20;11445:3;11438:33;11511:6;11505:13;11539:120;11654:4;11639:13;11539:120;:::i;:::-;11531:128;;11682:88;11763:6;11682:88;:::i;:::-;11672:98;;11799:4;11794:3;11790:14;11783:21;;11424:390;11411:1;11408;11404:9;11399:14;;11364:450;;;11368:14;11830:4;11823:11;;11850:3;11843:10;;10904:955;;;;;10724:1135;;;;:::o;11865:485::-;12064:4;12102:2;12091:9;12087:18;12079:26;;12151:9;12145:4;12141:20;12137:1;12126:9;12122:17;12115:47;12179:164;12338:4;12329:6;12179:164;:::i;:::-;12171:172;;11865:485;;;;:::o;12356:145::-;12454:6;12488:5;12482:12;12472:22;;12356:145;;;:::o;12507:215::-;12637:11;12671:6;12666:3;12659:19;12711:4;12706:3;12702:14;12687:29;;12507:215;;;;:::o;12728:163::-;12826:4;12849:3;12841:11;;12879:4;12874:3;12870:14;12862:22;;12728:163;;;:::o;12969:2452::-;13090:3;13126:6;13121:3;13117:16;13222:4;13215:5;13211:16;13205:23;13241:63;13298:4;13293:3;13289:14;13275:12;13241:63;:::i;:::-;13143:171;13399:4;13392:5;13388:16;13382:23;13418:63;13475:4;13470:3;13466:14;13452:12;13418:63;:::i;:::-;13324:167;13578:4;13571:5;13567:16;13561:23;13597:63;13654:4;13649:3;13645:14;13631:12;13597:63;:::i;:::-;13501:169;13756:4;13749:5;13745:16;13739:23;13809:3;13803:4;13799:14;13792:4;13787:3;13783:14;13776:38;13835:103;13933:4;13919:12;13835:103;:::i;:::-;13827:111;;13680:269;14037:4;14030:5;14026:16;14020:23;14090:3;14084:4;14080:14;14073:4;14068:3;14064:14;14057:38;14116:103;14214:4;14200:12;14116:103;:::i;:::-;14108:111;;13959:271;14329:4;14322:5;14318:16;14312:23;14348:63;14405:4;14400:3;14396:14;14382:12;14348:63;:::i;:::-;14240:181;14518:4;14511:5;14507:16;14501:23;14537:63;14594:4;14589:3;14585:14;14571:12;14537:63;:::i;:::-;14431:179;14700:4;14693:5;14689:16;14683:23;14719:57;14770:4;14765:3;14761:14;14747:12;14719:57;:::i;:::-;14620:166;14874:6;14867:5;14863:18;14857:25;14931:3;14925:4;14921:14;14912:6;14907:3;14903:16;14896:40;14957:73;15025:4;15011:12;14957:73;:::i;:::-;14949:81;;14796:245;15125:6;15118:5;15114:18;15108:25;15146:59;15197:6;15192:3;15188:16;15174:12;15146:59;:::i;:::-;15051:164;15304:6;15297:5;15293:18;15287:25;15325:59;15376:6;15371:3;15367:16;15353:12;15325:59;:::i;:::-;15225:169;15411:4;15404:11;;13095:2326;12969:2452;;;;:::o;15427:280::-;15558:10;15593:108;15697:3;15689:6;15593:108;:::i;:::-;15579:122;;15427:280;;;;:::o;15713:144::-;15814:4;15846;15841:3;15837:14;15829:22;;15713:144;;;:::o;15939:1159::-;16120:3;16149:85;16228:5;16149:85;:::i;:::-;16250:117;16360:6;16355:3;16250:117;:::i;:::-;16243:124;;16393:3;16438:4;16430:6;16426:17;16421:3;16417:27;16468:87;16549:5;16468:87;:::i;:::-;16578:7;16609:1;16594:459;16619:6;16616:1;16613:13;16594:459;;;16690:9;16684:4;16680:20;16675:3;16668:33;16741:6;16735:13;16769:126;16890:4;16875:13;16769:126;:::i;:::-;16761:134;;16918:91;17002:6;16918:91;:::i;:::-;16908:101;;17038:4;17033:3;17029:14;17022:21;;16654:399;16641:1;16638;16634:9;16629:14;;16594:459;;;16598:14;17069:4;17062:11;;17089:3;17082:10;;16125:973;;;;;15939:1159;;;;:::o;17104:497::-;17309:4;17347:2;17336:9;17332:18;17324:26;;17396:9;17390:4;17386:20;17382:1;17371:9;17367:17;17360:47;17424:170;17589:4;17580:6;17424:170;:::i;:::-;17416:178;;17104:497;;;;:::o;17607:117::-;17716:1;17713;17706:12;17730:117;17839:1;17836;17829:12;17853:180;17901:77;17898:1;17891:88;17998:4;17995:1;17988:15;18022:4;18019:1;18012:15;18039:281;18122:27;18144:4;18122:27;:::i;:::-;18114:6;18110:40;18252:6;18240:10;18237:22;18216:18;18204:10;18201:34;18198:62;18195:88;;;18263:18;;:::i;:::-;18195:88;18303:10;18299:2;18292:22;18082:238;18039:281;;:::o;18326:129::-;18360:6;18387:20;;:::i;:::-;18377:30;;18416:33;18444:4;18436:6;18416:33;:::i;:::-;18326:129;;;:::o;18461:308::-;18523:4;18613:18;18605:6;18602:30;18599:56;;;18635:18;;:::i;:::-;18599:56;18673:29;18695:6;18673:29;:::i;:::-;18665:37;;18757:4;18751;18747:15;18739:23;;18461:308;;;:::o;18775:154::-;18859:6;18854:3;18849;18836:30;18921:1;18912:6;18907:3;18903:16;18896:27;18775:154;;;:::o;18935:412::-;19013:5;19038:66;19054:49;19096:6;19054:49;:::i;:::-;19038:66;:::i;:::-;19029:75;;19127:6;19120:5;19113:21;19165:4;19158:5;19154:16;19203:3;19194:6;19189:3;19185:16;19182:25;19179:112;;;19210:79;;:::i;:::-;19179:112;19300:41;19334:6;19329:3;19324;19300:41;:::i;:::-;19019:328;18935:412;;;;;:::o;19367:340::-;19423:5;19472:3;19465:4;19457:6;19453:17;19449:27;19439:122;;19480:79;;:::i;:::-;19439:122;19597:6;19584:20;19622:79;19697:3;19689:6;19682:4;19674:6;19670:17;19622:79;:::i;:::-;19613:88;;19429:278;19367:340;;;;:::o;19713:1451::-;19838:6;19846;19854;19862;19870;19919:3;19907:9;19898:7;19894:23;19890:33;19887:120;;;19926:79;;:::i;:::-;19887:120;20046:1;20071:53;20116:7;20107:6;20096:9;20092:22;20071:53;:::i;:::-;20061:63;;20017:117;20201:2;20190:9;20186:18;20173:32;20232:18;20224:6;20221:30;20218:117;;;20254:79;;:::i;:::-;20218:117;20359:63;20414:7;20405:6;20394:9;20390:22;20359:63;:::i;:::-;20349:73;;20144:288;20499:2;20488:9;20484:18;20471:32;20530:18;20522:6;20519:30;20516:117;;;20552:79;;:::i;:::-;20516:117;20657:63;20712:7;20703:6;20692:9;20688:22;20657:63;:::i;:::-;20647:73;;20442:288;20797:2;20786:9;20782:18;20769:32;20828:18;20820:6;20817:30;20814:117;;;20850:79;;:::i;:::-;20814:117;20955:63;21010:7;21001:6;20990:9;20986:22;20955:63;:::i;:::-;20945:73;;20740:288;21067:3;21094:53;21139:7;21130:6;21119:9;21115:22;21094:53;:::i;:::-;21084:63;;21038:119;19713:1451;;;;;;;;:::o;21170:474::-;21238:6;21246;21295:2;21283:9;21274:7;21270:23;21266:32;21263:119;;;21301:79;;:::i;:::-;21263:119;21421:1;21446:53;21491:7;21482:6;21471:9;21467:22;21446:53;:::i;:::-;21436:63;;21392:117;21548:2;21574:53;21619:7;21610:6;21599:9;21595:22;21574:53;:::i;:::-;21564:63;;21519:118;21170:474;;;;;:::o;21650:799::-;21737:6;21745;21753;21802:2;21790:9;21781:7;21777:23;21773:32;21770:119;;;21808:79;;:::i;:::-;21770:119;21928:1;21953:53;21998:7;21989:6;21978:9;21974:22;21953:53;:::i;:::-;21943:63;;21899:117;22083:2;22072:9;22068:18;22055:32;22114:18;22106:6;22103:30;22100:117;;;22136:79;;:::i;:::-;22100:117;22241:63;22296:7;22287:6;22276:9;22272:22;22241:63;:::i;:::-;22231:73;;22026:288;22353:2;22379:53;22424:7;22415:6;22404:9;22400:22;22379:53;:::i;:::-;22369:63;;22324:118;21650:799;;;;;:::o;22455:114::-;22522:6;22556:5;22550:12;22540:22;;22455:114;;;:::o;22575:184::-;22674:11;22708:6;22703:3;22696:19;22748:4;22743:3;22739:14;22724:29;;22575:184;;;;:::o;22765:132::-;22832:4;22855:3;22847:11;;22885:4;22880:3;22876:14;22868:22;;22765:132;;;:::o;22903:179::-;22972:10;22993:46;23035:3;23027:6;22993:46;:::i;:::-;23071:4;23066:3;23062:14;23048:28;;22903:179;;;;:::o;23088:113::-;23158:4;23190;23185:3;23181:14;23173:22;;23088:113;;;:::o;23237:732::-;23356:3;23385:54;23433:5;23385:54;:::i;:::-;23455:86;23534:6;23529:3;23455:86;:::i;:::-;23448:93;;23565:56;23615:5;23565:56;:::i;:::-;23644:7;23675:1;23660:284;23685:6;23682:1;23679:13;23660:284;;;23761:6;23755:13;23788:63;23847:3;23832:13;23788:63;:::i;:::-;23781:70;;23874:60;23927:6;23874:60;:::i;:::-;23864:70;;23720:224;23707:1;23704;23700:9;23695:14;;23660:284;;;23664:14;23960:3;23953:10;;23361:608;;;23237:732;;;;:::o;23975:373::-;24118:4;24156:2;24145:9;24141:18;24133:26;;24205:9;24199:4;24195:20;24191:1;24180:9;24176:17;24169:47;24233:108;24336:4;24327:6;24233:108;:::i;:::-;24225:116;;23975:373;;;;:::o;24354:118::-;24441:24;24459:5;24441:24;:::i;:::-;24436:3;24429:37;24354:118;;:::o;24478:222::-;24571:4;24609:2;24598:9;24594:18;24586:26;;24622:71;24690:1;24679:9;24675:17;24666:6;24622:71;:::i;:::-;24478:222;;;;:::o;24706:308::-;24815:4;24853:2;24842:9;24838:18;24830:26;;24866:65;24928:1;24917:9;24913:17;24904:6;24866:65;:::i;:::-;24941:66;25003:2;24992:9;24988:18;24979:6;24941:66;:::i;:::-;24706:308;;;;;:::o;25020:184::-;25119:11;25153:6;25148:3;25141:19;25193:4;25188:3;25184:14;25169:29;;25020:184;;;;:::o;25240:732::-;25359:3;25388:54;25436:5;25388:54;:::i;:::-;25458:86;25537:6;25532:3;25458:86;:::i;:::-;25451:93;;25568:56;25618:5;25568:56;:::i;:::-;25647:7;25678:1;25663:284;25688:6;25685:1;25682:13;25663:284;;;25764:6;25758:13;25791:63;25850:3;25835:13;25791:63;:::i;:::-;25784:70;;25877:60;25930:6;25877:60;:::i;:::-;25867:70;;25723:224;25710:1;25707;25703:9;25698:14;;25663:284;;;25667:14;25963:3;25956:10;;25364:608;;;25240:732;;;;:::o;25978:373::-;26121:4;26159:2;26148:9;26144:18;26136:26;;26208:9;26202:4;26198:20;26194:1;26183:9;26179:17;26172:47;26236:108;26339:4;26330:6;26236:108;:::i;:::-;26228:116;;25978:373;;;;:::o;26357:1125::-;26463:6;26471;26479;26487;26536:3;26524:9;26515:7;26511:23;26507:33;26504:120;;;26543:79;;:::i;:::-;26504:120;26663:1;26688:53;26733:7;26724:6;26713:9;26709:22;26688:53;:::i;:::-;26678:63;;26634:117;26818:2;26807:9;26803:18;26790:32;26849:18;26841:6;26838:30;26835:117;;;26871:79;;:::i;:::-;26835:117;26976:63;27031:7;27022:6;27011:9;27007:22;26976:63;:::i;:::-;26966:73;;26761:288;27116:2;27105:9;27101:18;27088:32;27147:18;27139:6;27136:30;27133:117;;;27169:79;;:::i;:::-;27133:117;27274:63;27329:7;27320:6;27309:9;27305:22;27274:63;:::i;:::-;27264:73;;27059:288;27386:2;27412:53;27457:7;27448:6;27437:9;27433:22;27412:53;:::i;:::-;27402:63;;27357:118;26357:1125;;;;;;;:::o;27488:118::-;27575:24;27593:5;27575:24;:::i;:::-;27570:3;27563:37;27488:118;;:::o;27612:222::-;27705:4;27743:2;27732:9;27728:18;27720:26;;27756:71;27824:1;27813:9;27809:17;27800:6;27756:71;:::i;:::-;27612:222;;;;:::o;27840:169::-;27924:11;27958:6;27953:3;27946:19;27998:4;27993:3;27989:14;27974:29;;27840:169;;;;:::o;28015:223::-;28155:34;28151:1;28143:6;28139:14;28132:58;28224:6;28219:2;28211:6;28207:15;28200:31;28015:223;:::o;28244:366::-;28386:3;28407:67;28471:2;28466:3;28407:67;:::i;:::-;28400:74;;28483:93;28572:3;28483:93;:::i;:::-;28601:2;28596:3;28592:12;28585:19;;28244:366;;;:::o;28616:419::-;28782:4;28820:2;28809:9;28805:18;28797:26;;28869:9;28863:4;28859:20;28855:1;28844:9;28840:17;28833:47;28897:131;29023:4;28897:131;:::i;:::-;28889:139;;28616:419;;;:::o;29041:180::-;29181:32;29177:1;29169:6;29165:14;29158:56;29041:180;:::o;29227:366::-;29369:3;29390:67;29454:2;29449:3;29390:67;:::i;:::-;29383:74;;29466:93;29555:3;29466:93;:::i;:::-;29584:2;29579:3;29575:12;29568:19;;29227:366;;;:::o;29599:419::-;29765:4;29803:2;29792:9;29788:18;29780:26;;29852:9;29846:4;29842:20;29838:1;29827:9;29823:17;29816:47;29880:131;30006:4;29880:131;:::i;:::-;29872:139;;29599:419;;;:::o;30024:245::-;30164:34;30160:1;30152:6;30148:14;30141:58;30233:28;30228:2;30220:6;30216:15;30209:53;30024:245;:::o;30275:366::-;30417:3;30438:67;30502:2;30497:3;30438:67;:::i;:::-;30431:74;;30514:93;30603:3;30514:93;:::i;:::-;30632:2;30627:3;30623:12;30616:19;;30275:366;;;:::o;30647:419::-;30813:4;30851:2;30840:9;30836:18;30828:26;;30900:9;30894:4;30890:20;30886:1;30875:9;30871:17;30864:47;30928:131;31054:4;30928:131;:::i;:::-;30920:139;;30647:419;;;:::o;31072:233::-;31212:34;31208:1;31200:6;31196:14;31189:58;31281:16;31276:2;31268:6;31264:15;31257:41;31072:233;:::o;31311:366::-;31453:3;31474:67;31538:2;31533:3;31474:67;:::i;:::-;31467:74;;31550:93;31639:3;31550:93;:::i;:::-;31668:2;31663:3;31659:12;31652:19;;31311:366;;;:::o;31683:419::-;31849:4;31887:2;31876:9;31872:18;31864:26;;31936:9;31930:4;31926:20;31922:1;31911:9;31907:17;31900:47;31964:131;32090:4;31964:131;:::i;:::-;31956:139;;31683:419;;;:::o;32108:180::-;32156:77;32153:1;32146:88;32253:4;32250:1;32243:15;32277:4;32274:1;32267:15;32294:305;32334:3;32353:20;32371:1;32353:20;:::i;:::-;32348:25;;32387:20;32405:1;32387:20;:::i;:::-;32382:25;;32541:1;32473:66;32469:74;32466:1;32463:81;32460:107;;;32547:18;;:::i;:::-;32460:107;32591:1;32588;32584:9;32577:16;;32294:305;;;;:::o;32605:180::-;32653:77;32650:1;32643:88;32750:4;32747:1;32740:15;32774:4;32771:1;32764:15;32791:233;32830:3;32853:24;32871:5;32853:24;:::i;:::-;32844:33;;32899:66;32892:5;32889:77;32886:103;;;32969:18;;:::i;:::-;32886:103;33016:1;33009:5;33005:13;32998:20;;32791:233;;;:::o;33030:180::-;33078:77;33075:1;33068:88;33175:4;33172:1;33165:15;33199:4;33196:1;33189:15;33216:191;33256:4;33276:20;33294:1;33276:20;:::i;:::-;33271:25;;33310:20;33328:1;33310:20;:::i;:::-;33305:25;;33349:1;33346;33343:8;33340:34;;;33354:18;;:::i;:::-;33340:34;33399:1;33396;33392:9;33384:17;;33216:191;;;;:::o;33413:180::-;33461:77;33458:1;33451:88;33558:4;33555:1;33548:15;33582:4;33579:1;33572:15;33599:320;33643:6;33680:1;33674:4;33670:12;33660:22;;33727:1;33721:4;33717:12;33748:18;33738:81;;33804:4;33796:6;33792:17;33782:27;;33738:81;33866:2;33858:6;33855:14;33835:18;33832:38;33829:84;;;33885:18;;:::i;:::-;33829:84;33650:269;33599:320;;;:::o;33925:182::-;34065:34;34061:1;34053:6;34049:14;34042:58;33925:182;:::o;34113:366::-;34255:3;34276:67;34340:2;34335:3;34276:67;:::i;:::-;34269:74;;34352:93;34441:3;34352:93;:::i;:::-;34470:2;34465:3;34461:12;34454:19;;34113:366;;;:::o;34485:419::-;34651:4;34689:2;34678:9;34674:18;34666:26;;34738:9;34732:4;34728:20;34724:1;34713:9;34709:17;34702:47;34766:131;34892:4;34766:131;:::i;:::-;34758:139;;34485:419;;;:::o;34910:180::-;34958:77;34955:1;34948:88;35055:4;35052:1;35045:15;35079:4;35076:1;35069:15;35096:185;35136:1;35153:20;35171:1;35153:20;:::i;:::-;35148:25;;35187:20;35205:1;35187:20;:::i;:::-;35182:25;;35226:1;35216:35;;35231:18;;:::i;:::-;35216:35;35273:1;35270;35266:9;35261:14;;35096:185;;;;:::o;35287:348::-;35327:7;35350:20;35368:1;35350:20;:::i;:::-;35345:25;;35384:20;35402:1;35384:20;:::i;:::-;35379:25;;35572:1;35504:66;35500:74;35497:1;35494:81;35489:1;35482:9;35475:17;35471:105;35468:131;;;35579:18;;:::i;:::-;35468:131;35627:1;35624;35620:9;35609:20;;35287:348;;;;:::o" + }, + "gasEstimates": { + "creation": { + "codeDepositCost": "7012200", + "executionCost": "60367", + "totalCost": "7072567" + }, + "external": { + "RemoveCharityIfFinancialReportFraud(address)": "infinite", + "RemoveCharityIfFraud(uint256)": "infinite", + "admin()": "2646", + "changeStakePaid()": "infinite", + "checkIfDownvoted(address)": "3076", + "checkIfUpvoted(address)": "3075", + "checkVerificationStatus(address,bool)": "infinite", + "countOfDownvotes(address)": "2892", + "countOfUpvotes(address)": "2892", + "countOfViews(address)": "infinite", + "cronJobsForVotes()": "infinite", + "cutStakeOfNotVoted()": "infinite", + "distributeStake(address,bool)": "infinite", + "downVote(address,address,uint256)": "infinite", + "emptyFinancialReportAddress()": "infinite", + "emptyFinishedViolationVotes()": "infinite", + "emptyFinishedVotes()": "infinite", + "emptyListFinancialReports()": "infinite", + "emptyListOrganization()": "infinite", + "emptyNotSubmitFRAddress()": "infinite", + "emptyNotVotedArray(address)": "infinite", + "finishedViolationVoting()": "infinite", + "getFinancialReports()": "infinite", + "getSubmittedFROrgs()": "infinite", + "getUnsubmittedFROrgs()": "infinite", + "isStaked()": "2640", + "isVerified()": "2642", + "markAsVerified(address)": "infinite", + "notVoted(address)": "infinite", + "registerFinancialReport(address,string,uint256)": "infinite", + "registerOrg(address,string,string,string,uint256)": "infinite", + "registerViolation(address,string,string,uint256)": "infinite", + "reportUpVote(address)": "infinite", + "reportsDownVote(address)": "infinite", + "setFinancialReportStatus(address)": "infinite", + "setVerificationStatus(address)": "infinite", + "setViolationStatus(uint256)": "infinite", + "totalOrganizations()": "2585", + "unverifiedOrganizationsList()": "infinite", + "upVote(address,address,uint256)": "infinite", + "upvotedOnFinancialReport(address)": "infinite", + "upvotedOnVerify(uint256)": "infinite", + "verifiedOrganizationsList()": "infinite", + "violationDownVote(uint256)": "infinite", + "violationUpVote(uint256)": "infinite", + "votingDone(address,uint256)": "3131" + } + }, + "methodIdentifiers": { + "RemoveCharityIfFinancialReportFraud(address)": "4438d4b0", + "RemoveCharityIfFraud(uint256)": "4945a7ad", + "admin()": "f851a440", + "changeStakePaid()": "914f4cf2", + "checkIfDownvoted(address)": "3e85747e", + "checkIfUpvoted(address)": "c9dfca10", + "checkVerificationStatus(address,bool)": "86bae568", + "countOfDownvotes(address)": "b7627e41", + "countOfUpvotes(address)": "5cf9303f", + "countOfViews(address)": "e75176b5", + "cronJobsForVotes()": "bfaae62f", + "cutStakeOfNotVoted()": "bc489aa9", + "distributeStake(address,bool)": "1e477180", + "downVote(address,address,uint256)": "02d32f90", + "emptyFinancialReportAddress()": "de2d0ad0", + "emptyFinishedViolationVotes()": "3822b758", + "emptyFinishedVotes()": "22fb1dfd", + "emptyListFinancialReports()": "134714ca", + "emptyListOrganization()": "8fc0ed2f", + "emptyNotSubmitFRAddress()": "7d7e898a", + "emptyNotVotedArray(address)": "8e349519", + "finishedViolationVoting()": "4bea3db7", + "getFinancialReports()": "3a169303", + "getSubmittedFROrgs()": "972ac5bb", + "getUnsubmittedFROrgs()": "bb6f5bb4", + "isStaked()": "e3323aba", + "isVerified()": "80007e83", + "markAsVerified(address)": "62ae7ac7", + "notVoted(address)": "a52da85d", + "registerFinancialReport(address,string,uint256)": "482bd55b", + "registerOrg(address,string,string,string,uint256)": "440370fe", + "registerViolation(address,string,string,uint256)": "ac64fcde", + "reportUpVote(address)": "b5e801d5", + "reportsDownVote(address)": "14cb11e8", + "setFinancialReportStatus(address)": "cdc1a476", + "setVerificationStatus(address)": "5e8e5efd", + "setViolationStatus(uint256)": "729c7059", + "totalOrganizations()": "4cf5d552", + "unverifiedOrganizationsList()": "2d80468d", + "upVote(address,address,uint256)": "99d43c7c", + "upvotedOnFinancialReport(address)": "ef2d5847", + "upvotedOnVerify(uint256)": "6db58829", + "verifiedOrganizationsList()": "5d0161f1", + "violationDownVote(uint256)": "149d4146", + "violationUpVote(uint256)": "fa157f69", + "votingDone(address,uint256)": "4648df2a" + } + }, + "abi": [ + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "RemoveCharityIfFinancialReportFraud", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + } + ], + "name": "RemoveCharityIfFraud", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "admin", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "changeStakePaid", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "checkIfDownvoted", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "checkIfUpvoted", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + }, + { + "internalType": "bool", + "name": "category", + "type": "bool" + } + ], + "name": "checkVerificationStatus", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + }, + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + } + ], + "name": "countOfDownvotes", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + } + ], + "name": "countOfUpvotes", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + } + ], + "name": "countOfViews", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "cronJobsForVotes", + "outputs": [ + { + "internalType": "address[]", + "name": "", + "type": "address[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "cutStakeOfNotVoted", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + }, + { + "internalType": "bool", + "name": "category", + "type": "bool" + } + ], + "name": "distributeStake", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + }, + { + "internalType": "address", + "name": "voter_address", + "type": "address" + }, + { + "internalType": "uint256", + "name": "current_time", + "type": "uint256" + } + ], + "name": "downVote", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "emptyFinancialReportAddress", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "emptyFinishedViolationVotes", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "emptyFinishedVotes", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "emptyListFinancialReports", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "emptyListOrganization", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "emptyNotSubmitFRAddress", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "emptyNotVotedArray", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "finishedViolationVoting", + "outputs": [ + { + "internalType": "uint256[]", + "name": "", + "type": "uint256[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "getFinancialReports", + "outputs": [ + { + "components": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + }, + { + "internalType": "uint256", + "name": "upvotes", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "downvotes", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "upvoters", + "type": "address[]" + }, + { + "internalType": "address[]", + "name": "downvoters", + "type": "address[]" + }, + { + "internalType": "uint256", + "name": "reportUploadStartTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "reportUploadEndTime", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "isReportTrue", + "type": "bool" + }, + { + "internalType": "string", + "name": "report_cid", + "type": "string" + }, + { + "internalType": "bool", + "name": "isOpen", + "type": "bool" + }, + { + "internalType": "bool", + "name": "isSubmitted", + "type": "bool" + } + ], + "internalType": "struct Charity.FinancialReport[]", + "name": "", + "type": "tuple[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "getSubmittedFROrgs", + "outputs": [ + { + "internalType": "address[]", + "name": "", + "type": "address[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getUnsubmittedFROrgs", + "outputs": [ + { + "internalType": "address[]", + "name": "", + "type": "address[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "isStaked", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "isVerified", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "markAsVerified", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "notVoted", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + }, + { + "internalType": "string", + "name": "cid", + "type": "string" + }, + { + "internalType": "uint256", + "name": "registration_time", + "type": "uint256" + } + ], + "name": "registerFinancialReport", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "organization_address", + "type": "address" + }, + { + "internalType": "string", + "name": "organization_name", + "type": "string" + }, + { + "internalType": "string", + "name": "document_cid", + "type": "string" + }, + { + "internalType": "string", + "name": "description", + "type": "string" + }, + { + "internalType": "uint256", + "name": "time", + "type": "uint256" + } + ], + "name": "registerOrg", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "organization_address", + "type": "address" + }, + { + "internalType": "string", + "name": "document_cid", + "type": "string" + }, + { + "internalType": "string", + "name": "description", + "type": "string" + }, + { + "internalType": "uint256", + "name": "registration_time", + "type": "uint256" + } + ], + "name": "registerViolation", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "reportUpVote", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "reportsDownVote", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "setFinancialReportStatus", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "setVerificationStatus", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + } + ], + "name": "setViolationStatus", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "totalOrganizations", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "unverifiedOrganizationsList", + "outputs": [ + { + "components": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + }, + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "doc_cid", + "type": "string" + }, + { + "internalType": "uint256", + "name": "upvotes", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "downvotes", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "verification_status", + "type": "bool" + }, + { + "internalType": "address[]", + "name": "upvoters", + "type": "address[]" + }, + { + "internalType": "address[]", + "name": "downvoters", + "type": "address[]" + }, + { + "internalType": "uint256", + "name": "stake", + "type": "uint256" + }, + { + "internalType": "string", + "name": "desc", + "type": "string" + }, + { + "internalType": "uint256", + "name": "points", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "application_time", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "isStakePaid", + "type": "bool" + }, + { + "internalType": "bool", + "name": "decision", + "type": "bool" + } + ], + "internalType": "struct Charity.Organization[]", + "name": "", + "type": "tuple[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + }, + { + "internalType": "address", + "name": "voter_address", + "type": "address" + }, + { + "internalType": "uint256", + "name": "current_time", + "type": "uint256" + } + ], + "name": "upVote", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "upvotedOnFinancialReport", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + } + ], + "name": "upvotedOnVerify", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "verifiedOrganizationsList", + "outputs": [ + { + "components": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + }, + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "doc_cid", + "type": "string" + }, + { + "internalType": "uint256", + "name": "upvotes", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "downvotes", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "verification_status", + "type": "bool" + }, + { + "internalType": "address[]", + "name": "upvoters", + "type": "address[]" + }, + { + "internalType": "address[]", + "name": "downvoters", + "type": "address[]" + }, + { + "internalType": "uint256", + "name": "stake", + "type": "uint256" + }, + { + "internalType": "string", + "name": "desc", + "type": "string" + }, + { + "internalType": "uint256", + "name": "points", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "application_time", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "isStakePaid", + "type": "bool" + }, + { + "internalType": "bool", + "name": "decision", + "type": "bool" + } + ], + "internalType": "struct Charity.Organization[]", + "name": "", + "type": "tuple[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + } + ], + "name": "violationDownVote", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + } + ], + "name": "violationUpVote", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + }, + { + "internalType": "uint256", + "name": "current_time", + "type": "uint256" + } + ], + "name": "votingDone", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + } + ] +} \ No newline at end of file diff --git a/artifacts/Charity_metadata.json b/artifacts/Charity_metadata.json new file mode 100644 index 0000000..852a187 --- /dev/null +++ b/artifacts/Charity_metadata.json @@ -0,0 +1,941 @@ +{ + "compiler": { + "version": "0.8.9+commit.e5eed63a" + }, + "language": "Solidity", + "output": { + "abi": [ + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "RemoveCharityIfFinancialReportFraud", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + } + ], + "name": "RemoveCharityIfFraud", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "admin", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "changeStakePaid", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "checkIfDownvoted", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "checkIfUpvoted", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + }, + { + "internalType": "bool", + "name": "category", + "type": "bool" + } + ], + "name": "checkVerificationStatus", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + }, + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + } + ], + "name": "countOfDownvotes", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + } + ], + "name": "countOfUpvotes", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + } + ], + "name": "countOfViews", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "cronJobsForVotes", + "outputs": [ + { + "internalType": "address[]", + "name": "", + "type": "address[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "cutStakeOfNotVoted", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + }, + { + "internalType": "bool", + "name": "category", + "type": "bool" + } + ], + "name": "distributeStake", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + }, + { + "internalType": "address", + "name": "voter_address", + "type": "address" + }, + { + "internalType": "uint256", + "name": "current_time", + "type": "uint256" + } + ], + "name": "downVote", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "emptyFinancialReportAddress", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "emptyFinishedViolationVotes", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "emptyFinishedVotes", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "emptyListFinancialReports", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "emptyListOrganization", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "emptyNotSubmitFRAddress", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "emptyNotVotedArray", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "finishedViolationVoting", + "outputs": [ + { + "internalType": "uint256[]", + "name": "", + "type": "uint256[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "getFinancialReports", + "outputs": [ + { + "components": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + }, + { + "internalType": "uint256", + "name": "upvotes", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "downvotes", + "type": "uint256" + }, + { + "internalType": "address[]", + "name": "upvoters", + "type": "address[]" + }, + { + "internalType": "address[]", + "name": "downvoters", + "type": "address[]" + }, + { + "internalType": "uint256", + "name": "reportUploadStartTime", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "reportUploadEndTime", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "isReportTrue", + "type": "bool" + }, + { + "internalType": "string", + "name": "report_cid", + "type": "string" + }, + { + "internalType": "bool", + "name": "isOpen", + "type": "bool" + }, + { + "internalType": "bool", + "name": "isSubmitted", + "type": "bool" + } + ], + "internalType": "struct Charity.FinancialReport[]", + "name": "", + "type": "tuple[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "getSubmittedFROrgs", + "outputs": [ + { + "internalType": "address[]", + "name": "", + "type": "address[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "getUnsubmittedFROrgs", + "outputs": [ + { + "internalType": "address[]", + "name": "", + "type": "address[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "isStaked", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "isVerified", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "markAsVerified", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "notVoted", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + }, + { + "internalType": "string", + "name": "cid", + "type": "string" + }, + { + "internalType": "uint256", + "name": "registration_time", + "type": "uint256" + } + ], + "name": "registerFinancialReport", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "organization_address", + "type": "address" + }, + { + "internalType": "string", + "name": "organization_name", + "type": "string" + }, + { + "internalType": "string", + "name": "document_cid", + "type": "string" + }, + { + "internalType": "string", + "name": "description", + "type": "string" + }, + { + "internalType": "uint256", + "name": "time", + "type": "uint256" + } + ], + "name": "registerOrg", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "organization_address", + "type": "address" + }, + { + "internalType": "string", + "name": "document_cid", + "type": "string" + }, + { + "internalType": "string", + "name": "description", + "type": "string" + }, + { + "internalType": "uint256", + "name": "registration_time", + "type": "uint256" + } + ], + "name": "registerViolation", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "reportUpVote", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "reportsDownVote", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "setFinancialReportStatus", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "setVerificationStatus", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + } + ], + "name": "setViolationStatus", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "totalOrganizations", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "unverifiedOrganizationsList", + "outputs": [ + { + "components": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + }, + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "doc_cid", + "type": "string" + }, + { + "internalType": "uint256", + "name": "upvotes", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "downvotes", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "verification_status", + "type": "bool" + }, + { + "internalType": "address[]", + "name": "upvoters", + "type": "address[]" + }, + { + "internalType": "address[]", + "name": "downvoters", + "type": "address[]" + }, + { + "internalType": "uint256", + "name": "stake", + "type": "uint256" + }, + { + "internalType": "string", + "name": "desc", + "type": "string" + }, + { + "internalType": "uint256", + "name": "points", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "application_time", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "isStakePaid", + "type": "bool" + }, + { + "internalType": "bool", + "name": "decision", + "type": "bool" + } + ], + "internalType": "struct Charity.Organization[]", + "name": "", + "type": "tuple[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + }, + { + "internalType": "address", + "name": "voter_address", + "type": "address" + }, + { + "internalType": "uint256", + "name": "current_time", + "type": "uint256" + } + ], + "name": "upVote", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "upvotedOnFinancialReport", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + } + ], + "name": "upvotedOnVerify", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "verifiedOrganizationsList", + "outputs": [ + { + "components": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + }, + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "doc_cid", + "type": "string" + }, + { + "internalType": "uint256", + "name": "upvotes", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "downvotes", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "verification_status", + "type": "bool" + }, + { + "internalType": "address[]", + "name": "upvoters", + "type": "address[]" + }, + { + "internalType": "address[]", + "name": "downvoters", + "type": "address[]" + }, + { + "internalType": "uint256", + "name": "stake", + "type": "uint256" + }, + { + "internalType": "string", + "name": "desc", + "type": "string" + }, + { + "internalType": "uint256", + "name": "points", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "application_time", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "isStakePaid", + "type": "bool" + }, + { + "internalType": "bool", + "name": "decision", + "type": "bool" + } + ], + "internalType": "struct Charity.Organization[]", + "name": "", + "type": "tuple[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + } + ], + "name": "violationDownVote", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "uint256", + "name": "index", + "type": "uint256" + } + ], + "name": "violationUpVote", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + }, + { + "internalType": "uint256", + "name": "current_time", + "type": "uint256" + } + ], + "name": "votingDone", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "compilationTarget": { + "hardhat\\contracts\\Charity.sol": "Charity" + }, + "evmVersion": "london", + "libraries": {}, + "metadata": { + "bytecodeHash": "ipfs" + }, + "optimizer": { + "enabled": false, + "runs": 200 + }, + "remappings": [] + }, + "sources": { + "hardhat\\contracts\\Charity.sol": { + "keccak256": "0x039962418f17d5e7fb7c93615c854b3b7a62f897adb060aa91cd0ea9a82bd9d5", + "license": "MIT", + "urls": [ + "bzz-raw://42e240e7d18b65e2fa7fe4b3472dedc15637ddca44146d179d03defebaf6a081", + "dweb:/ipfs/QmWcDzPh2CjuUHFs5m1CSFNoPH5xiXLdxQitYPipRuSHu6" + ] + } + }, + "version": 1 +} \ No newline at end of file diff --git a/artifacts/OrgCreation.json b/artifacts/OrgCreation.json new file mode 100644 index 0000000..ad5f44e --- /dev/null +++ b/artifacts/OrgCreation.json @@ -0,0 +1,11946 @@ +{ + "deploy": { + "VM:-": { + "linkReferences": {}, + "autoDeployLib": true + }, + "main:1": { + "linkReferences": {}, + "autoDeployLib": true + }, + "ropsten:3": { + "linkReferences": {}, + "autoDeployLib": true + }, + "rinkeby:4": { + "linkReferences": {}, + "autoDeployLib": true + }, + "kovan:42": { + "linkReferences": {}, + "autoDeployLib": true + }, + "görli:5": { + "linkReferences": {}, + "autoDeployLib": true + }, + "Custom": { + "linkReferences": {}, + "autoDeployLib": true + } + }, + "data": { + "bytecode": { + "functionDebugData": { + "@_137": { + "entryPoint": null, + "id": 137, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@countOfDownvotes_199": { + "entryPoint": 1276, + "id": 199, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@countOfUpvotes_186": { + "entryPoint": 1351, + "id": 186, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@countOfViews_217": { + "entryPoint": 1206, + "id": 217, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@registerOrg_650": { + "entryPoint": 387, + "id": 650, + "parameterSlots": 5, + "returnSlots": 0 + }, + "abi_encode_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f_to_t_string_memory_ptr_fromStack": { + "entryPoint": 1660, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 1699, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_string_memory_ptr_fromStack": { + "entryPoint": 1602, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "checked_add_t_uint256": { + "entryPoint": 1790, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "checked_sub_t_uint256": { + "entryPoint": 1883, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "cleanup_t_uint256": { + "entryPoint": 1733, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "extract_byte_array_length": { + "entryPoint": 1989, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "panic_error_0x11": { + "entryPoint": 1743, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x22": { + "entryPoint": 1942, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "store_literal_in_memory_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f": { + "entryPoint": 1619, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nodeType": "YulBlock", + "src": "0:2453:1", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "103:73:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "120:3:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "125:6:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "113:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "113:19:1" + }, + "nodeType": "YulExpressionStatement", + "src": "113:19:1" + }, + { + "nodeType": "YulAssignment", + "src": "141:29:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "160:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "165:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "156:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "156:14:1" + }, + "variableNames": [ + { + "name": "updated_pos", + "nodeType": "YulIdentifier", + "src": "141:11:1" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "75:3:1", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "80:6:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nodeType": "YulTypedName", + "src": "91:11:1", + "type": "" + } + ], + "src": "7:169:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "288:76:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "310:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "318:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "306:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "306:14:1" + }, + { + "hexValue": "4f7267616e697a6174696f6e20616c7265616479207265676973746572656421", + "kind": "string", + "nodeType": "YulLiteral", + "src": "322:34:1", + "type": "", + "value": "Organization already registered!" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "299:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "299:58:1" + }, + "nodeType": "YulExpressionStatement", + "src": "299:58:1" + } + ] + }, + "name": "store_literal_in_memory_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "280:6:1", + "type": "" + } + ], + "src": "182:182:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "516:220:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "526:74:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "592:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "597:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "533:58:1" + }, + "nodeType": "YulFunctionCall", + "src": "533:67:1" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "526:3:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "698:3:1" + } + ], + "functionName": { + "name": "store_literal_in_memory_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f", + "nodeType": "YulIdentifier", + "src": "609:88:1" + }, + "nodeType": "YulFunctionCall", + "src": "609:93:1" + }, + "nodeType": "YulExpressionStatement", + "src": "609:93:1" + }, + { + "nodeType": "YulAssignment", + "src": "711:19:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "722:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "727:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "718:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "718:12:1" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "711:3:1" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f_to_t_string_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "504:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "512:3:1", + "type": "" + } + ], + "src": "370:366:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "913:248:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "923:26:1", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "935:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "946:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "931:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "931:18:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "923:4:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "970:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "981:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "966:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "966:17:1" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "989:4:1" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "995:9:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "985:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "985:20:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "959:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "959:47:1" + }, + "nodeType": "YulExpressionStatement", + "src": "959:47:1" + }, + { + "nodeType": "YulAssignment", + "src": "1015:139:1", + "value": { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "1149:4:1" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f_to_t_string_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "1023:124:1" + }, + "nodeType": "YulFunctionCall", + "src": "1023:131:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "1015:4:1" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "893:9:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "908:4:1", + "type": "" + } + ], + "src": "742:419:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1212:32:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "1222:16:1", + "value": { + "name": "value", + "nodeType": "YulIdentifier", + "src": "1233:5:1" + }, + "variableNames": [ + { + "name": "cleaned", + "nodeType": "YulIdentifier", + "src": "1222:7:1" + } + ] + } + ] + }, + "name": "cleanup_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "1194:5:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nodeType": "YulTypedName", + "src": "1204:7:1", + "type": "" + } + ], + "src": "1167:77:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1278:152:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1295:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1298:77:1", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1288:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "1288:88:1" + }, + "nodeType": "YulExpressionStatement", + "src": "1288:88:1" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1392:1:1", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1395:4:1", + "type": "", + "value": "0x11" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1385:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "1385:15:1" + }, + "nodeType": "YulExpressionStatement", + "src": "1385:15:1" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1416:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1419:4:1", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "1409:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "1409:15:1" + }, + "nodeType": "YulExpressionStatement", + "src": "1409:15:1" + } + ] + }, + "name": "panic_error_0x11", + "nodeType": "YulFunctionDefinition", + "src": "1250:180:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1480:261:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "1490:25:1", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "1513:1:1" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "1495:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "1495:20:1" + }, + "variableNames": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "1490:1:1" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1524:25:1", + "value": { + "arguments": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "1547:1:1" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "1529:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "1529:20:1" + }, + "variableNames": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "1524:1:1" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1687:22:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nodeType": "YulIdentifier", + "src": "1689:16:1" + }, + "nodeType": "YulFunctionCall", + "src": "1689:18:1" + }, + "nodeType": "YulExpressionStatement", + "src": "1689:18:1" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "1608:1:1" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1615:66:1", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "1683:1:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "1611:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "1611:74:1" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "1605:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "1605:81:1" + }, + "nodeType": "YulIf", + "src": "1602:107:1" + }, + { + "nodeType": "YulAssignment", + "src": "1719:16:1", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "1730:1:1" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "1733:1:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1726:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "1726:9:1" + }, + "variableNames": [ + { + "name": "sum", + "nodeType": "YulIdentifier", + "src": "1719:3:1" + } + ] + } + ] + }, + "name": "checked_add_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nodeType": "YulTypedName", + "src": "1467:1:1", + "type": "" + }, + { + "name": "y", + "nodeType": "YulTypedName", + "src": "1470:1:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "sum", + "nodeType": "YulTypedName", + "src": "1476:3:1", + "type": "" + } + ], + "src": "1436:305:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1792:146:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "1802:25:1", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "1825:1:1" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "1807:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "1807:20:1" + }, + "variableNames": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "1802:1:1" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1836:25:1", + "value": { + "arguments": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "1859:1:1" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "1841:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "1841:20:1" + }, + "variableNames": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "1836:1:1" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1883:22:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nodeType": "YulIdentifier", + "src": "1885:16:1" + }, + "nodeType": "YulFunctionCall", + "src": "1885:18:1" + }, + "nodeType": "YulExpressionStatement", + "src": "1885:18:1" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "1877:1:1" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "1880:1:1" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "1874:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "1874:8:1" + }, + "nodeType": "YulIf", + "src": "1871:34:1" + }, + { + "nodeType": "YulAssignment", + "src": "1915:17:1", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "1927:1:1" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "1930:1:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "1923:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "1923:9:1" + }, + "variableNames": [ + { + "name": "diff", + "nodeType": "YulIdentifier", + "src": "1915:4:1" + } + ] + } + ] + }, + "name": "checked_sub_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nodeType": "YulTypedName", + "src": "1778:1:1", + "type": "" + }, + { + "name": "y", + "nodeType": "YulTypedName", + "src": "1781:1:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "diff", + "nodeType": "YulTypedName", + "src": "1787:4:1", + "type": "" + } + ], + "src": "1747:191:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1972:152:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1989:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1992:77:1", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1982:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "1982:88:1" + }, + "nodeType": "YulExpressionStatement", + "src": "1982:88:1" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2086:1:1", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2089:4:1", + "type": "", + "value": "0x22" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "2079:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "2079:15:1" + }, + "nodeType": "YulExpressionStatement", + "src": "2079:15:1" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2110:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2113:4:1", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "2103:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "2103:15:1" + }, + "nodeType": "YulExpressionStatement", + "src": "2103:15:1" + } + ] + }, + "name": "panic_error_0x22", + "nodeType": "YulFunctionDefinition", + "src": "1944:180:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2181:269:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "2191:22:1", + "value": { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "2205:4:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2211:1:1", + "type": "", + "value": "2" + } + ], + "functionName": { + "name": "div", + "nodeType": "YulIdentifier", + "src": "2201:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "2201:12:1" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "2191:6:1" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2222:38:1", + "value": { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "2252:4:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2258:1:1", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "2248:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "2248:12:1" + }, + "variables": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulTypedName", + "src": "2226:18:1", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2299:51:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "2313:27:1", + "value": { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "2327:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2335:4:1", + "type": "", + "value": "0x7f" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "2323:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "2323:17:1" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "2313:6:1" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulIdentifier", + "src": "2279:18:1" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "2272:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "2272:26:1" + }, + "nodeType": "YulIf", + "src": "2269:81:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2402:42:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x22", + "nodeType": "YulIdentifier", + "src": "2416:16:1" + }, + "nodeType": "YulFunctionCall", + "src": "2416:18:1" + }, + "nodeType": "YulExpressionStatement", + "src": "2416:18:1" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulIdentifier", + "src": "2366:18:1" + }, + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "2389:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2397:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "2386:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "2386:14:1" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "2363:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "2363:38:1" + }, + "nodeType": "YulIf", + "src": "2360:84:1" + } + ] + }, + "name": "extract_byte_array_length", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "2165:4:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "2174:6:1", + "type": "" + } + ], + "src": "2130:320:1" + } + ] + }, + "contents": "{\n\n function array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function store_literal_in_memory_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f(memPtr) {\n\n mstore(add(memPtr, 0), \"Organization already registered!\")\n\n }\n\n function abi_encode_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 32)\n store_literal_in_memory_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function checked_add_t_uint256(x, y) -> sum {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n // overflow, if x > (maxValue - y)\n if gt(x, sub(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff, y)) { panic_error_0x11() }\n\n sum := add(x, y)\n }\n\n function checked_sub_t_uint256(x, y) -> diff {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n if lt(x, y) { panic_error_0x11() }\n\n diff := sub(x, y)\n }\n\n function panic_error_0x22() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n\n function extract_byte_array_length(data) -> length {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) {\n length := and(length, 0x7f)\n }\n\n if eq(outOfPlaceEncoding, lt(length, 32)) {\n panic_error_0x22()\n }\n }\n\n}\n", + "id": 1, + "language": "Yul", + "name": "#utility.yul" + } + ], + "linkReferences": {}, + "object": "608060405260016008553480156200001657600080fd5b5033600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506706f05b59d3b20000600a819055506000600b8190555062000123336040518060400160405280600581526020017f4f776e65720000000000000000000000000000000000000000000000000000008152506040518060400160405280600481526020017f4e6f6e65000000000000000000000000000000000000000000000000000000008152506040518060400160405280600b81526020017f4465736372697074696f6e000000000000000000000000000000000000000000815250426200018360201b60201c565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160006101000a81548160ff021916908315150217905550620007fb565b60008060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600d0154146200020a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200020190620006a3565b60405180910390fd5b846000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550836000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001019080519060200190620002e192919062000592565b50826000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020190805190602001906200033992919062000592565b50816000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600b0190805190602001906200039192919062000592565b506202a30081620003a39190620006fe565b6000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600d01819055506001620003fb86620004b660201b60201c565b620004079190620006fe565b6000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600501819055506004859080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050505050565b6000620004c982620004fc60201b60201c565b620004da836200054760201b60201c565b600954620004e991906200075b565b620004f591906200075b565b9050919050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600401549050919050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600301549050919050565b828054620005a090620007c5565b90600052602060002090601f016020900481019282620005c4576000855562000610565b82601f10620005df57805160ff191683800117855562000610565b8280016001018555821562000610579182015b828111156200060f578251825591602001919060010190620005f2565b5b5090506200061f919062000623565b5090565b5b808211156200063e57600081600090555060010162000624565b5090565b600082825260208201905092915050565b7f4f7267616e697a6174696f6e20616c7265616479207265676973746572656421600082015250565b60006200068b60208362000642565b9150620006988262000653565b602082019050919050565b60006020820190508181036000830152620006be816200067c565b9050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006200070b82620006c5565b91506200071883620006c5565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111562000750576200074f620006cf565b5b828201905092915050565b60006200076882620006c5565b91506200077583620006c5565b9250828210156200078b576200078a620006cf565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620007de57607f821691505b60208210811415620007f557620007f462000796565b5b50919050565b612a47806200080b6000396000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c80638fc0ed2f116100a2578063e257911411610071578063e2579114146102e3578063e3323aba14610313578063e75176b514610331578063f15c01dd14610361578063f851a4401461039157610116565b80638fc0ed2f1461026f578063a1b0ffe014610279578063b7627e4114610283578063c9dfca10146102b357610116565b80634cf5d552116100e95780634cf5d552146101b55780635cf9303f146101d35780635d0161f1146102035780636fc3911c1461022157806380007e831461025157610116565b80632d80468d1461011b5780633e85747e14610139578063440370fe146101695780634648df2a14610185575b600080fd5b6101236103af565b60405161013091906121da565b60405180910390f35b610153600480360381019061014e919061223c565b61097f565b6040516101609190612278565b60405180910390f35b610183600480360381019061017e91906123f4565b610a1f565b005b61019f600480360381019061019a91906124c3565b610d3d565b6040516101ac9190612278565b60405180910390f35b6101bd610d9c565b6040516101ca9190612512565b60405180910390f35b6101ed60048036038101906101e8919061223c565b610da2565b6040516101fa9190612512565b60405180910390f35b61020b610ded565b60405161021891906121da565b60405180910390f35b61023b6004803603810190610236919061223c565b6111cc565b6040516102489190612278565b60405180910390f35b610259611243565b6040516102669190612278565b60405180910390f35b610277611299565b005b6102816113bf565b005b61029d6004803603810190610298919061223c565b61141b565b6040516102aa9190612512565b60405180910390f35b6102cd60048036038101906102c8919061223c565b611466565b6040516102da9190612278565b60405180910390f35b6102fd60048036038101906102f891906124c3565b611506565b60405161030a9190612278565b60405180910390f35b61031b611915565b6040516103289190612278565b60405180910390f35b61034b6004803603810190610346919061223c565b61196b565b6040516103589190612512565b60405180910390f35b61037b600480360381019061037691906124c3565b61199d565b6040516103889190612278565b60405180910390f35b610399611da9565b6040516103a6919061253c565b60405180910390f35b6060600060048054905090506000806008546004805490506103d19190612586565b67ffffffffffffffff8111156103ea576103e961229d565b5b60405190808252806020026020018201604052801561042357816020015b610410611dcf565b8152602001906001900390816104085790505b50905060005b8381101561097557600060048281548110610447576104466125ba565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506000808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160009054906101000a900460ff166109615760006040518061012001604052806000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101805461059e90612618565b80601f01602080910402602001604051908101604052809291908181526020018280546105ca90612618565b80156106175780601f106105ec57610100808354040283529160200191610617565b820191906000526020600020905b8154815290600101906020018083116105fa57829003601f168201915b505050505081526020016000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600201805461066d90612618565b80601f016020809104026020016040519081016040528092919081815260200182805461069990612618565b80156106e65780601f106106bb576101008083540402835291602001916106e6565b820191906000526020600020905b8154815290600101906020018083116106c957829003601f168201915b505050505081526020016000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206003015481526020016000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206004015481526020016000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206005015481526020016000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160009054906101000a900460ff16151581526020016000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600b01805461086790612618565b80601f016020809104026020016040519081016040528092919081815260200182805461089390612618565b80156108e05780601f106108b5576101008083540402835291602001916108e0565b820191906000526020600020905b8154815290600101906020018083116108c357829003601f168201915b505050505081526020016000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600d0154815250905080848681518110610945576109446125ba565b5b602002602001018190525060018561095d919061264a565b9450505b50808061096d906126a0565b915050610429565b5080935050505090565b60008033905060016000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060090160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1660ff1614915050919050565b60008060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600d015414610aa3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a9a90612746565b60405180910390fd5b846000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550836000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001019080519060200190610b78929190611e33565b50826000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002019080519060200190610bce929190611e33565b50816000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600b019080519060200190610c24929190611e33565b506202a30081610c34919061264a565b6000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600d01819055506001610c848661196b565b610c8e919061264a565b6000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600501819055506004859080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050505050565b6000816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600d01541015610d915760019050610d96565b600090505b92915050565b60095481565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600301549050919050565b60606000600480549050905060008060085467ffffffffffffffff811115610e1857610e1761229d565b5b604051908082528060200260200182016040528015610e5157816020015b610e3e611dcf565b815260200190600190039081610e365790505b50905060005b838110156111c257600060048281548110610e7557610e746125ba565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506000808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160009054906101000a900460ff16156111ae5760008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905060006040518061012001604052808360000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001836001018054610f9590612618565b80601f0160208091040260200160405190810160405280929190818152602001828054610fc190612618565b801561100e5780601f10610fe35761010080835404028352916020019161100e565b820191906000526020600020905b815481529060010190602001808311610ff157829003601f168201915b5050505050815260200183600201805461102790612618565b80601f016020809104026020016040519081016040528092919081815260200182805461105390612618565b80156110a05780601f10611075576101008083540402835291602001916110a0565b820191906000526020600020905b81548152906001019060200180831161108357829003601f168201915b505050505081526020018360030154815260200183600401548152602001836005015481526020018360060160009054906101000a900460ff161515815260200183600b0180546110f090612618565b80601f016020809104026020016040519081016040528092919081815260200182805461111c90612618565b80156111695780601f1061113e57610100808354040283529160200191611169565b820191906000526020600020905b81548152906001019060200180831161114c57829003601f168201915b5050505050815260200183600d0154815250905080858781518110611191576111906125ba565b5b60200260200101819052506001866111a9919061264a565b955050505b5080806111ba906126a0565b915050610e57565b5080935050505090565b600060336009546111dd9190612766565b60646000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206003015461122b9190612766565b10611239576001905061123e565b600090505b919050565b60008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160009054906101000a900460ff16905090565b6000600c80549050905060005b818110156113bb57600c8054806112c0576112bf6127c0565b5b60019003818190600052602060002090600f0201600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905560018201600061130c9190611eb9565b60028201600061131c9190611eb9565b6003820160009055600482016000905560058201600090556006820160006101000a81549060ff02191690556007820160006113589190611ef9565b6008820160006113689190611ef9565b600a820160009055600b820160006113809190611eb9565b600c820160009055600d820160009055600e820160006101000a81549060ff02191690555050905580806113b3906126a0565b9150506112a6565b5050565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600e0160006101000a81548160ff021916908315150217905550565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600401549050919050565b60008033905060026000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060090160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1660ff1614915050919050565b60008260008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600d0154141561158e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161158590612861565b60405180910390fd5b6000808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160009054906101000a900460ff161561161d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611614906128cd565b60405180910390fd5b60008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600d0154141580156116ba57506000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160009054906101000a900460ff165b6116f9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116f09061295f565b60405180910390fd5b61170281611466565b15801561171557506117138161097f565b155b611754576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161174b906129f1565b60405180910390fd5b60016000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160008282546117a6919061264a565b925050819055506000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600701339080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060026000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060090160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908360ff1602179055506118f18484610d3d565b15611909576118ff846111cc565b506001915061190e565b600091505b5092915050565b60008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600e0160009054906101000a900460ff16905090565b60006119768261141b565b61197f83610da2565b60095461198c9190612586565b6119969190612586565b9050919050565b60008260008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600d01541415611a25576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a1c90612861565b60405180910390fd5b6000808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160009054906101000a900460ff1615611ab4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aab906128cd565b60405180910390fd5b60008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600d015414158015611b5157506000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160009054906101000a900460ff165b611b90576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b879061295f565b60405180910390fd5b611b9981611466565b158015611bac5750611baa8161097f565b155b611beb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611be2906129f1565b60405180910390fd5b60016000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206004016000828254611c3d919061264a565b925050819055506000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600801339080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060016000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060090160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908360ff160217905550611d888484610d3d565b15611d9d57611d96846111cc565b9150611da2565b600091505b5092915050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b604051806101200160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001606081526020016060815260200160008152602001600081526020016000815260200160001515815260200160608152602001600081525090565b828054611e3f90612618565b90600052602060002090601f016020900481019282611e615760008555611ea8565b82601f10611e7a57805160ff1916838001178555611ea8565b82800160010185558215611ea8579182015b82811115611ea7578251825591602001919060010190611e8c565b5b509050611eb59190611f1a565b5090565b508054611ec590612618565b6000825580601f10611ed75750611ef6565b601f016020900490600052602060002090810190611ef59190611f1a565b5b50565b5080546000825590600052602060002090810190611f179190611f1a565b50565b5b80821115611f33576000816000905550600101611f1b565b5090565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611f8e82611f63565b9050919050565b611f9e81611f83565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611fde578082015181840152602081019050611fc3565b83811115611fed576000848401525b50505050565b6000601f19601f8301169050919050565b600061200f82611fa4565b6120198185611faf565b9350612029818560208601611fc0565b61203281611ff3565b840191505092915050565b6000819050919050565b6120508161203d565b82525050565b60008115159050919050565b61206b81612056565b82525050565b60006101208301600083015161208a6000860182611f95565b50602083015184820360208601526120a28282612004565b915050604083015184820360408601526120bc8282612004565b91505060608301516120d16060860182612047565b5060808301516120e46080860182612047565b5060a08301516120f760a0860182612047565b5060c083015161210a60c0860182612062565b5060e083015184820360e08601526121228282612004565b915050610100830151612139610100860182612047565b508091505092915050565b60006121508383612071565b905092915050565b6000602082019050919050565b600061217082611f37565b61217a8185611f42565b93508360208202850161218c85611f53565b8060005b858110156121c857848403895281516121a98582612144565b94506121b483612158565b925060208a01995050600181019050612190565b50829750879550505050505092915050565b600060208201905081810360008301526121f48184612165565b905092915050565b6000604051905090565b600080fd5b600080fd5b61221981611f83565b811461222457600080fd5b50565b60008135905061223681612210565b92915050565b60006020828403121561225257612251612206565b5b600061226084828501612227565b91505092915050565b61227281612056565b82525050565b600060208201905061228d6000830184612269565b92915050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6122d582611ff3565b810181811067ffffffffffffffff821117156122f4576122f361229d565b5b80604052505050565b60006123076121fc565b905061231382826122cc565b919050565b600067ffffffffffffffff8211156123335761233261229d565b5b61233c82611ff3565b9050602081019050919050565b82818337600083830152505050565b600061236b61236684612318565b6122fd565b90508281526020810184848401111561238757612386612298565b5b612392848285612349565b509392505050565b600082601f8301126123af576123ae612293565b5b81356123bf848260208601612358565b91505092915050565b6123d18161203d565b81146123dc57600080fd5b50565b6000813590506123ee816123c8565b92915050565b600080600080600060a086880312156124105761240f612206565b5b600061241e88828901612227565b955050602086013567ffffffffffffffff81111561243f5761243e61220b565b5b61244b8882890161239a565b945050604086013567ffffffffffffffff81111561246c5761246b61220b565b5b6124788882890161239a565b935050606086013567ffffffffffffffff8111156124995761249861220b565b5b6124a58882890161239a565b92505060806124b6888289016123df565b9150509295509295909350565b600080604083850312156124da576124d9612206565b5b60006124e885828601612227565b92505060206124f9858286016123df565b9150509250929050565b61250c8161203d565b82525050565b60006020820190506125276000830184612503565b92915050565b61253681611f83565b82525050565b6000602082019050612551600083018461252d565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006125918261203d565b915061259c8361203d565b9250828210156125af576125ae612557565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061263057607f821691505b60208210811415612644576126436125e9565b5b50919050565b60006126558261203d565b91506126608361203d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561269557612694612557565b5b828201905092915050565b60006126ab8261203d565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156126de576126dd612557565b5b600182019050919050565b600082825260208201905092915050565b7f4f7267616e697a6174696f6e20616c7265616479207265676973746572656421600082015250565b60006127306020836126e9565b915061273b826126fa565b602082019050919050565b6000602082019050818103600083015261275f81612723565b9050919050565b60006127718261203d565b915061277c8361203d565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156127b5576127b4612557565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b7f4f7267616e697a6174696f6e206164647265737320646f6573206e6f7420657860008201527f6973742100000000000000000000000000000000000000000000000000000000602082015250565b600061284b6024836126e9565b9150612856826127ef565b604082019050919050565b6000602082019050818103600083015261287a8161283e565b9050919050565b7f4f7267616e697a6174696f6e20616c7265616479207665726966696564210000600082015250565b60006128b7601e836126e9565b91506128c282612881565b602082019050919050565b600060208201905081810360008301526128e6816128aa565b9050919050565b7f566f746572206f7267616e697a6174696f6e206973206e6f742076657269666960008201527f65642c206e6f74207065726d697474656420746f20766f746521000000000000602082015250565b6000612949603a836126e9565b9150612954826128ed565b604082019050919050565b600060208201905081810360008301526129788161293c565b9050919050565b7f566f746572206f7267616e697a6174696f6e2063616e6e6f7420766f7465206d60008201527f6f7265207468616e206f6e636521000000000000000000000000000000000000602082015250565b60006129db602e836126e9565b91506129e68261297f565b604082019050919050565b60006020820190508181036000830152612a0a816129ce565b905091905056fea2646970667358221220d393e9d29953bdafbb170b58dd0d362695d8ec6c4d8bf78334ba4bed5c42105e64736f6c63430008090033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x1 PUSH1 0x8 SSTORE CALLVALUE DUP1 ISZERO PUSH3 0x16 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP CALLER PUSH1 0x7 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH8 0x6F05B59D3B20000 PUSH1 0xA DUP2 SWAP1 SSTORE POP PUSH1 0x0 PUSH1 0xB DUP2 SWAP1 SSTORE POP PUSH3 0x123 CALLER PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x5 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x4F776E6572000000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x4 DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x4E6F6E6500000000000000000000000000000000000000000000000000000000 DUP2 MSTORE POP PUSH1 0x40 MLOAD DUP1 PUSH1 0x40 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0xB DUP2 MSTORE PUSH1 0x20 ADD PUSH32 0x4465736372697074696F6E000000000000000000000000000000000000000000 DUP2 MSTORE POP TIMESTAMP PUSH3 0x183 PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x1 PUSH1 0x0 DUP1 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP PUSH3 0x7FB JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xD ADD SLOAD EQ PUSH3 0x20A JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH3 0x201 SWAP1 PUSH3 0x6A3 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP5 PUSH1 0x0 DUP1 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP4 PUSH1 0x0 DUP1 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH3 0x2E1 SWAP3 SWAP2 SWAP1 PUSH3 0x592 JUMP JUMPDEST POP DUP3 PUSH1 0x0 DUP1 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH3 0x339 SWAP3 SWAP2 SWAP1 PUSH3 0x592 JUMP JUMPDEST POP DUP2 PUSH1 0x0 DUP1 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xB ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH3 0x391 SWAP3 SWAP2 SWAP1 PUSH3 0x592 JUMP JUMPDEST POP PUSH3 0x2A300 DUP2 PUSH3 0x3A3 SWAP2 SWAP1 PUSH3 0x6FE JUMP JUMPDEST PUSH1 0x0 DUP1 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xD ADD DUP2 SWAP1 SSTORE POP PUSH1 0x1 PUSH3 0x3FB DUP7 PUSH3 0x4B6 PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH3 0x407 SWAP2 SWAP1 PUSH3 0x6FE JUMP JUMPDEST PUSH1 0x0 DUP1 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD DUP2 SWAP1 SSTORE POP PUSH1 0x4 DUP6 SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0x4C9 DUP3 PUSH3 0x4FC PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH3 0x4DA DUP4 PUSH3 0x547 PUSH1 0x20 SHL PUSH1 0x20 SHR JUMP JUMPDEST PUSH1 0x9 SLOAD PUSH3 0x4E9 SWAP2 SWAP1 PUSH3 0x75B JUMP JUMPDEST PUSH3 0x4F5 SWAP2 SWAP1 PUSH3 0x75B JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD SLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD SLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH3 0x5A0 SWAP1 PUSH3 0x7C5 JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH3 0x5C4 JUMPI PUSH1 0x0 DUP6 SSTORE PUSH3 0x610 JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH3 0x5DF JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH3 0x610 JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH3 0x610 JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH3 0x60F JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH3 0x5F2 JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH3 0x61F SWAP2 SWAP1 PUSH3 0x623 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH3 0x63E JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH3 0x624 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4F7267616E697A6174696F6E20616C7265616479207265676973746572656421 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0x68B PUSH1 0x20 DUP4 PUSH3 0x642 JUMP JUMPDEST SWAP2 POP PUSH3 0x698 DUP3 PUSH3 0x653 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH3 0x6BE DUP2 PUSH3 0x67C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH3 0x70B DUP3 PUSH3 0x6C5 JUMP JUMPDEST SWAP2 POP PUSH3 0x718 DUP4 PUSH3 0x6C5 JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH3 0x750 JUMPI PUSH3 0x74F PUSH3 0x6CF JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH3 0x768 DUP3 PUSH3 0x6C5 JUMP JUMPDEST SWAP2 POP PUSH3 0x775 DUP4 PUSH3 0x6C5 JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH3 0x78B JUMPI PUSH3 0x78A PUSH3 0x6CF JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH3 0x7DE JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH3 0x7F5 JUMPI PUSH3 0x7F4 PUSH3 0x796 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2A47 DUP1 PUSH3 0x80B PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x116 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x8FC0ED2F GT PUSH2 0xA2 JUMPI DUP1 PUSH4 0xE2579114 GT PUSH2 0x71 JUMPI DUP1 PUSH4 0xE2579114 EQ PUSH2 0x2E3 JUMPI DUP1 PUSH4 0xE3323ABA EQ PUSH2 0x313 JUMPI DUP1 PUSH4 0xE75176B5 EQ PUSH2 0x331 JUMPI DUP1 PUSH4 0xF15C01DD EQ PUSH2 0x361 JUMPI DUP1 PUSH4 0xF851A440 EQ PUSH2 0x391 JUMPI PUSH2 0x116 JUMP JUMPDEST DUP1 PUSH4 0x8FC0ED2F EQ PUSH2 0x26F JUMPI DUP1 PUSH4 0xA1B0FFE0 EQ PUSH2 0x279 JUMPI DUP1 PUSH4 0xB7627E41 EQ PUSH2 0x283 JUMPI DUP1 PUSH4 0xC9DFCA10 EQ PUSH2 0x2B3 JUMPI PUSH2 0x116 JUMP JUMPDEST DUP1 PUSH4 0x4CF5D552 GT PUSH2 0xE9 JUMPI DUP1 PUSH4 0x4CF5D552 EQ PUSH2 0x1B5 JUMPI DUP1 PUSH4 0x5CF9303F EQ PUSH2 0x1D3 JUMPI DUP1 PUSH4 0x5D0161F1 EQ PUSH2 0x203 JUMPI DUP1 PUSH4 0x6FC3911C EQ PUSH2 0x221 JUMPI DUP1 PUSH4 0x80007E83 EQ PUSH2 0x251 JUMPI PUSH2 0x116 JUMP JUMPDEST DUP1 PUSH4 0x2D80468D EQ PUSH2 0x11B JUMPI DUP1 PUSH4 0x3E85747E EQ PUSH2 0x139 JUMPI DUP1 PUSH4 0x440370FE EQ PUSH2 0x169 JUMPI DUP1 PUSH4 0x4648DF2A EQ PUSH2 0x185 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x123 PUSH2 0x3AF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x130 SWAP2 SWAP1 PUSH2 0x21DA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x153 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x14E SWAP2 SWAP1 PUSH2 0x223C JUMP JUMPDEST PUSH2 0x97F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x160 SWAP2 SWAP1 PUSH2 0x2278 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x183 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x17E SWAP2 SWAP1 PUSH2 0x23F4 JUMP JUMPDEST PUSH2 0xA1F JUMP JUMPDEST STOP JUMPDEST PUSH2 0x19F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x19A SWAP2 SWAP1 PUSH2 0x24C3 JUMP JUMPDEST PUSH2 0xD3D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1AC SWAP2 SWAP1 PUSH2 0x2278 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1BD PUSH2 0xD9C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1CA SWAP2 SWAP1 PUSH2 0x2512 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1ED PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1E8 SWAP2 SWAP1 PUSH2 0x223C JUMP JUMPDEST PUSH2 0xDA2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1FA SWAP2 SWAP1 PUSH2 0x2512 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x20B PUSH2 0xDED JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x218 SWAP2 SWAP1 PUSH2 0x21DA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x23B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x236 SWAP2 SWAP1 PUSH2 0x223C JUMP JUMPDEST PUSH2 0x11CC JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x248 SWAP2 SWAP1 PUSH2 0x2278 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x259 PUSH2 0x1243 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x266 SWAP2 SWAP1 PUSH2 0x2278 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x277 PUSH2 0x1299 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x281 PUSH2 0x13BF JUMP JUMPDEST STOP JUMPDEST PUSH2 0x29D PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x298 SWAP2 SWAP1 PUSH2 0x223C JUMP JUMPDEST PUSH2 0x141B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2AA SWAP2 SWAP1 PUSH2 0x2512 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2CD PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2C8 SWAP2 SWAP1 PUSH2 0x223C JUMP JUMPDEST PUSH2 0x1466 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2DA SWAP2 SWAP1 PUSH2 0x2278 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2FD PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2F8 SWAP2 SWAP1 PUSH2 0x24C3 JUMP JUMPDEST PUSH2 0x1506 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x30A SWAP2 SWAP1 PUSH2 0x2278 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x31B PUSH2 0x1915 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x328 SWAP2 SWAP1 PUSH2 0x2278 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x34B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x346 SWAP2 SWAP1 PUSH2 0x223C JUMP JUMPDEST PUSH2 0x196B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x358 SWAP2 SWAP1 PUSH2 0x2512 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x37B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x376 SWAP2 SWAP1 PUSH2 0x24C3 JUMP JUMPDEST PUSH2 0x199D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x388 SWAP2 SWAP1 PUSH2 0x2278 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x399 PUSH2 0x1DA9 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3A6 SWAP2 SWAP1 PUSH2 0x253C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH1 0x4 DUP1 SLOAD SWAP1 POP SWAP1 POP PUSH1 0x0 DUP1 PUSH1 0x8 SLOAD PUSH1 0x4 DUP1 SLOAD SWAP1 POP PUSH2 0x3D1 SWAP2 SWAP1 PUSH2 0x2586 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x3EA JUMPI PUSH2 0x3E9 PUSH2 0x229D JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x423 JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH2 0x410 PUSH2 0x1DCF JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x408 JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x975 JUMPI PUSH1 0x0 PUSH1 0x4 DUP3 DUP2 SLOAD DUP2 LT PUSH2 0x447 JUMPI PUSH2 0x446 PUSH2 0x25BA JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP PUSH1 0x0 DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH2 0x961 JUMPI PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH2 0x120 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD DUP1 SLOAD PUSH2 0x59E SWAP1 PUSH2 0x2618 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x5CA SWAP1 PUSH2 0x2618 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x617 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x5EC JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x617 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x5FA JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD DUP1 SLOAD PUSH2 0x66D SWAP1 PUSH2 0x2618 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x699 SWAP1 PUSH2 0x2618 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x6E6 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x6BB JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x6E6 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x6C9 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xB ADD DUP1 SLOAD PUSH2 0x867 SWAP1 PUSH2 0x2618 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x893 SWAP1 PUSH2 0x2618 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x8E0 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x8B5 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x8E0 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x8C3 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xD ADD SLOAD DUP2 MSTORE POP SWAP1 POP DUP1 DUP5 DUP7 DUP2 MLOAD DUP2 LT PUSH2 0x945 JUMPI PUSH2 0x944 PUSH2 0x25BA JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP PUSH1 0x1 DUP6 PUSH2 0x95D SWAP2 SWAP1 PUSH2 0x264A JUMP JUMPDEST SWAP5 POP POP JUMPDEST POP DUP1 DUP1 PUSH2 0x96D SWAP1 PUSH2 0x26A0 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x429 JUMP JUMPDEST POP DUP1 SWAP4 POP POP POP POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 CALLER SWAP1 POP PUSH1 0x1 PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x9 ADD PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH1 0xFF AND EQ SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xD ADD SLOAD EQ PUSH2 0xAA3 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xA9A SWAP1 PUSH2 0x2746 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP5 PUSH1 0x0 DUP1 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP4 PUSH1 0x0 DUP1 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0xB78 SWAP3 SWAP2 SWAP1 PUSH2 0x1E33 JUMP JUMPDEST POP DUP3 PUSH1 0x0 DUP1 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0xBCE SWAP3 SWAP2 SWAP1 PUSH2 0x1E33 JUMP JUMPDEST POP DUP2 PUSH1 0x0 DUP1 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xB ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0xC24 SWAP3 SWAP2 SWAP1 PUSH2 0x1E33 JUMP JUMPDEST POP PUSH3 0x2A300 DUP2 PUSH2 0xC34 SWAP2 SWAP1 PUSH2 0x264A JUMP JUMPDEST PUSH1 0x0 DUP1 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xD ADD DUP2 SWAP1 SSTORE POP PUSH1 0x1 PUSH2 0xC84 DUP7 PUSH2 0x196B JUMP JUMPDEST PUSH2 0xC8E SWAP2 SWAP1 PUSH2 0x264A JUMP JUMPDEST PUSH1 0x0 DUP1 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD DUP2 SWAP1 SSTORE POP PUSH1 0x4 DUP6 SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xD ADD SLOAD LT ISZERO PUSH2 0xD91 JUMPI PUSH1 0x1 SWAP1 POP PUSH2 0xD96 JUMP JUMPDEST PUSH1 0x0 SWAP1 POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x9 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD SLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH1 0x4 DUP1 SLOAD SWAP1 POP SWAP1 POP PUSH1 0x0 DUP1 PUSH1 0x8 SLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xE18 JUMPI PUSH2 0xE17 PUSH2 0x229D JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0xE51 JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH2 0xE3E PUSH2 0x1DCF JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0xE36 JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x11C2 JUMPI PUSH1 0x0 PUSH1 0x4 DUP3 DUP2 SLOAD DUP2 LT PUSH2 0xE75 JUMPI PUSH2 0xE74 PUSH2 0x25BA JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP PUSH1 0x0 DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0x11AE JUMPI PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH2 0x120 ADD PUSH1 0x40 MSTORE DUP1 DUP4 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD DUP4 PUSH1 0x1 ADD DUP1 SLOAD PUSH2 0xF95 SWAP1 PUSH2 0x2618 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0xFC1 SWAP1 PUSH2 0x2618 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x100E JUMPI DUP1 PUSH1 0x1F LT PUSH2 0xFE3 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x100E JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0xFF1 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD DUP4 PUSH1 0x2 ADD DUP1 SLOAD PUSH2 0x1027 SWAP1 PUSH2 0x2618 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x1053 SWAP1 PUSH2 0x2618 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x10A0 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x1075 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x10A0 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x1083 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD DUP4 PUSH1 0x3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD DUP4 PUSH1 0x4 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD DUP4 PUSH1 0x5 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD DUP4 PUSH1 0x6 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD DUP4 PUSH1 0xB ADD DUP1 SLOAD PUSH2 0x10F0 SWAP1 PUSH2 0x2618 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x111C SWAP1 PUSH2 0x2618 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x1169 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x113E JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x1169 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x114C JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD DUP4 PUSH1 0xD ADD SLOAD DUP2 MSTORE POP SWAP1 POP DUP1 DUP6 DUP8 DUP2 MLOAD DUP2 LT PUSH2 0x1191 JUMPI PUSH2 0x1190 PUSH2 0x25BA JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP PUSH1 0x1 DUP7 PUSH2 0x11A9 SWAP2 SWAP1 PUSH2 0x264A JUMP JUMPDEST SWAP6 POP POP POP JUMPDEST POP DUP1 DUP1 PUSH2 0x11BA SWAP1 PUSH2 0x26A0 JUMP JUMPDEST SWAP2 POP POP PUSH2 0xE57 JUMP JUMPDEST POP DUP1 SWAP4 POP POP POP POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x33 PUSH1 0x9 SLOAD PUSH2 0x11DD SWAP2 SWAP1 PUSH2 0x2766 JUMP JUMPDEST PUSH1 0x64 PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD SLOAD PUSH2 0x122B SWAP2 SWAP1 PUSH2 0x2766 JUMP JUMPDEST LT PUSH2 0x1239 JUMPI PUSH1 0x1 SWAP1 POP PUSH2 0x123E JUMP JUMPDEST PUSH1 0x0 SWAP1 POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC DUP1 SLOAD SWAP1 POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x13BB JUMPI PUSH1 0xC DUP1 SLOAD DUP1 PUSH2 0x12C0 JUMPI PUSH2 0x12BF PUSH2 0x27C0 JUMP JUMPDEST JUMPDEST PUSH1 0x1 SWAP1 SUB DUP2 DUP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0xF MUL ADD PUSH1 0x0 DUP1 DUP3 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE PUSH1 0x1 DUP3 ADD PUSH1 0x0 PUSH2 0x130C SWAP2 SWAP1 PUSH2 0x1EB9 JUMP JUMPDEST PUSH1 0x2 DUP3 ADD PUSH1 0x0 PUSH2 0x131C SWAP2 SWAP1 PUSH2 0x1EB9 JUMP JUMPDEST PUSH1 0x3 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0x4 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0x5 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0x6 DUP3 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH1 0xFF MUL NOT AND SWAP1 SSTORE PUSH1 0x7 DUP3 ADD PUSH1 0x0 PUSH2 0x1358 SWAP2 SWAP1 PUSH2 0x1EF9 JUMP JUMPDEST PUSH1 0x8 DUP3 ADD PUSH1 0x0 PUSH2 0x1368 SWAP2 SWAP1 PUSH2 0x1EF9 JUMP JUMPDEST PUSH1 0xA DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0xB DUP3 ADD PUSH1 0x0 PUSH2 0x1380 SWAP2 SWAP1 PUSH2 0x1EB9 JUMP JUMPDEST PUSH1 0xC DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0xD DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0xE DUP3 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH1 0xFF MUL NOT AND SWAP1 SSTORE POP POP SWAP1 SSTORE DUP1 DUP1 PUSH2 0x13B3 SWAP1 PUSH2 0x26A0 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x12A6 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x0 DUP1 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xE ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD SLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 CALLER SWAP1 POP PUSH1 0x2 PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x9 ADD PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH1 0xFF AND EQ SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xD ADD SLOAD EQ ISZERO PUSH2 0x158E JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1585 SWAP1 PUSH2 0x2861 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0x161D JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1614 SWAP1 PUSH2 0x28CD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xD ADD SLOAD EQ ISZERO DUP1 ISZERO PUSH2 0x16BA JUMPI POP PUSH1 0x0 DUP1 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND JUMPDEST PUSH2 0x16F9 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x16F0 SWAP1 PUSH2 0x295F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x1702 DUP2 PUSH2 0x1466 JUMP JUMPDEST ISZERO DUP1 ISZERO PUSH2 0x1715 JUMPI POP PUSH2 0x1713 DUP2 PUSH2 0x97F JUMP JUMPDEST ISZERO JUMPDEST PUSH2 0x1754 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x174B SWAP1 PUSH2 0x29F1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x0 DUP1 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x17A6 SWAP2 SWAP1 PUSH2 0x264A JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD CALLER SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x2 PUSH1 0x0 DUP1 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x9 ADD PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP PUSH2 0x18F1 DUP5 DUP5 PUSH2 0xD3D JUMP JUMPDEST ISZERO PUSH2 0x1909 JUMPI PUSH2 0x18FF DUP5 PUSH2 0x11CC JUMP JUMPDEST POP PUSH1 0x1 SWAP2 POP PUSH2 0x190E JUMP JUMPDEST PUSH1 0x0 SWAP2 POP JUMPDEST POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xE ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1976 DUP3 PUSH2 0x141B JUMP JUMPDEST PUSH2 0x197F DUP4 PUSH2 0xDA2 JUMP JUMPDEST PUSH1 0x9 SLOAD PUSH2 0x198C SWAP2 SWAP1 PUSH2 0x2586 JUMP JUMPDEST PUSH2 0x1996 SWAP2 SWAP1 PUSH2 0x2586 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xD ADD SLOAD EQ ISZERO PUSH2 0x1A25 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1A1C SWAP1 PUSH2 0x2861 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0x1AB4 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1AAB SWAP1 PUSH2 0x28CD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xD ADD SLOAD EQ ISZERO DUP1 ISZERO PUSH2 0x1B51 JUMPI POP PUSH1 0x0 DUP1 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND JUMPDEST PUSH2 0x1B90 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1B87 SWAP1 PUSH2 0x295F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x1B99 DUP2 PUSH2 0x1466 JUMP JUMPDEST ISZERO DUP1 ISZERO PUSH2 0x1BAC JUMPI POP PUSH2 0x1BAA DUP2 PUSH2 0x97F JUMP JUMPDEST ISZERO JUMPDEST PUSH2 0x1BEB JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1BE2 SWAP1 PUSH2 0x29F1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x0 DUP1 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1C3D SWAP2 SWAP1 PUSH2 0x264A JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD CALLER SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x1 PUSH1 0x0 DUP1 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x9 ADD PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP PUSH2 0x1D88 DUP5 DUP5 PUSH2 0xD3D JUMP JUMPDEST ISZERO PUSH2 0x1D9D JUMPI PUSH2 0x1D96 DUP5 PUSH2 0x11CC JUMP JUMPDEST SWAP2 POP PUSH2 0x1DA2 JUMP JUMPDEST PUSH1 0x0 SWAP2 POP JUMPDEST POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x7 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH2 0x120 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE POP SWAP1 JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH2 0x1E3F SWAP1 PUSH2 0x2618 JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH2 0x1E61 JUMPI PUSH1 0x0 DUP6 SSTORE PUSH2 0x1EA8 JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH2 0x1E7A JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH2 0x1EA8 JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0x1EA8 JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x1EA7 JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x1E8C JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x1EB5 SWAP2 SWAP1 PUSH2 0x1F1A JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST POP DUP1 SLOAD PUSH2 0x1EC5 SWAP1 PUSH2 0x2618 JUMP JUMPDEST PUSH1 0x0 DUP3 SSTORE DUP1 PUSH1 0x1F LT PUSH2 0x1ED7 JUMPI POP PUSH2 0x1EF6 JUMP JUMPDEST PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 DUP2 ADD SWAP1 PUSH2 0x1EF5 SWAP2 SWAP1 PUSH2 0x1F1A JUMP JUMPDEST JUMPDEST POP JUMP JUMPDEST POP DUP1 SLOAD PUSH1 0x0 DUP3 SSTORE SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 DUP2 ADD SWAP1 PUSH2 0x1F17 SWAP2 SWAP1 PUSH2 0x1F1A JUMP JUMPDEST POP JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0x1F33 JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH2 0x1F1B JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1F8E DUP3 PUSH2 0x1F63 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1F9E DUP2 PUSH2 0x1F83 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1FDE JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x1FC3 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x1FED JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x200F DUP3 PUSH2 0x1FA4 JUMP JUMPDEST PUSH2 0x2019 DUP2 DUP6 PUSH2 0x1FAF JUMP JUMPDEST SWAP4 POP PUSH2 0x2029 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1FC0 JUMP JUMPDEST PUSH2 0x2032 DUP2 PUSH2 0x1FF3 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2050 DUP2 PUSH2 0x203D JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x206B DUP2 PUSH2 0x2056 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x120 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD PUSH2 0x208A PUSH1 0x0 DUP7 ADD DUP3 PUSH2 0x1F95 JUMP JUMPDEST POP PUSH1 0x20 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x20 DUP7 ADD MSTORE PUSH2 0x20A2 DUP3 DUP3 PUSH2 0x2004 JUMP JUMPDEST SWAP2 POP POP PUSH1 0x40 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x40 DUP7 ADD MSTORE PUSH2 0x20BC DUP3 DUP3 PUSH2 0x2004 JUMP JUMPDEST SWAP2 POP POP PUSH1 0x60 DUP4 ADD MLOAD PUSH2 0x20D1 PUSH1 0x60 DUP7 ADD DUP3 PUSH2 0x2047 JUMP JUMPDEST POP PUSH1 0x80 DUP4 ADD MLOAD PUSH2 0x20E4 PUSH1 0x80 DUP7 ADD DUP3 PUSH2 0x2047 JUMP JUMPDEST POP PUSH1 0xA0 DUP4 ADD MLOAD PUSH2 0x20F7 PUSH1 0xA0 DUP7 ADD DUP3 PUSH2 0x2047 JUMP JUMPDEST POP PUSH1 0xC0 DUP4 ADD MLOAD PUSH2 0x210A PUSH1 0xC0 DUP7 ADD DUP3 PUSH2 0x2062 JUMP JUMPDEST POP PUSH1 0xE0 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0xE0 DUP7 ADD MSTORE PUSH2 0x2122 DUP3 DUP3 PUSH2 0x2004 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x100 DUP4 ADD MLOAD PUSH2 0x2139 PUSH2 0x100 DUP7 ADD DUP3 PUSH2 0x2047 JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2150 DUP4 DUP4 PUSH2 0x2071 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2170 DUP3 PUSH2 0x1F37 JUMP JUMPDEST PUSH2 0x217A DUP2 DUP6 PUSH2 0x1F42 JUMP JUMPDEST SWAP4 POP DUP4 PUSH1 0x20 DUP3 MUL DUP6 ADD PUSH2 0x218C DUP6 PUSH2 0x1F53 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x21C8 JUMPI DUP5 DUP5 SUB DUP10 MSTORE DUP2 MLOAD PUSH2 0x21A9 DUP6 DUP3 PUSH2 0x2144 JUMP JUMPDEST SWAP5 POP PUSH2 0x21B4 DUP4 PUSH2 0x2158 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP11 ADD SWAP10 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x2190 JUMP JUMPDEST POP DUP3 SWAP8 POP DUP8 SWAP6 POP POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x21F4 DUP2 DUP5 PUSH2 0x2165 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2219 DUP2 PUSH2 0x1F83 JUMP JUMPDEST DUP2 EQ PUSH2 0x2224 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x2236 DUP2 PUSH2 0x2210 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2252 JUMPI PUSH2 0x2251 PUSH2 0x2206 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2260 DUP5 DUP3 DUP6 ADD PUSH2 0x2227 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x2272 DUP2 PUSH2 0x2056 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x228D PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2269 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0x22D5 DUP3 PUSH2 0x1FF3 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x22F4 JUMPI PUSH2 0x22F3 PUSH2 0x229D JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2307 PUSH2 0x21FC JUMP JUMPDEST SWAP1 POP PUSH2 0x2313 DUP3 DUP3 PUSH2 0x22CC JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x2333 JUMPI PUSH2 0x2332 PUSH2 0x229D JUMP JUMPDEST JUMPDEST PUSH2 0x233C DUP3 PUSH2 0x1FF3 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x236B PUSH2 0x2366 DUP5 PUSH2 0x2318 JUMP JUMPDEST PUSH2 0x22FD JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x2387 JUMPI PUSH2 0x2386 PUSH2 0x2298 JUMP JUMPDEST JUMPDEST PUSH2 0x2392 DUP5 DUP3 DUP6 PUSH2 0x2349 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x23AF JUMPI PUSH2 0x23AE PUSH2 0x2293 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x23BF DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x2358 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x23D1 DUP2 PUSH2 0x203D JUMP JUMPDEST DUP2 EQ PUSH2 0x23DC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x23EE DUP2 PUSH2 0x23C8 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0xA0 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x2410 JUMPI PUSH2 0x240F PUSH2 0x2206 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x241E DUP9 DUP3 DUP10 ADD PUSH2 0x2227 JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x243F JUMPI PUSH2 0x243E PUSH2 0x220B JUMP JUMPDEST JUMPDEST PUSH2 0x244B DUP9 DUP3 DUP10 ADD PUSH2 0x239A JUMP JUMPDEST SWAP5 POP POP PUSH1 0x40 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x246C JUMPI PUSH2 0x246B PUSH2 0x220B JUMP JUMPDEST JUMPDEST PUSH2 0x2478 DUP9 DUP3 DUP10 ADD PUSH2 0x239A JUMP JUMPDEST SWAP4 POP POP PUSH1 0x60 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2499 JUMPI PUSH2 0x2498 PUSH2 0x220B JUMP JUMPDEST JUMPDEST PUSH2 0x24A5 DUP9 DUP3 DUP10 ADD PUSH2 0x239A JUMP JUMPDEST SWAP3 POP POP PUSH1 0x80 PUSH2 0x24B6 DUP9 DUP3 DUP10 ADD PUSH2 0x23DF JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x24DA JUMPI PUSH2 0x24D9 PUSH2 0x2206 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x24E8 DUP6 DUP3 DUP7 ADD PUSH2 0x2227 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x24F9 DUP6 DUP3 DUP7 ADD PUSH2 0x23DF JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH2 0x250C DUP2 PUSH2 0x203D JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2527 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2503 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x2536 DUP2 PUSH2 0x1F83 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2551 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x252D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x2591 DUP3 PUSH2 0x203D JUMP JUMPDEST SWAP2 POP PUSH2 0x259C DUP4 PUSH2 0x203D JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x25AF JUMPI PUSH2 0x25AE PUSH2 0x2557 JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x2630 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH2 0x2644 JUMPI PUSH2 0x2643 PUSH2 0x25E9 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2655 DUP3 PUSH2 0x203D JUMP JUMPDEST SWAP2 POP PUSH2 0x2660 DUP4 PUSH2 0x203D JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x2695 JUMPI PUSH2 0x2694 PUSH2 0x2557 JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x26AB DUP3 PUSH2 0x203D JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 EQ ISZERO PUSH2 0x26DE JUMPI PUSH2 0x26DD PUSH2 0x2557 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4F7267616E697A6174696F6E20616C7265616479207265676973746572656421 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2730 PUSH1 0x20 DUP4 PUSH2 0x26E9 JUMP JUMPDEST SWAP2 POP PUSH2 0x273B DUP3 PUSH2 0x26FA JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x275F DUP2 PUSH2 0x2723 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2771 DUP3 PUSH2 0x203D JUMP JUMPDEST SWAP2 POP PUSH2 0x277C DUP4 PUSH2 0x203D JUMP JUMPDEST SWAP3 POP DUP2 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DIV DUP4 GT DUP3 ISZERO ISZERO AND ISZERO PUSH2 0x27B5 JUMPI PUSH2 0x27B4 PUSH2 0x2557 JUMP JUMPDEST JUMPDEST DUP3 DUP3 MUL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x31 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4F7267616E697A6174696F6E206164647265737320646F6573206E6F74206578 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6973742100000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x284B PUSH1 0x24 DUP4 PUSH2 0x26E9 JUMP JUMPDEST SWAP2 POP PUSH2 0x2856 DUP3 PUSH2 0x27EF JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x287A DUP2 PUSH2 0x283E JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4F7267616E697A6174696F6E20616C7265616479207665726966696564210000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x28B7 PUSH1 0x1E DUP4 PUSH2 0x26E9 JUMP JUMPDEST SWAP2 POP PUSH2 0x28C2 DUP3 PUSH2 0x2881 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x28E6 DUP2 PUSH2 0x28AA JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x566F746572206F7267616E697A6174696F6E206973206E6F7420766572696669 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x65642C206E6F74207065726D697474656420746F20766F746521000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2949 PUSH1 0x3A DUP4 PUSH2 0x26E9 JUMP JUMPDEST SWAP2 POP PUSH2 0x2954 DUP3 PUSH2 0x28ED JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2978 DUP2 PUSH2 0x293C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x566F746572206F7267616E697A6174696F6E2063616E6E6F7420766F7465206D PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6F7265207468616E206F6E636521000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x29DB PUSH1 0x2E DUP4 PUSH2 0x26E9 JUMP JUMPDEST SWAP2 POP PUSH2 0x29E6 DUP3 PUSH2 0x297F JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2A0A DUP2 PUSH2 0x29CE JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xD3 SWAP4 0xE9 0xD2 SWAP10 MSTORE8 0xBD 0xAF 0xBB OR SIGNEXTEND PC 0xDD 0xD CALLDATASIZE 0x26 SWAP6 0xD8 0xEC PUSH13 0x4D8BF78334BA4BED5C42105E64 PUSH20 0x6F6C634300080900330000000000000000000000 ", + "sourceMap": "67:10537:0:-:0;;;1192:1;1167:26;;1355:272;;;;;;;;;;1388:10;1380:5;;:18;;;;;;;;;;;;;;;;;;1432:10;1409:20;:33;;;;1476:1;1453:20;:24;;;;1488:68;1500:10;1488:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1540:15;1488:11;;;:68;;:::i;:::-;1615:4;1567:13;:25;1581:10;1567:25;;;;;;;;;;;;;;;:45;;;:52;;;;;;;;;;;;;;;;;;67:10537;;7704:885;8005:1;7949:13;:35;7963:20;7949:35;;;;;;;;;;;;;;;:52;;;:57;7927:139;;;;;;;;;;;;:::i;:::-;;;;;;;;;8129:20;8079:13;:35;8093:20;8079:35;;;;;;;;;;;;;;;:47;;;:70;;;;;;;;;;;;;;;;;;8203:17;8160:13;:35;8174:20;8160:35;;;;;;;;;;;;;;;:40;;:60;;;;;;;;;;;;:::i;:::-;;8277:12;8231:13;:35;8245:20;8231:35;;;;;;;;;;;;;;;:43;;:58;;;;;;;;;;;;:::i;:::-;;8343:11;8300:13;:35;8314:20;8300:35;;;;;;;;;;;;;;;:40;;:54;;;;;;;;;;;;:::i;:::-;;8427:6;8420:4;:13;;;;:::i;:::-;8365;:35;8379:20;8365:35;;;;;;;;;;;;;;;:52;;:68;;;;8523:1;8488:34;8501:20;8488:12;;;:34;;:::i;:::-;:36;;;;:::i;:::-;8444:13;:35;8458:20;8444:35;;;;;;;;;;;;;;;:41;;:80;;;;8535:19;8560:20;8535:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7704:885;;;;;:::o;2693:209::-;2754:7;2868:26;2885:8;2868:16;;;:26;;:::i;:::-;2828:24;2843:8;2828:14;;;:24;;:::i;:::-;2794:18;;:58;;;;:::i;:::-;:100;;;;:::i;:::-;2774:120;;2693:209;;;:::o;2552:133::-;2617:7;2644:13;:23;2658:8;2644:23;;;;;;;;;;;;;;;:33;;;2637:40;;2552:133;;;:::o;2325:129::-;2388:7;2415:13;:23;2429:8;2415:23;;;;;;;;;;;;;;;:31;;;2408:38;;2325:129;;;:::o;67:10537::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;7:169:1:-;91:11;125:6;120:3;113:19;165:4;160:3;156:14;141:29;;7:169;;;;:::o;182:182::-;322:34;318:1;310:6;306:14;299:58;182:182;:::o;370:366::-;512:3;533:67;597:2;592:3;533:67;:::i;:::-;526:74;;609:93;698:3;609:93;:::i;:::-;727:2;722:3;718:12;711:19;;370:366;;;:::o;742:419::-;908:4;946:2;935:9;931:18;923:26;;995:9;989:4;985:20;981:1;970:9;966:17;959:47;1023:131;1149:4;1023:131;:::i;:::-;1015:139;;742:419;;;:::o;1167:77::-;1204:7;1233:5;1222:16;;1167:77;;;:::o;1250:180::-;1298:77;1295:1;1288:88;1395:4;1392:1;1385:15;1419:4;1416:1;1409:15;1436:305;1476:3;1495:20;1513:1;1495:20;:::i;:::-;1490:25;;1529:20;1547:1;1529:20;:::i;:::-;1524:25;;1683:1;1615:66;1611:74;1608:1;1605:81;1602:107;;;1689:18;;:::i;:::-;1602:107;1733:1;1730;1726:9;1719:16;;1436:305;;;;:::o;1747:191::-;1787:4;1807:20;1825:1;1807:20;:::i;:::-;1802:25;;1841:20;1859:1;1841:20;:::i;:::-;1836:25;;1880:1;1877;1874:8;1871:34;;;1885:18;;:::i;:::-;1871:34;1930:1;1927;1923:9;1915:17;;1747:191;;;;:::o;1944:180::-;1992:77;1989:1;1982:88;2089:4;2086:1;2079:15;2113:4;2110:1;2103:15;2130:320;2174:6;2211:1;2205:4;2201:12;2191:22;;2258:1;2252:4;2248:12;2279:18;2269:81;;2335:4;2327:6;2323:17;2313:27;;2269:81;2397:2;2389:6;2386:14;2366:18;2363:38;2360:84;;;2416:18;;:::i;:::-;2360:84;2181:269;2130:320;;;:::o;67:10537:0:-;;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": { + "@admin_85": { + "entryPoint": 7593, + "id": 85, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@changeIsStakedPaid_173": { + "entryPoint": 5055, + "id": 173, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@checkIfDownvoted_261": { + "entryPoint": 2431, + "id": 261, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@checkIfUpvoted_239": { + "entryPoint": 5222, + "id": 239, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@checkVerificationStatus_778": { + "entryPoint": 4556, + "id": 778, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@countOfDownvotes_199": { + "entryPoint": 5147, + "id": 199, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@countOfUpvotes_186": { + "entryPoint": 3490, + "id": 186, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@countOfViews_217": { + "entryPoint": 6507, + "id": 217, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@downVote_754": { + "entryPoint": 6557, + "id": 754, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@emptyListOrganization_517": { + "entryPoint": 4761, + "id": 517, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@isStaked_161": { + "entryPoint": 6421, + "id": 161, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@isVerified_149": { + "entryPoint": 4675, + "id": 149, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@registerOrg_650": { + "entryPoint": 2591, + "id": 650, + "parameterSlots": 5, + "returnSlots": 0 + }, + "@totalOrganizations_90": { + "entryPoint": 3484, + "id": 90, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@unverifiedOrganizationsList_491": { + "entryPoint": 943, + "id": 491, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@upVote_703": { + "entryPoint": 5382, + "id": 703, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@verifiedOrganizationsList_380": { + "entryPoint": 3565, + "id": 380, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@votingDone_284": { + "entryPoint": 3389, + "id": 284, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_available_length_t_string_memory_ptr": { + "entryPoint": 9048, + "id": null, + "parameterSlots": 3, + "returnSlots": 1 + }, + "abi_decode_t_address": { + "entryPoint": 8743, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_string_memory_ptr": { + "entryPoint": 9114, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_t_uint256": { + "entryPoint": 9183, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_address": { + "entryPoint": 8764, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_addresst_string_memory_ptrt_string_memory_ptrt_string_memory_ptrt_uint256": { + "entryPoint": 9204, + "id": null, + "parameterSlots": 2, + "returnSlots": 5 + }, + "abi_decode_tuple_t_addresst_uint256": { + "entryPoint": 9411, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_encodeUpdatedPos_t_struct$_OrgDetails_$55_memory_ptr_to_t_struct$_OrgDetails_$55_memory_ptr": { + "entryPoint": 8516, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_address_to_t_address": { + "entryPoint": 8085, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_address_to_t_address_fromStack": { + "entryPoint": 9517, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr_to_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr_fromStack": { + "entryPoint": 8549, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_bool_to_t_bool": { + "entryPoint": 8290, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_bool_to_t_bool_fromStack": { + "entryPoint": 8809, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr": { + "entryPoint": 8196, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f_to_t_string_memory_ptr_fromStack": { + "entryPoint": 10019, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_414be5daad95c532f9b7381e52ffca6776b0449e47c566018321a361a4b95d16_to_t_string_memory_ptr_fromStack": { + "entryPoint": 10702, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_53664b562d96b321f827bfb375320c905b5c20116fabd3735d276655e7a84701_to_t_string_memory_ptr_fromStack": { + "entryPoint": 10410, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_a8c8730adc0a679cd4a5e2b2364d02c0d62620d7a5cf6d44281730f36a7832c1_to_t_string_memory_ptr_fromStack": { + "entryPoint": 10556, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_stringliteral_ddeb0b25a32bdbd6903219d580ec164d518abe435832e90b114c90315c52a2cf_to_t_string_memory_ptr_fromStack": { + "entryPoint": 10302, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_t_struct$_OrgDetails_$55_memory_ptr_to_t_struct$_OrgDetails_$55_memory_ptr": { + "entryPoint": 8305, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_t_uint256_to_t_uint256": { + "entryPoint": 8263, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_t_uint256_to_t_uint256_fromStack": { + "entryPoint": 9475, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_tuple_t_address__to_t_address__fromStack_reversed": { + "entryPoint": 9532, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr__fromStack_reversed": { + "entryPoint": 8666, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed": { + "entryPoint": 8824, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 10054, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_414be5daad95c532f9b7381e52ffca6776b0449e47c566018321a361a4b95d16__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 10737, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_53664b562d96b321f827bfb375320c905b5c20116fabd3735d276655e7a84701__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 10445, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_a8c8730adc0a679cd4a5e2b2364d02c0d62620d7a5cf6d44281730f36a7832c1__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 10591, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_ddeb0b25a32bdbd6903219d580ec164d518abe435832e90b114c90315c52a2cf__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 10337, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed": { + "entryPoint": 9490, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "allocate_memory": { + "entryPoint": 8957, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "allocate_unbounded": { + "entryPoint": 8700, + "id": null, + "parameterSlots": 0, + "returnSlots": 1 + }, + "array_allocation_size_t_string_memory_ptr": { + "entryPoint": 8984, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_dataslot_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr": { + "entryPoint": 8019, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr": { + "entryPoint": 7991, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_length_t_string_memory_ptr": { + "entryPoint": 8100, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_nextElement_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr": { + "entryPoint": 8536, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr_fromStack": { + "entryPoint": 8002, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_string_memory_ptr": { + "entryPoint": 8111, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_storeLengthForEncoding_t_string_memory_ptr_fromStack": { + "entryPoint": 9961, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "checked_add_t_uint256": { + "entryPoint": 9802, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "checked_mul_t_uint256": { + "entryPoint": 10086, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "checked_sub_t_uint256": { + "entryPoint": 9606, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "cleanup_t_address": { + "entryPoint": 8067, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_bool": { + "entryPoint": 8278, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint160": { + "entryPoint": 8035, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "cleanup_t_uint256": { + "entryPoint": 8253, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "copy_calldata_to_memory": { + "entryPoint": 9033, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "copy_memory_to_memory": { + "entryPoint": 8128, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "extract_byte_array_length": { + "entryPoint": 9752, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "finalize_allocation": { + "entryPoint": 8908, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "increment_t_uint256": { + "entryPoint": 9888, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "panic_error_0x11": { + "entryPoint": 9559, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x22": { + "entryPoint": 9705, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x31": { + "entryPoint": 10176, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x32": { + "entryPoint": 9658, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x41": { + "entryPoint": 8861, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d": { + "entryPoint": 8851, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae": { + "entryPoint": 8856, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db": { + "entryPoint": 8715, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b": { + "entryPoint": 8710, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "round_up_to_mul_of_32": { + "entryPoint": 8179, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "store_literal_in_memory_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f": { + "entryPoint": 9978, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_414be5daad95c532f9b7381e52ffca6776b0449e47c566018321a361a4b95d16": { + "entryPoint": 10623, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_53664b562d96b321f827bfb375320c905b5c20116fabd3735d276655e7a84701": { + "entryPoint": 10369, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_a8c8730adc0a679cd4a5e2b2364d02c0d62620d7a5cf6d44281730f36a7832c1": { + "entryPoint": 10477, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "store_literal_in_memory_ddeb0b25a32bdbd6903219d580ec164d518abe435832e90b114c90315c52a2cf": { + "entryPoint": 10223, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_address": { + "entryPoint": 8720, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + }, + "validator_revert_t_uint256": { + "entryPoint": 9160, + "id": null, + "parameterSlots": 1, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nodeType": "YulBlock", + "src": "0:20200:1", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "107:40:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "118:22:1", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "134:5:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "128:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "128:12:1" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "118:6:1" + } + ] + } + ] + }, + "name": "array_length_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "90:5:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "100:6:1", + "type": "" + } + ], + "src": "7:140:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "290:73:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "307:3:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "312:6:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "300:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "300:19:1" + }, + "nodeType": "YulExpressionStatement", + "src": "300:19:1" + }, + { + "nodeType": "YulAssignment", + "src": "328:29:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "347:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "352:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "343:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "343:14:1" + }, + "variableNames": [ + { + "name": "updated_pos", + "nodeType": "YulIdentifier", + "src": "328:11:1" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "262:3:1", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "267:6:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nodeType": "YulTypedName", + "src": "278:11:1", + "type": "" + } + ], + "src": "153:210:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "467:60:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "477:11:1", + "value": { + "name": "ptr", + "nodeType": "YulIdentifier", + "src": "485:3:1" + }, + "variableNames": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "477:4:1" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "498:22:1", + "value": { + "arguments": [ + { + "name": "ptr", + "nodeType": "YulIdentifier", + "src": "510:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "515:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "506:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "506:14:1" + }, + "variableNames": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "498:4:1" + } + ] + } + ] + }, + "name": "array_dataslot_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nodeType": "YulTypedName", + "src": "454:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "462:4:1", + "type": "" + } + ], + "src": "369:158:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "578:81:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "588:65:1", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "603:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "610:42:1", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "599:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "599:54:1" + }, + "variableNames": [ + { + "name": "cleaned", + "nodeType": "YulIdentifier", + "src": "588:7:1" + } + ] + } + ] + }, + "name": "cleanup_t_uint160", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "560:5:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nodeType": "YulTypedName", + "src": "570:7:1", + "type": "" + } + ], + "src": "533:126:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "710:51:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "720:35:1", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "749:5:1" + } + ], + "functionName": { + "name": "cleanup_t_uint160", + "nodeType": "YulIdentifier", + "src": "731:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "731:24:1" + }, + "variableNames": [ + { + "name": "cleaned", + "nodeType": "YulIdentifier", + "src": "720:7:1" + } + ] + } + ] + }, + "name": "cleanup_t_address", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "692:5:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nodeType": "YulTypedName", + "src": "702:7:1", + "type": "" + } + ], + "src": "665:96:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "822:53:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "839:3:1" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "862:5:1" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nodeType": "YulIdentifier", + "src": "844:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "844:24:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "832:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "832:37:1" + }, + "nodeType": "YulExpressionStatement", + "src": "832:37:1" + } + ] + }, + "name": "abi_encode_t_address_to_t_address", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "810:5:1", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "817:3:1", + "type": "" + } + ], + "src": "767:108:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "940:40:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "951:22:1", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "967:5:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "961:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "961:12:1" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "951:6:1" + } + ] + } + ] + }, + "name": "array_length_t_string_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "923:5:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "933:6:1", + "type": "" + } + ], + "src": "881:99:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1072:73:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "1089:3:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1094:6:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1082:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "1082:19:1" + }, + "nodeType": "YulExpressionStatement", + "src": "1082:19:1" + }, + { + "nodeType": "YulAssignment", + "src": "1110:29:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "1129:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1134:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1125:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "1125:14:1" + }, + "variableNames": [ + { + "name": "updated_pos", + "nodeType": "YulIdentifier", + "src": "1110:11:1" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_string_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "1044:3:1", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "1049:6:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nodeType": "YulTypedName", + "src": "1060:11:1", + "type": "" + } + ], + "src": "986:159:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1200:258:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "1210:10:1", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1219:1:1", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "1214:1:1", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1279:63:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "1304:3:1" + }, + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "1309:1:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1300:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "1300:11:1" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "1323:3:1" + }, + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "1328:1:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1319:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "1319:11:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "1313:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "1313:18:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1293:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "1293:39:1" + }, + "nodeType": "YulExpressionStatement", + "src": "1293:39:1" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "1240:1:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1243:6:1" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "1237:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "1237:13:1" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "1251:19:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "1253:15:1", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "1262:1:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1265:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1258:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "1258:10:1" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "1253:1:1" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "1233:3:1", + "statements": [] + }, + "src": "1229:113:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1376:76:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "1426:3:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1431:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1422:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "1422:16:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1440:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1415:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "1415:27:1" + }, + "nodeType": "YulExpressionStatement", + "src": "1415:27:1" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "1357:1:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1360:6:1" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "1354:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "1354:13:1" + }, + "nodeType": "YulIf", + "src": "1351:101:1" + } + ] + }, + "name": "copy_memory_to_memory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nodeType": "YulTypedName", + "src": "1182:3:1", + "type": "" + }, + { + "name": "dst", + "nodeType": "YulTypedName", + "src": "1187:3:1", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "1192:6:1", + "type": "" + } + ], + "src": "1151:307:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1512:54:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "1522:38:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "1540:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1547:2:1", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1536:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "1536:14:1" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1556:2:1", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "1552:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "1552:7:1" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "1532:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "1532:28:1" + }, + "variableNames": [ + { + "name": "result", + "nodeType": "YulIdentifier", + "src": "1522:6:1" + } + ] + } + ] + }, + "name": "round_up_to_mul_of_32", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "1495:5:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "result", + "nodeType": "YulTypedName", + "src": "1505:6:1", + "type": "" + } + ], + "src": "1464:102:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1654:262:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "1664:53:1", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "1711:5:1" + } + ], + "functionName": { + "name": "array_length_t_string_memory_ptr", + "nodeType": "YulIdentifier", + "src": "1678:32:1" + }, + "nodeType": "YulFunctionCall", + "src": "1678:39:1" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "1668:6:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1726:68:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "1782:3:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1787:6:1" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr", + "nodeType": "YulIdentifier", + "src": "1733:48:1" + }, + "nodeType": "YulFunctionCall", + "src": "1733:61:1" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "1726:3:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "1829:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1836:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1825:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "1825:16:1" + }, + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "1843:3:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1848:6:1" + } + ], + "functionName": { + "name": "copy_memory_to_memory", + "nodeType": "YulIdentifier", + "src": "1803:21:1" + }, + "nodeType": "YulFunctionCall", + "src": "1803:52:1" + }, + "nodeType": "YulExpressionStatement", + "src": "1803:52:1" + }, + { + "nodeType": "YulAssignment", + "src": "1864:46:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "1875:3:1" + }, + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1902:6:1" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nodeType": "YulIdentifier", + "src": "1880:21:1" + }, + "nodeType": "YulFunctionCall", + "src": "1880:29:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1871:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "1871:39:1" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "1864:3:1" + } + ] + } + ] + }, + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "1635:5:1", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "1642:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "1650:3:1", + "type": "" + } + ], + "src": "1572:344:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1967:32:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "1977:16:1", + "value": { + "name": "value", + "nodeType": "YulIdentifier", + "src": "1988:5:1" + }, + "variableNames": [ + { + "name": "cleaned", + "nodeType": "YulIdentifier", + "src": "1977:7:1" + } + ] + } + ] + }, + "name": "cleanup_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "1949:5:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nodeType": "YulTypedName", + "src": "1959:7:1", + "type": "" + } + ], + "src": "1922:77:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2060:53:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "2077:3:1" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "2100:5:1" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "2082:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "2082:24:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "2070:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "2070:37:1" + }, + "nodeType": "YulExpressionStatement", + "src": "2070:37:1" + } + ] + }, + "name": "abi_encode_t_uint256_to_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "2048:5:1", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "2055:3:1", + "type": "" + } + ], + "src": "2005:108:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2161:48:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "2171:32:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "2196:5:1" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "2189:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "2189:13:1" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "2182:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "2182:21:1" + }, + "variableNames": [ + { + "name": "cleaned", + "nodeType": "YulIdentifier", + "src": "2171:7:1" + } + ] + } + ] + }, + "name": "cleanup_t_bool", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "2143:5:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "cleaned", + "nodeType": "YulTypedName", + "src": "2153:7:1", + "type": "" + } + ], + "src": "2119:90:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2264:50:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "2281:3:1" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "2301:5:1" + } + ], + "functionName": { + "name": "cleanup_t_bool", + "nodeType": "YulIdentifier", + "src": "2286:14:1" + }, + "nodeType": "YulFunctionCall", + "src": "2286:21:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "2274:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "2274:34:1" + }, + "nodeType": "YulExpressionStatement", + "src": "2274:34:1" + } + ] + }, + "name": "abi_encode_t_bool_to_t_bool", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "2252:5:1", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "2259:3:1", + "type": "" + } + ], + "src": "2215:99:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2506:1888:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "2516:28:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "2532:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2537:6:1", + "type": "", + "value": "0x0120" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2528:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "2528:16:1" + }, + "variables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "2520:4:1", + "type": "" + } + ] + }, + { + "nodeType": "YulBlock", + "src": "2554:171:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "2596:43:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "2626:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2633:4:1", + "type": "", + "value": "0x00" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2622:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "2622:16:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "2616:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "2616:23:1" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "2600:12:1", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "2686:12:1" + }, + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "2704:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2709:4:1", + "type": "", + "value": "0x00" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2700:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "2700:14:1" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address", + "nodeType": "YulIdentifier", + "src": "2652:33:1" + }, + "nodeType": "YulFunctionCall", + "src": "2652:63:1" + }, + "nodeType": "YulExpressionStatement", + "src": "2652:63:1" + } + ] + }, + { + "nodeType": "YulBlock", + "src": "2735:235:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "2770:43:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "2800:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2807:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2796:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "2796:16:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "2790:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "2790:23:1" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "2774:12:1", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "2838:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2843:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2834:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "2834:14:1" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "2854:4:1" + }, + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "2860:3:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "2850:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "2850:14:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "2827:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "2827:38:1" + }, + "nodeType": "YulExpressionStatement", + "src": "2827:38:1" + }, + { + "nodeType": "YulAssignment", + "src": "2878:81:1", + "value": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "2940:12:1" + }, + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "2954:4:1" + } + ], + "functionName": { + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr", + "nodeType": "YulIdentifier", + "src": "2886:53:1" + }, + "nodeType": "YulFunctionCall", + "src": "2886:73:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "2878:4:1" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "2980:238:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "3018:43:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "3048:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3055:4:1", + "type": "", + "value": "0x40" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3044:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "3044:16:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "3038:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "3038:23:1" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "3022:12:1", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "3086:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3091:4:1", + "type": "", + "value": "0x40" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3082:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "3082:14:1" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "3102:4:1" + }, + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "3108:3:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "3098:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "3098:14:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "3075:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "3075:38:1" + }, + "nodeType": "YulExpressionStatement", + "src": "3075:38:1" + }, + { + "nodeType": "YulAssignment", + "src": "3126:81:1", + "value": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "3188:12:1" + }, + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "3202:4:1" + } + ], + "functionName": { + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr", + "nodeType": "YulIdentifier", + "src": "3134:53:1" + }, + "nodeType": "YulFunctionCall", + "src": "3134:73:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "3126:4:1" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "3228:167:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "3266:43:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "3296:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3303:4:1", + "type": "", + "value": "0x60" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3292:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "3292:16:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "3286:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "3286:23:1" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "3270:12:1", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "3356:12:1" + }, + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "3374:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3379:4:1", + "type": "", + "value": "0x60" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3370:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "3370:14:1" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256", + "nodeType": "YulIdentifier", + "src": "3322:33:1" + }, + "nodeType": "YulFunctionCall", + "src": "3322:63:1" + }, + "nodeType": "YulExpressionStatement", + "src": "3322:63:1" + } + ] + }, + { + "nodeType": "YulBlock", + "src": "3405:169:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "3445:43:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "3475:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3482:4:1", + "type": "", + "value": "0x80" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3471:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "3471:16:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "3465:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "3465:23:1" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "3449:12:1", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "3535:12:1" + }, + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "3553:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3558:4:1", + "type": "", + "value": "0x80" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3549:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "3549:14:1" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256", + "nodeType": "YulIdentifier", + "src": "3501:33:1" + }, + "nodeType": "YulFunctionCall", + "src": "3501:63:1" + }, + "nodeType": "YulExpressionStatement", + "src": "3501:63:1" + } + ] + }, + { + "nodeType": "YulBlock", + "src": "3584:165:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "3620:43:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "3650:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3657:4:1", + "type": "", + "value": "0xa0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3646:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "3646:16:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "3640:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "3640:23:1" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "3624:12:1", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "3710:12:1" + }, + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "3728:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3733:4:1", + "type": "", + "value": "0xa0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3724:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "3724:14:1" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256", + "nodeType": "YulIdentifier", + "src": "3676:33:1" + }, + "nodeType": "YulFunctionCall", + "src": "3676:63:1" + }, + "nodeType": "YulExpressionStatement", + "src": "3676:63:1" + } + ] + }, + { + "nodeType": "YulBlock", + "src": "3759:173:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "3809:43:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "3839:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3846:4:1", + "type": "", + "value": "0xc0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3835:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "3835:16:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "3829:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "3829:23:1" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "3813:12:1", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "3893:12:1" + }, + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "3911:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3916:4:1", + "type": "", + "value": "0xc0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3907:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "3907:14:1" + } + ], + "functionName": { + "name": "abi_encode_t_bool_to_t_bool", + "nodeType": "YulIdentifier", + "src": "3865:27:1" + }, + "nodeType": "YulFunctionCall", + "src": "3865:57:1" + }, + "nodeType": "YulExpressionStatement", + "src": "3865:57:1" + } + ] + }, + { + "nodeType": "YulBlock", + "src": "3942:235:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "3977:43:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "4007:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4014:4:1", + "type": "", + "value": "0xe0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4003:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "4003:16:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "3997:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "3997:23:1" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "3981:12:1", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "4045:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4050:4:1", + "type": "", + "value": "0xe0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4041:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "4041:14:1" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "4061:4:1" + }, + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "4067:3:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "4057:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "4057:14:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "4034:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "4034:38:1" + }, + "nodeType": "YulExpressionStatement", + "src": "4034:38:1" + }, + { + "nodeType": "YulAssignment", + "src": "4085:81:1", + "value": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "4147:12:1" + }, + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "4161:4:1" + } + ], + "functionName": { + "name": "abi_encode_t_string_memory_ptr_to_t_string_memory_ptr", + "nodeType": "YulIdentifier", + "src": "4093:53:1" + }, + "nodeType": "YulFunctionCall", + "src": "4093:73:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "4085:4:1" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "4187:180:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "4234:45:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "4264:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4271:6:1", + "type": "", + "value": "0x0100" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4260:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "4260:18:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "4254:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "4254:25:1" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "4238:12:1", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "4326:12:1" + }, + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "4344:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4349:6:1", + "type": "", + "value": "0x0100" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4340:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "4340:16:1" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256", + "nodeType": "YulIdentifier", + "src": "4292:33:1" + }, + "nodeType": "YulFunctionCall", + "src": "4292:65:1" + }, + "nodeType": "YulExpressionStatement", + "src": "4292:65:1" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "4377:11:1", + "value": { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "4384:4:1" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "4377:3:1" + } + ] + } + ] + }, + "name": "abi_encode_t_struct$_OrgDetails_$55_memory_ptr_to_t_struct$_OrgDetails_$55_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "2485:5:1", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "2492:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "2501:3:1", + "type": "" + } + ], + "src": "2390:2004:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4532:128:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "4542:112:1", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "4642:6:1" + }, + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "4650:3:1" + } + ], + "functionName": { + "name": "abi_encode_t_struct$_OrgDetails_$55_memory_ptr_to_t_struct$_OrgDetails_$55_memory_ptr", + "nodeType": "YulIdentifier", + "src": "4556:85:1" + }, + "nodeType": "YulFunctionCall", + "src": "4556:98:1" + }, + "variableNames": [ + { + "name": "updatedPos", + "nodeType": "YulIdentifier", + "src": "4542:10:1" + } + ] + } + ] + }, + "name": "abi_encodeUpdatedPos_t_struct$_OrgDetails_$55_memory_ptr_to_t_struct$_OrgDetails_$55_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "4505:6:1", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "4513:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updatedPos", + "nodeType": "YulTypedName", + "src": "4521:10:1", + "type": "" + } + ], + "src": "4400:260:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4767:38:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "4777:22:1", + "value": { + "arguments": [ + { + "name": "ptr", + "nodeType": "YulIdentifier", + "src": "4789:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4794:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4785:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "4785:14:1" + }, + "variableNames": [ + { + "name": "next", + "nodeType": "YulIdentifier", + "src": "4777:4:1" + } + ] + } + ] + }, + "name": "array_nextElement_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nodeType": "YulTypedName", + "src": "4754:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "next", + "nodeType": "YulTypedName", + "src": "4762:4:1", + "type": "" + } + ], + "src": "4666:139:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5061:943:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "5071:94:1", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "5159:5:1" + } + ], + "functionName": { + "name": "array_length_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr", + "nodeType": "YulIdentifier", + "src": "5085:73:1" + }, + "nodeType": "YulFunctionCall", + "src": "5085:80:1" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "5075:6:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "5174:119:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5281:3:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "5286:6:1" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "5181:99:1" + }, + "nodeType": "YulFunctionCall", + "src": "5181:112:1" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5174:3:1" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "5302:20:1", + "value": { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5319:3:1" + }, + "variables": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "5306:9:1", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "5331:39:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5347:3:1" + }, + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "5356:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5364:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "mul", + "nodeType": "YulIdentifier", + "src": "5352:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "5352:17:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5343:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "5343:27:1" + }, + "variables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "5335:4:1", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "5379:97:1", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "5470:5:1" + } + ], + "functionName": { + "name": "array_dataslot_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr", + "nodeType": "YulIdentifier", + "src": "5394:75:1" + }, + "nodeType": "YulFunctionCall", + "src": "5394:82:1" + }, + "variables": [ + { + "name": "baseRef", + "nodeType": "YulTypedName", + "src": "5383:7:1", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "5485:21:1", + "value": { + "name": "baseRef", + "nodeType": "YulIdentifier", + "src": "5499:7:1" + }, + "variables": [ + { + "name": "srcPtr", + "nodeType": "YulTypedName", + "src": "5489:6:1", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5575:384:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5596:3:1" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "5605:4:1" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5611:9:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "5601:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "5601:20:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5589:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "5589:33:1" + }, + "nodeType": "YulExpressionStatement", + "src": "5589:33:1" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "5635:34:1", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "5662:6:1" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "5656:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "5656:13:1" + }, + "variables": [ + { + "name": "elementValue0", + "nodeType": "YulTypedName", + "src": "5639:13:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "5682:124:1", + "value": { + "arguments": [ + { + "name": "elementValue0", + "nodeType": "YulIdentifier", + "src": "5786:13:1" + }, + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "5801:4:1" + } + ], + "functionName": { + "name": "abi_encodeUpdatedPos_t_struct$_OrgDetails_$55_memory_ptr_to_t_struct$_OrgDetails_$55_memory_ptr", + "nodeType": "YulIdentifier", + "src": "5690:95:1" + }, + "nodeType": "YulFunctionCall", + "src": "5690:116:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "5682:4:1" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "5819:96:1", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "5908:6:1" + } + ], + "functionName": { + "name": "array_nextElement_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr", + "nodeType": "YulIdentifier", + "src": "5829:78:1" + }, + "nodeType": "YulFunctionCall", + "src": "5829:86:1" + }, + "variableNames": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "5819:6:1" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "5928:21:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5939:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5944:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5935:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "5935:14:1" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5928:3:1" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "5537:1:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "5540:6:1" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "5534:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "5534:13:1" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "5548:18:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "5550:14:1", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "5559:1:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5562:1:1", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5555:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "5555:9:1" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "5550:1:1" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "5519:14:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "5521:10:1", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5530:1:1", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "5525:1:1", + "type": "" + } + ] + } + ] + }, + "src": "5515:444:1" + }, + { + "nodeType": "YulAssignment", + "src": "5968:11:1", + "value": { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "5975:4:1" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5968:3:1" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "5988:10:1", + "value": { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "5995:3:1" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "5988:3:1" + } + ] + } + ] + }, + "name": "abi_encode_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr_to_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "5040:5:1", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "5047:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "5056:3:1", + "type": "" + } + ], + "src": "4885:1119:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6210:277:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "6220:26:1", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6232:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6243:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6228:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "6228:18:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "6220:4:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6267:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6278:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6263:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "6263:17:1" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "6286:4:1" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6292:9:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "6282:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "6282:20:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "6256:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "6256:47:1" + }, + "nodeType": "YulExpressionStatement", + "src": "6256:47:1" + }, + { + "nodeType": "YulAssignment", + "src": "6312:168:1", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "6466:6:1" + }, + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "6475:4:1" + } + ], + "functionName": { + "name": "abi_encode_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr_to_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "6320:145:1" + }, + "nodeType": "YulFunctionCall", + "src": "6320:160:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "6312:4:1" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "6182:9:1", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "6194:6:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "6205:4:1", + "type": "" + } + ], + "src": "6010:477:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6533:35:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "6543:19:1", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6559:2:1", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "6553:5:1" + }, + "nodeType": "YulFunctionCall", + "src": "6553:9:1" + }, + "variableNames": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "6543:6:1" + } + ] + } + ] + }, + "name": "allocate_unbounded", + "nodeType": "YulFunctionDefinition", + "returnVariables": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "6526:6:1", + "type": "" + } + ], + "src": "6493:75:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6663:28:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6680:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6683:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "6673:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "6673:12:1" + }, + "nodeType": "YulExpressionStatement", + "src": "6673:12:1" + } + ] + }, + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nodeType": "YulFunctionDefinition", + "src": "6574:117:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6786:28:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6803:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6806:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "6796:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "6796:12:1" + }, + "nodeType": "YulExpressionStatement", + "src": "6796:12:1" + } + ] + }, + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nodeType": "YulFunctionDefinition", + "src": "6697:117:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6863:79:1", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "6920:16:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6929:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6932:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "6922:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "6922:12:1" + }, + "nodeType": "YulExpressionStatement", + "src": "6922:12:1" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "6886:5:1" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "6911:5:1" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nodeType": "YulIdentifier", + "src": "6893:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "6893:24:1" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "6883:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "6883:35:1" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "6876:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "6876:43:1" + }, + "nodeType": "YulIf", + "src": "6873:63:1" + } + ] + }, + "name": "validator_revert_t_address", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "6856:5:1", + "type": "" + } + ], + "src": "6820:122:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7000:87:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "7010:29:1", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "7032:6:1" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "7019:12:1" + }, + "nodeType": "YulFunctionCall", + "src": "7019:20:1" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "7010:5:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "7075:5:1" + } + ], + "functionName": { + "name": "validator_revert_t_address", + "nodeType": "YulIdentifier", + "src": "7048:26:1" + }, + "nodeType": "YulFunctionCall", + "src": "7048:33:1" + }, + "nodeType": "YulExpressionStatement", + "src": "7048:33:1" + } + ] + }, + "name": "abi_decode_t_address", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "6978:6:1", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "6986:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "6994:5:1", + "type": "" + } + ], + "src": "6948:139:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7159:263:1", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "7205:83:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nodeType": "YulIdentifier", + "src": "7207:77:1" + }, + "nodeType": "YulFunctionCall", + "src": "7207:79:1" + }, + "nodeType": "YulExpressionStatement", + "src": "7207:79:1" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "7180:7:1" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7189:9:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "7176:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "7176:23:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7201:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "7172:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "7172:32:1" + }, + "nodeType": "YulIf", + "src": "7169:119:1" + }, + { + "nodeType": "YulBlock", + "src": "7298:117:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "7313:15:1", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7327:1:1", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "7317:6:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "7342:63:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7377:9:1" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "7388:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7373:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "7373:22:1" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "7397:7:1" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nodeType": "YulIdentifier", + "src": "7352:20:1" + }, + "nodeType": "YulFunctionCall", + "src": "7352:53:1" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "7342:6:1" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_address", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "7129:9:1", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "7140:7:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "7152:6:1", + "type": "" + } + ], + "src": "7093:329:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7487:50:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "7504:3:1" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "7524:5:1" + } + ], + "functionName": { + "name": "cleanup_t_bool", + "nodeType": "YulIdentifier", + "src": "7509:14:1" + }, + "nodeType": "YulFunctionCall", + "src": "7509:21:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "7497:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "7497:34:1" + }, + "nodeType": "YulExpressionStatement", + "src": "7497:34:1" + } + ] + }, + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "7475:5:1", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "7482:3:1", + "type": "" + } + ], + "src": "7428:109:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7635:118:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "7645:26:1", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7657:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7668:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7653:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "7653:18:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "7645:4:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "7719:6:1" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7732:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7743:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7728:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "7728:17:1" + } + ], + "functionName": { + "name": "abi_encode_t_bool_to_t_bool_fromStack", + "nodeType": "YulIdentifier", + "src": "7681:37:1" + }, + "nodeType": "YulFunctionCall", + "src": "7681:65:1" + }, + "nodeType": "YulExpressionStatement", + "src": "7681:65:1" + } + ] + }, + "name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "7607:9:1", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "7619:6:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "7630:4:1", + "type": "" + } + ], + "src": "7543:210:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7848:28:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7865:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7868:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "7858:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "7858:12:1" + }, + "nodeType": "YulExpressionStatement", + "src": "7858:12:1" + } + ] + }, + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nodeType": "YulFunctionDefinition", + "src": "7759:117:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7971:28:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7988:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7991:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "7981:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "7981:12:1" + }, + "nodeType": "YulExpressionStatement", + "src": "7981:12:1" + } + ] + }, + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nodeType": "YulFunctionDefinition", + "src": "7882:117:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8033:152:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8050:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8053:77:1", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8043:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "8043:88:1" + }, + "nodeType": "YulExpressionStatement", + "src": "8043:88:1" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8147:1:1", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8150:4:1", + "type": "", + "value": "0x41" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8140:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "8140:15:1" + }, + "nodeType": "YulExpressionStatement", + "src": "8140:15:1" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8171:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8174:4:1", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "8164:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "8164:15:1" + }, + "nodeType": "YulExpressionStatement", + "src": "8164:15:1" + } + ] + }, + "name": "panic_error_0x41", + "nodeType": "YulFunctionDefinition", + "src": "8005:180:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8234:238:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "8244:58:1", + "value": { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "8266:6:1" + }, + { + "arguments": [ + { + "name": "size", + "nodeType": "YulIdentifier", + "src": "8296:4:1" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nodeType": "YulIdentifier", + "src": "8274:21:1" + }, + "nodeType": "YulFunctionCall", + "src": "8274:27:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8262:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "8262:40:1" + }, + "variables": [ + { + "name": "newFreePtr", + "nodeType": "YulTypedName", + "src": "8248:10:1", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8413:22:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "8415:16:1" + }, + "nodeType": "YulFunctionCall", + "src": "8415:18:1" + }, + "nodeType": "YulExpressionStatement", + "src": "8415:18:1" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "8356:10:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8368:18:1", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "8353:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "8353:34:1" + }, + { + "arguments": [ + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "8392:10:1" + }, + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "8404:6:1" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "8389:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "8389:22:1" + } + ], + "functionName": { + "name": "or", + "nodeType": "YulIdentifier", + "src": "8350:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "8350:62:1" + }, + "nodeType": "YulIf", + "src": "8347:88:1" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8451:2:1", + "type": "", + "value": "64" + }, + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "8455:10:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8444:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "8444:22:1" + }, + "nodeType": "YulExpressionStatement", + "src": "8444:22:1" + } + ] + }, + "name": "finalize_allocation", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "8220:6:1", + "type": "" + }, + { + "name": "size", + "nodeType": "YulTypedName", + "src": "8228:4:1", + "type": "" + } + ], + "src": "8191:281:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8519:88:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "8529:30:1", + "value": { + "arguments": [], + "functionName": { + "name": "allocate_unbounded", + "nodeType": "YulIdentifier", + "src": "8539:18:1" + }, + "nodeType": "YulFunctionCall", + "src": "8539:20:1" + }, + "variableNames": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "8529:6:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "8588:6:1" + }, + { + "name": "size", + "nodeType": "YulIdentifier", + "src": "8596:4:1" + } + ], + "functionName": { + "name": "finalize_allocation", + "nodeType": "YulIdentifier", + "src": "8568:19:1" + }, + "nodeType": "YulFunctionCall", + "src": "8568:33:1" + }, + "nodeType": "YulExpressionStatement", + "src": "8568:33:1" + } + ] + }, + "name": "allocate_memory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "size", + "nodeType": "YulTypedName", + "src": "8503:4:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "8512:6:1", + "type": "" + } + ], + "src": "8478:129:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8680:241:1", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "8785:22:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "8787:16:1" + }, + "nodeType": "YulFunctionCall", + "src": "8787:18:1" + }, + "nodeType": "YulExpressionStatement", + "src": "8787:18:1" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "8757:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8765:18:1", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "8754:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "8754:30:1" + }, + "nodeType": "YulIf", + "src": "8751:56:1" + }, + { + "nodeType": "YulAssignment", + "src": "8817:37:1", + "value": { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "8847:6:1" + } + ], + "functionName": { + "name": "round_up_to_mul_of_32", + "nodeType": "YulIdentifier", + "src": "8825:21:1" + }, + "nodeType": "YulFunctionCall", + "src": "8825:29:1" + }, + "variableNames": [ + { + "name": "size", + "nodeType": "YulIdentifier", + "src": "8817:4:1" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "8891:23:1", + "value": { + "arguments": [ + { + "name": "size", + "nodeType": "YulIdentifier", + "src": "8903:4:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8909:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8899:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "8899:15:1" + }, + "variableNames": [ + { + "name": "size", + "nodeType": "YulIdentifier", + "src": "8891:4:1" + } + ] + } + ] + }, + "name": "array_allocation_size_t_string_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "8664:6:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "size", + "nodeType": "YulTypedName", + "src": "8675:4:1", + "type": "" + } + ], + "src": "8613:308:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8978:103:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "9001:3:1" + }, + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "9006:3:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "9011:6:1" + } + ], + "functionName": { + "name": "calldatacopy", + "nodeType": "YulIdentifier", + "src": "8988:12:1" + }, + "nodeType": "YulFunctionCall", + "src": "8988:30:1" + }, + "nodeType": "YulExpressionStatement", + "src": "8988:30:1" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "9059:3:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "9064:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9055:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "9055:16:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9073:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "9048:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "9048:27:1" + }, + "nodeType": "YulExpressionStatement", + "src": "9048:27:1" + } + ] + }, + "name": "copy_calldata_to_memory", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nodeType": "YulTypedName", + "src": "8960:3:1", + "type": "" + }, + { + "name": "dst", + "nodeType": "YulTypedName", + "src": "8965:3:1", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "8970:6:1", + "type": "" + } + ], + "src": "8927:154:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9171:328:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "9181:75:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "9248:6:1" + } + ], + "functionName": { + "name": "array_allocation_size_t_string_memory_ptr", + "nodeType": "YulIdentifier", + "src": "9206:41:1" + }, + "nodeType": "YulFunctionCall", + "src": "9206:49:1" + } + ], + "functionName": { + "name": "allocate_memory", + "nodeType": "YulIdentifier", + "src": "9190:15:1" + }, + "nodeType": "YulFunctionCall", + "src": "9190:66:1" + }, + "variableNames": [ + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "9181:5:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "9272:5:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "9279:6:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "9265:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "9265:21:1" + }, + "nodeType": "YulExpressionStatement", + "src": "9265:21:1" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "9295:27:1", + "value": { + "arguments": [ + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "9310:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9317:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9306:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "9306:16:1" + }, + "variables": [ + { + "name": "dst", + "nodeType": "YulTypedName", + "src": "9299:3:1", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9360:83:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae", + "nodeType": "YulIdentifier", + "src": "9362:77:1" + }, + "nodeType": "YulFunctionCall", + "src": "9362:79:1" + }, + "nodeType": "YulExpressionStatement", + "src": "9362:79:1" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "9341:3:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "9346:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9337:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "9337:16:1" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "9355:3:1" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "9334:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "9334:25:1" + }, + "nodeType": "YulIf", + "src": "9331:112:1" + }, + { + "expression": { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "9476:3:1" + }, + { + "name": "dst", + "nodeType": "YulIdentifier", + "src": "9481:3:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "9486:6:1" + } + ], + "functionName": { + "name": "copy_calldata_to_memory", + "nodeType": "YulIdentifier", + "src": "9452:23:1" + }, + "nodeType": "YulFunctionCall", + "src": "9452:41:1" + }, + "nodeType": "YulExpressionStatement", + "src": "9452:41:1" + } + ] + }, + "name": "abi_decode_available_length_t_string_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "src", + "nodeType": "YulTypedName", + "src": "9144:3:1", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "9149:6:1", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "9157:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nodeType": "YulTypedName", + "src": "9165:5:1", + "type": "" + } + ], + "src": "9087:412:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9581:278:1", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "9630:83:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d", + "nodeType": "YulIdentifier", + "src": "9632:77:1" + }, + "nodeType": "YulFunctionCall", + "src": "9632:79:1" + }, + "nodeType": "YulExpressionStatement", + "src": "9632:79:1" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "9609:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9617:4:1", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9605:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "9605:17:1" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "9624:3:1" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "9601:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "9601:27:1" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "9594:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "9594:35:1" + }, + "nodeType": "YulIf", + "src": "9591:122:1" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "9722:34:1", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "9749:6:1" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "9736:12:1" + }, + "nodeType": "YulFunctionCall", + "src": "9736:20:1" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "9726:6:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "9765:88:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "9826:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9834:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9822:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "9822:17:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "9841:6:1" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "9849:3:1" + } + ], + "functionName": { + "name": "abi_decode_available_length_t_string_memory_ptr", + "nodeType": "YulIdentifier", + "src": "9774:47:1" + }, + "nodeType": "YulFunctionCall", + "src": "9774:79:1" + }, + "variableNames": [ + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "9765:5:1" + } + ] + } + ] + }, + "name": "abi_decode_t_string_memory_ptr", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "9559:6:1", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "9567:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nodeType": "YulTypedName", + "src": "9575:5:1", + "type": "" + } + ], + "src": "9519:340:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9908:79:1", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "9965:16:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9974:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9977:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "9967:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "9967:12:1" + }, + "nodeType": "YulExpressionStatement", + "src": "9967:12:1" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "9931:5:1" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "9956:5:1" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "9938:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "9938:24:1" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "9928:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "9928:35:1" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "9921:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "9921:43:1" + }, + "nodeType": "YulIf", + "src": "9918:63:1" + } + ] + }, + "name": "validator_revert_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "9901:5:1", + "type": "" + } + ], + "src": "9865:122:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10045:87:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "10055:29:1", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "10077:6:1" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "10064:12:1" + }, + "nodeType": "YulFunctionCall", + "src": "10064:20:1" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "10055:5:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "10120:5:1" + } + ], + "functionName": { + "name": "validator_revert_t_uint256", + "nodeType": "YulIdentifier", + "src": "10093:26:1" + }, + "nodeType": "YulFunctionCall", + "src": "10093:33:1" + }, + "nodeType": "YulExpressionStatement", + "src": "10093:33:1" + } + ] + }, + "name": "abi_decode_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "10023:6:1", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "10031:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "10039:5:1", + "type": "" + } + ], + "src": "9993:139:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10302:1287:1", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "10349:83:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nodeType": "YulIdentifier", + "src": "10351:77:1" + }, + "nodeType": "YulFunctionCall", + "src": "10351:79:1" + }, + "nodeType": "YulExpressionStatement", + "src": "10351:79:1" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "10323:7:1" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10332:9:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "10319:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "10319:23:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10344:3:1", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "10315:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "10315:33:1" + }, + "nodeType": "YulIf", + "src": "10312:120:1" + }, + { + "nodeType": "YulBlock", + "src": "10442:117:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "10457:15:1", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10471:1:1", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "10461:6:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "10486:63:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10521:9:1" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "10532:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10517:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "10517:22:1" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "10541:7:1" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nodeType": "YulIdentifier", + "src": "10496:20:1" + }, + "nodeType": "YulFunctionCall", + "src": "10496:53:1" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "10486:6:1" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "10569:288:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "10584:46:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10615:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10626:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10611:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "10611:18:1" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "10598:12:1" + }, + "nodeType": "YulFunctionCall", + "src": "10598:32:1" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "10588:6:1", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10677:83:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nodeType": "YulIdentifier", + "src": "10679:77:1" + }, + "nodeType": "YulFunctionCall", + "src": "10679:79:1" + }, + "nodeType": "YulExpressionStatement", + "src": "10679:79:1" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "10649:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10657:18:1", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "10646:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "10646:30:1" + }, + "nodeType": "YulIf", + "src": "10643:117:1" + }, + { + "nodeType": "YulAssignment", + "src": "10774:73:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10819:9:1" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "10830:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10815:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "10815:22:1" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "10839:7:1" + } + ], + "functionName": { + "name": "abi_decode_t_string_memory_ptr", + "nodeType": "YulIdentifier", + "src": "10784:30:1" + }, + "nodeType": "YulFunctionCall", + "src": "10784:63:1" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "10774:6:1" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "10867:288:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "10882:46:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10913:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10924:2:1", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10909:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "10909:18:1" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "10896:12:1" + }, + "nodeType": "YulFunctionCall", + "src": "10896:32:1" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "10886:6:1", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10975:83:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nodeType": "YulIdentifier", + "src": "10977:77:1" + }, + "nodeType": "YulFunctionCall", + "src": "10977:79:1" + }, + "nodeType": "YulExpressionStatement", + "src": "10977:79:1" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "10947:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10955:18:1", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "10944:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "10944:30:1" + }, + "nodeType": "YulIf", + "src": "10941:117:1" + }, + { + "nodeType": "YulAssignment", + "src": "11072:73:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "11117:9:1" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "11128:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11113:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "11113:22:1" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "11137:7:1" + } + ], + "functionName": { + "name": "abi_decode_t_string_memory_ptr", + "nodeType": "YulIdentifier", + "src": "11082:30:1" + }, + "nodeType": "YulFunctionCall", + "src": "11082:63:1" + }, + "variableNames": [ + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "11072:6:1" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "11165:288:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "11180:46:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "11211:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11222:2:1", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11207:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "11207:18:1" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "11194:12:1" + }, + "nodeType": "YulFunctionCall", + "src": "11194:32:1" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "11184:6:1", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11273:83:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db", + "nodeType": "YulIdentifier", + "src": "11275:77:1" + }, + "nodeType": "YulFunctionCall", + "src": "11275:79:1" + }, + "nodeType": "YulExpressionStatement", + "src": "11275:79:1" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "11245:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11253:18:1", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "11242:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "11242:30:1" + }, + "nodeType": "YulIf", + "src": "11239:117:1" + }, + { + "nodeType": "YulAssignment", + "src": "11370:73:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "11415:9:1" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "11426:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11411:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "11411:22:1" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "11435:7:1" + } + ], + "functionName": { + "name": "abi_decode_t_string_memory_ptr", + "nodeType": "YulIdentifier", + "src": "11380:30:1" + }, + "nodeType": "YulFunctionCall", + "src": "11380:63:1" + }, + "variableNames": [ + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "11370:6:1" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "11463:119:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "11478:17:1", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11492:3:1", + "type": "", + "value": "128" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "11482:6:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "11509:63:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "11544:9:1" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "11555:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11540:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "11540:22:1" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "11564:7:1" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nodeType": "YulIdentifier", + "src": "11519:20:1" + }, + "nodeType": "YulFunctionCall", + "src": "11519:53:1" + }, + "variableNames": [ + { + "name": "value4", + "nodeType": "YulIdentifier", + "src": "11509:6:1" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_string_memory_ptrt_string_memory_ptrt_string_memory_ptrt_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "10240:9:1", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "10251:7:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "10263:6:1", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "10271:6:1", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "10279:6:1", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "10287:6:1", + "type": "" + }, + { + "name": "value4", + "nodeType": "YulTypedName", + "src": "10295:6:1", + "type": "" + } + ], + "src": "10138:1451:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11678:391:1", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "11724:83:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b", + "nodeType": "YulIdentifier", + "src": "11726:77:1" + }, + "nodeType": "YulFunctionCall", + "src": "11726:79:1" + }, + "nodeType": "YulExpressionStatement", + "src": "11726:79:1" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "11699:7:1" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "11708:9:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "11695:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "11695:23:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11720:2:1", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "11691:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "11691:32:1" + }, + "nodeType": "YulIf", + "src": "11688:119:1" + }, + { + "nodeType": "YulBlock", + "src": "11817:117:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "11832:15:1", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11846:1:1", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "11836:6:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "11861:63:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "11896:9:1" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "11907:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11892:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "11892:22:1" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "11916:7:1" + } + ], + "functionName": { + "name": "abi_decode_t_address", + "nodeType": "YulIdentifier", + "src": "11871:20:1" + }, + "nodeType": "YulFunctionCall", + "src": "11871:53:1" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "11861:6:1" + } + ] + } + ] + }, + { + "nodeType": "YulBlock", + "src": "11944:118:1", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "11959:16:1", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11973:2:1", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "11963:6:1", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "11989:63:1", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12024:9:1" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "12035:6:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12020:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "12020:22:1" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "12044:7:1" + } + ], + "functionName": { + "name": "abi_decode_t_uint256", + "nodeType": "YulIdentifier", + "src": "11999:20:1" + }, + "nodeType": "YulFunctionCall", + "src": "11999:53:1" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "11989:6:1" + } + ] + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "11640:9:1", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "11651:7:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "11663:6:1", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "11671:6:1", + "type": "" + } + ], + "src": "11595:474:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12140:53:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "12157:3:1" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "12180:5:1" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "12162:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "12162:24:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "12150:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "12150:37:1" + }, + "nodeType": "YulExpressionStatement", + "src": "12150:37:1" + } + ] + }, + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "12128:5:1", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "12135:3:1", + "type": "" + } + ], + "src": "12075:118:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12297:124:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "12307:26:1", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12319:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12330:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12315:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "12315:18:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "12307:4:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "12387:6:1" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12400:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12411:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12396:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "12396:17:1" + } + ], + "functionName": { + "name": "abi_encode_t_uint256_to_t_uint256_fromStack", + "nodeType": "YulIdentifier", + "src": "12343:43:1" + }, + "nodeType": "YulFunctionCall", + "src": "12343:71:1" + }, + "nodeType": "YulExpressionStatement", + "src": "12343:71:1" + } + ] + }, + "name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "12269:9:1", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "12281:6:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "12292:4:1", + "type": "" + } + ], + "src": "12199:222:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12492:53:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "12509:3:1" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "12532:5:1" + } + ], + "functionName": { + "name": "cleanup_t_address", + "nodeType": "YulIdentifier", + "src": "12514:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "12514:24:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "12502:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "12502:37:1" + }, + "nodeType": "YulExpressionStatement", + "src": "12502:37:1" + } + ] + }, + "name": "abi_encode_t_address_to_t_address_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "12480:5:1", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "12487:3:1", + "type": "" + } + ], + "src": "12427:118:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12649:124:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "12659:26:1", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12671:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12682:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12667:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "12667:18:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "12659:4:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "12739:6:1" + }, + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12752:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12763:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12748:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "12748:17:1" + } + ], + "functionName": { + "name": "abi_encode_t_address_to_t_address_fromStack", + "nodeType": "YulIdentifier", + "src": "12695:43:1" + }, + "nodeType": "YulFunctionCall", + "src": "12695:71:1" + }, + "nodeType": "YulExpressionStatement", + "src": "12695:71:1" + } + ] + }, + "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "12621:9:1", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "12633:6:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "12644:4:1", + "type": "" + } + ], + "src": "12551:222:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12807:152:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12824:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12827:77:1", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "12817:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "12817:88:1" + }, + "nodeType": "YulExpressionStatement", + "src": "12817:88:1" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12921:1:1", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12924:4:1", + "type": "", + "value": "0x11" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "12914:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "12914:15:1" + }, + "nodeType": "YulExpressionStatement", + "src": "12914:15:1" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12945:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12948:4:1", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "12938:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "12938:15:1" + }, + "nodeType": "YulExpressionStatement", + "src": "12938:15:1" + } + ] + }, + "name": "panic_error_0x11", + "nodeType": "YulFunctionDefinition", + "src": "12779:180:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13010:146:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "13020:25:1", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "13043:1:1" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "13025:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "13025:20:1" + }, + "variableNames": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "13020:1:1" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "13054:25:1", + "value": { + "arguments": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "13077:1:1" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "13059:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "13059:20:1" + }, + "variableNames": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "13054:1:1" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13101:22:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nodeType": "YulIdentifier", + "src": "13103:16:1" + }, + "nodeType": "YulFunctionCall", + "src": "13103:18:1" + }, + "nodeType": "YulExpressionStatement", + "src": "13103:18:1" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "13095:1:1" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "13098:1:1" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "13092:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "13092:8:1" + }, + "nodeType": "YulIf", + "src": "13089:34:1" + }, + { + "nodeType": "YulAssignment", + "src": "13133:17:1", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "13145:1:1" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "13148:1:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "13141:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "13141:9:1" + }, + "variableNames": [ + { + "name": "diff", + "nodeType": "YulIdentifier", + "src": "13133:4:1" + } + ] + } + ] + }, + "name": "checked_sub_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nodeType": "YulTypedName", + "src": "12996:1:1", + "type": "" + }, + { + "name": "y", + "nodeType": "YulTypedName", + "src": "12999:1:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "diff", + "nodeType": "YulTypedName", + "src": "13005:4:1", + "type": "" + } + ], + "src": "12965:191:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13190:152:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13207:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13210:77:1", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "13200:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "13200:88:1" + }, + "nodeType": "YulExpressionStatement", + "src": "13200:88:1" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13304:1:1", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13307:4:1", + "type": "", + "value": "0x32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "13297:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "13297:15:1" + }, + "nodeType": "YulExpressionStatement", + "src": "13297:15:1" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13328:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13331:4:1", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "13321:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "13321:15:1" + }, + "nodeType": "YulExpressionStatement", + "src": "13321:15:1" + } + ] + }, + "name": "panic_error_0x32", + "nodeType": "YulFunctionDefinition", + "src": "13162:180:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13376:152:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13393:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13396:77:1", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "13386:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "13386:88:1" + }, + "nodeType": "YulExpressionStatement", + "src": "13386:88:1" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13490:1:1", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13493:4:1", + "type": "", + "value": "0x22" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "13483:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "13483:15:1" + }, + "nodeType": "YulExpressionStatement", + "src": "13483:15:1" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13514:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13517:4:1", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "13507:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "13507:15:1" + }, + "nodeType": "YulExpressionStatement", + "src": "13507:15:1" + } + ] + }, + "name": "panic_error_0x22", + "nodeType": "YulFunctionDefinition", + "src": "13348:180:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13585:269:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "13595:22:1", + "value": { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "13609:4:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13615:1:1", + "type": "", + "value": "2" + } + ], + "functionName": { + "name": "div", + "nodeType": "YulIdentifier", + "src": "13605:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "13605:12:1" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "13595:6:1" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "13626:38:1", + "value": { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "13656:4:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13662:1:1", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "13652:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "13652:12:1" + }, + "variables": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulTypedName", + "src": "13630:18:1", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13703:51:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "13717:27:1", + "value": { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "13731:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13739:4:1", + "type": "", + "value": "0x7f" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "13727:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "13727:17:1" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "13717:6:1" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulIdentifier", + "src": "13683:18:1" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "13676:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "13676:26:1" + }, + "nodeType": "YulIf", + "src": "13673:81:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13806:42:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x22", + "nodeType": "YulIdentifier", + "src": "13820:16:1" + }, + "nodeType": "YulFunctionCall", + "src": "13820:18:1" + }, + "nodeType": "YulExpressionStatement", + "src": "13820:18:1" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulIdentifier", + "src": "13770:18:1" + }, + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "13793:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13801:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "13790:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "13790:14:1" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "13767:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "13767:38:1" + }, + "nodeType": "YulIf", + "src": "13764:84:1" + } + ] + }, + "name": "extract_byte_array_length", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "13569:4:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "13578:6:1", + "type": "" + } + ], + "src": "13534:320:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13904:261:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "13914:25:1", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "13937:1:1" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "13919:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "13919:20:1" + }, + "variableNames": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "13914:1:1" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "13948:25:1", + "value": { + "arguments": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "13971:1:1" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "13953:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "13953:20:1" + }, + "variableNames": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "13948:1:1" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "14111:22:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nodeType": "YulIdentifier", + "src": "14113:16:1" + }, + "nodeType": "YulFunctionCall", + "src": "14113:18:1" + }, + "nodeType": "YulExpressionStatement", + "src": "14113:18:1" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "14032:1:1" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14039:66:1", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "14107:1:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "14035:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "14035:74:1" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "14029:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "14029:81:1" + }, + "nodeType": "YulIf", + "src": "14026:107:1" + }, + { + "nodeType": "YulAssignment", + "src": "14143:16:1", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "14154:1:1" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "14157:1:1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "14150:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "14150:9:1" + }, + "variableNames": [ + { + "name": "sum", + "nodeType": "YulIdentifier", + "src": "14143:3:1" + } + ] + } + ] + }, + "name": "checked_add_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nodeType": "YulTypedName", + "src": "13891:1:1", + "type": "" + }, + { + "name": "y", + "nodeType": "YulTypedName", + "src": "13894:1:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "sum", + "nodeType": "YulTypedName", + "src": "13900:3:1", + "type": "" + } + ], + "src": "13860:305:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "14214:190:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "14224:33:1", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "14251:5:1" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "14233:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "14233:24:1" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "14224:5:1" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "14347:22:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nodeType": "YulIdentifier", + "src": "14349:16:1" + }, + "nodeType": "YulFunctionCall", + "src": "14349:18:1" + }, + "nodeType": "YulExpressionStatement", + "src": "14349:18:1" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "14272:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14279:66:1", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "14269:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "14269:77:1" + }, + "nodeType": "YulIf", + "src": "14266:103:1" + }, + { + "nodeType": "YulAssignment", + "src": "14378:20:1", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "14389:5:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14396:1:1", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "14385:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "14385:13:1" + }, + "variableNames": [ + { + "name": "ret", + "nodeType": "YulIdentifier", + "src": "14378:3:1" + } + ] + } + ] + }, + "name": "increment_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "14200:5:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nodeType": "YulTypedName", + "src": "14210:3:1", + "type": "" + } + ], + "src": "14171:233:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "14506:73:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "14523:3:1" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "14528:6:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "14516:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "14516:19:1" + }, + "nodeType": "YulExpressionStatement", + "src": "14516:19:1" + }, + { + "nodeType": "YulAssignment", + "src": "14544:29:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "14563:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14568:4:1", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "14559:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "14559:14:1" + }, + "variableNames": [ + { + "name": "updated_pos", + "nodeType": "YulIdentifier", + "src": "14544:11:1" + } + ] + } + ] + }, + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "14478:3:1", + "type": "" + }, + { + "name": "length", + "nodeType": "YulTypedName", + "src": "14483:6:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "updated_pos", + "nodeType": "YulTypedName", + "src": "14494:11:1", + "type": "" + } + ], + "src": "14410:169:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "14691:76:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "14713:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "14721:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "14709:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "14709:14:1" + }, + { + "hexValue": "4f7267616e697a6174696f6e20616c7265616479207265676973746572656421", + "kind": "string", + "nodeType": "YulLiteral", + "src": "14725:34:1", + "type": "", + "value": "Organization already registered!" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "14702:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "14702:58:1" + }, + "nodeType": "YulExpressionStatement", + "src": "14702:58:1" + } + ] + }, + "name": "store_literal_in_memory_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "14683:6:1", + "type": "" + } + ], + "src": "14585:182:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "14919:220:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "14929:74:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "14995:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15000:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "14936:58:1" + }, + "nodeType": "YulFunctionCall", + "src": "14936:67:1" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "14929:3:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "15101:3:1" + } + ], + "functionName": { + "name": "store_literal_in_memory_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f", + "nodeType": "YulIdentifier", + "src": "15012:88:1" + }, + "nodeType": "YulFunctionCall", + "src": "15012:93:1" + }, + "nodeType": "YulExpressionStatement", + "src": "15012:93:1" + }, + { + "nodeType": "YulAssignment", + "src": "15114:19:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "15125:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15130:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "15121:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "15121:12:1" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "15114:3:1" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f_to_t_string_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "14907:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "14915:3:1", + "type": "" + } + ], + "src": "14773:366:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "15316:248:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "15326:26:1", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "15338:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15349:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "15334:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "15334:18:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "15326:4:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "15373:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15384:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "15369:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "15369:17:1" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "15392:4:1" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "15398:9:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "15388:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "15388:20:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "15362:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "15362:47:1" + }, + "nodeType": "YulExpressionStatement", + "src": "15362:47:1" + }, + { + "nodeType": "YulAssignment", + "src": "15418:139:1", + "value": { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "15552:4:1" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f_to_t_string_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "15426:124:1" + }, + "nodeType": "YulFunctionCall", + "src": "15426:131:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "15418:4:1" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "15296:9:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "15311:4:1", + "type": "" + } + ], + "src": "15145:419:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "15618:300:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "15628:25:1", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "15651:1:1" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "15633:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "15633:20:1" + }, + "variableNames": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "15628:1:1" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "15662:25:1", + "value": { + "arguments": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "15685:1:1" + } + ], + "functionName": { + "name": "cleanup_t_uint256", + "nodeType": "YulIdentifier", + "src": "15667:17:1" + }, + "nodeType": "YulFunctionCall", + "src": "15667:20:1" + }, + "variableNames": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "15662:1:1" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "15860:22:1", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nodeType": "YulIdentifier", + "src": "15862:16:1" + }, + "nodeType": "YulFunctionCall", + "src": "15862:18:1" + }, + "nodeType": "YulExpressionStatement", + "src": "15862:18:1" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "15772:1:1" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "15765:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "15765:9:1" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "15758:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "15758:17:1" + }, + { + "arguments": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "15780:1:1" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15787:66:1", + "type": "", + "value": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff" + }, + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "15855:1:1" + } + ], + "functionName": { + "name": "div", + "nodeType": "YulIdentifier", + "src": "15783:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "15783:74:1" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "15777:2:1" + }, + "nodeType": "YulFunctionCall", + "src": "15777:81:1" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "15754:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "15754:105:1" + }, + "nodeType": "YulIf", + "src": "15751:131:1" + }, + { + "nodeType": "YulAssignment", + "src": "15892:20:1", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "15907:1:1" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "15910:1:1" + } + ], + "functionName": { + "name": "mul", + "nodeType": "YulIdentifier", + "src": "15903:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "15903:9:1" + }, + "variableNames": [ + { + "name": "product", + "nodeType": "YulIdentifier", + "src": "15892:7:1" + } + ] + } + ] + }, + "name": "checked_mul_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nodeType": "YulTypedName", + "src": "15601:1:1", + "type": "" + }, + { + "name": "y", + "nodeType": "YulTypedName", + "src": "15604:1:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "product", + "nodeType": "YulTypedName", + "src": "15610:7:1", + "type": "" + } + ], + "src": "15570:348:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "15952:152:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15969:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "15972:77:1", + "type": "", + "value": "35408467139433450592217433187231851964531694900788300625387963629091585785856" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "15962:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "15962:88:1" + }, + "nodeType": "YulExpressionStatement", + "src": "15962:88:1" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16066:1:1", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16069:4:1", + "type": "", + "value": "0x31" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "16059:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "16059:15:1" + }, + "nodeType": "YulExpressionStatement", + "src": "16059:15:1" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16090:1:1", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16093:4:1", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "16083:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "16083:15:1" + }, + "nodeType": "YulExpressionStatement", + "src": "16083:15:1" + } + ] + }, + "name": "panic_error_0x31", + "nodeType": "YulFunctionDefinition", + "src": "15924:180:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "16216:117:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "16238:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16246:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "16234:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "16234:14:1" + }, + { + "hexValue": "4f7267616e697a6174696f6e206164647265737320646f6573206e6f74206578", + "kind": "string", + "nodeType": "YulLiteral", + "src": "16250:34:1", + "type": "", + "value": "Organization address does not ex" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "16227:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "16227:58:1" + }, + "nodeType": "YulExpressionStatement", + "src": "16227:58:1" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "16306:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16314:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "16302:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "16302:15:1" + }, + { + "hexValue": "69737421", + "kind": "string", + "nodeType": "YulLiteral", + "src": "16319:6:1", + "type": "", + "value": "ist!" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "16295:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "16295:31:1" + }, + "nodeType": "YulExpressionStatement", + "src": "16295:31:1" + } + ] + }, + "name": "store_literal_in_memory_ddeb0b25a32bdbd6903219d580ec164d518abe435832e90b114c90315c52a2cf", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "16208:6:1", + "type": "" + } + ], + "src": "16110:223:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "16485:220:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "16495:74:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "16561:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16566:2:1", + "type": "", + "value": "36" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "16502:58:1" + }, + "nodeType": "YulFunctionCall", + "src": "16502:67:1" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "16495:3:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "16667:3:1" + } + ], + "functionName": { + "name": "store_literal_in_memory_ddeb0b25a32bdbd6903219d580ec164d518abe435832e90b114c90315c52a2cf", + "nodeType": "YulIdentifier", + "src": "16578:88:1" + }, + "nodeType": "YulFunctionCall", + "src": "16578:93:1" + }, + "nodeType": "YulExpressionStatement", + "src": "16578:93:1" + }, + { + "nodeType": "YulAssignment", + "src": "16680:19:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "16691:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16696:2:1", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "16687:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "16687:12:1" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "16680:3:1" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_ddeb0b25a32bdbd6903219d580ec164d518abe435832e90b114c90315c52a2cf_to_t_string_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "16473:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "16481:3:1", + "type": "" + } + ], + "src": "16339:366:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "16882:248:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "16892:26:1", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "16904:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16915:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "16900:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "16900:18:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "16892:4:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "16939:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "16950:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "16935:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "16935:17:1" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "16958:4:1" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "16964:9:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "16954:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "16954:20:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "16928:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "16928:47:1" + }, + "nodeType": "YulExpressionStatement", + "src": "16928:47:1" + }, + { + "nodeType": "YulAssignment", + "src": "16984:139:1", + "value": { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "17118:4:1" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_ddeb0b25a32bdbd6903219d580ec164d518abe435832e90b114c90315c52a2cf_to_t_string_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "16992:124:1" + }, + "nodeType": "YulFunctionCall", + "src": "16992:131:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "16984:4:1" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_ddeb0b25a32bdbd6903219d580ec164d518abe435832e90b114c90315c52a2cf__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "16862:9:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "16877:4:1", + "type": "" + } + ], + "src": "16711:419:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "17242:74:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "17264:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "17272:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "17260:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "17260:14:1" + }, + { + "hexValue": "4f7267616e697a6174696f6e20616c726561647920766572696669656421", + "kind": "string", + "nodeType": "YulLiteral", + "src": "17276:32:1", + "type": "", + "value": "Organization already verified!" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "17253:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "17253:56:1" + }, + "nodeType": "YulExpressionStatement", + "src": "17253:56:1" + } + ] + }, + "name": "store_literal_in_memory_53664b562d96b321f827bfb375320c905b5c20116fabd3735d276655e7a84701", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "17234:6:1", + "type": "" + } + ], + "src": "17136:180:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "17468:220:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "17478:74:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "17544:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "17549:2:1", + "type": "", + "value": "30" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "17485:58:1" + }, + "nodeType": "YulFunctionCall", + "src": "17485:67:1" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "17478:3:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "17650:3:1" + } + ], + "functionName": { + "name": "store_literal_in_memory_53664b562d96b321f827bfb375320c905b5c20116fabd3735d276655e7a84701", + "nodeType": "YulIdentifier", + "src": "17561:88:1" + }, + "nodeType": "YulFunctionCall", + "src": "17561:93:1" + }, + "nodeType": "YulExpressionStatement", + "src": "17561:93:1" + }, + { + "nodeType": "YulAssignment", + "src": "17663:19:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "17674:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "17679:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "17670:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "17670:12:1" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "17663:3:1" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_53664b562d96b321f827bfb375320c905b5c20116fabd3735d276655e7a84701_to_t_string_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "17456:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "17464:3:1", + "type": "" + } + ], + "src": "17322:366:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "17865:248:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "17875:26:1", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "17887:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "17898:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "17883:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "17883:18:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "17875:4:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "17922:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "17933:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "17918:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "17918:17:1" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "17941:4:1" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "17947:9:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "17937:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "17937:20:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "17911:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "17911:47:1" + }, + "nodeType": "YulExpressionStatement", + "src": "17911:47:1" + }, + { + "nodeType": "YulAssignment", + "src": "17967:139:1", + "value": { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "18101:4:1" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_53664b562d96b321f827bfb375320c905b5c20116fabd3735d276655e7a84701_to_t_string_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "17975:124:1" + }, + "nodeType": "YulFunctionCall", + "src": "17975:131:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "17967:4:1" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_53664b562d96b321f827bfb375320c905b5c20116fabd3735d276655e7a84701__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "17845:9:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "17860:4:1", + "type": "" + } + ], + "src": "17694:419:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "18225:139:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "18247:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18255:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "18243:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "18243:14:1" + }, + { + "hexValue": "566f746572206f7267616e697a6174696f6e206973206e6f7420766572696669", + "kind": "string", + "nodeType": "YulLiteral", + "src": "18259:34:1", + "type": "", + "value": "Voter organization is not verifi" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "18236:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "18236:58:1" + }, + "nodeType": "YulExpressionStatement", + "src": "18236:58:1" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "18315:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18323:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "18311:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "18311:15:1" + }, + { + "hexValue": "65642c206e6f74207065726d697474656420746f20766f746521", + "kind": "string", + "nodeType": "YulLiteral", + "src": "18328:28:1", + "type": "", + "value": "ed, not permitted to vote!" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "18304:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "18304:53:1" + }, + "nodeType": "YulExpressionStatement", + "src": "18304:53:1" + } + ] + }, + "name": "store_literal_in_memory_a8c8730adc0a679cd4a5e2b2364d02c0d62620d7a5cf6d44281730f36a7832c1", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "18217:6:1", + "type": "" + } + ], + "src": "18119:245:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "18516:220:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "18526:74:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "18592:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18597:2:1", + "type": "", + "value": "58" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "18533:58:1" + }, + "nodeType": "YulFunctionCall", + "src": "18533:67:1" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "18526:3:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "18698:3:1" + } + ], + "functionName": { + "name": "store_literal_in_memory_a8c8730adc0a679cd4a5e2b2364d02c0d62620d7a5cf6d44281730f36a7832c1", + "nodeType": "YulIdentifier", + "src": "18609:88:1" + }, + "nodeType": "YulFunctionCall", + "src": "18609:93:1" + }, + "nodeType": "YulExpressionStatement", + "src": "18609:93:1" + }, + { + "nodeType": "YulAssignment", + "src": "18711:19:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "18722:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18727:2:1", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "18718:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "18718:12:1" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "18711:3:1" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_a8c8730adc0a679cd4a5e2b2364d02c0d62620d7a5cf6d44281730f36a7832c1_to_t_string_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "18504:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "18512:3:1", + "type": "" + } + ], + "src": "18370:366:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "18913:248:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "18923:26:1", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "18935:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18946:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "18931:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "18931:18:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "18923:4:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "18970:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "18981:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "18966:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "18966:17:1" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "18989:4:1" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "18995:9:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "18985:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "18985:20:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "18959:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "18959:47:1" + }, + "nodeType": "YulExpressionStatement", + "src": "18959:47:1" + }, + { + "nodeType": "YulAssignment", + "src": "19015:139:1", + "value": { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "19149:4:1" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_a8c8730adc0a679cd4a5e2b2364d02c0d62620d7a5cf6d44281730f36a7832c1_to_t_string_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "19023:124:1" + }, + "nodeType": "YulFunctionCall", + "src": "19023:131:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "19015:4:1" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_a8c8730adc0a679cd4a5e2b2364d02c0d62620d7a5cf6d44281730f36a7832c1__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "18893:9:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "18908:4:1", + "type": "" + } + ], + "src": "18742:419:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "19273:127:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "19295:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "19303:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "19291:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "19291:14:1" + }, + { + "hexValue": "566f746572206f7267616e697a6174696f6e2063616e6e6f7420766f7465206d", + "kind": "string", + "nodeType": "YulLiteral", + "src": "19307:34:1", + "type": "", + "value": "Voter organization cannot vote m" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "19284:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "19284:58:1" + }, + "nodeType": "YulExpressionStatement", + "src": "19284:58:1" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "19363:6:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "19371:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "19359:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "19359:15:1" + }, + { + "hexValue": "6f7265207468616e206f6e636521", + "kind": "string", + "nodeType": "YulLiteral", + "src": "19376:16:1", + "type": "", + "value": "ore than once!" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "19352:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "19352:41:1" + }, + "nodeType": "YulExpressionStatement", + "src": "19352:41:1" + } + ] + }, + "name": "store_literal_in_memory_414be5daad95c532f9b7381e52ffca6776b0449e47c566018321a361a4b95d16", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "19265:6:1", + "type": "" + } + ], + "src": "19167:233:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "19552:220:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "19562:74:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "19628:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "19633:2:1", + "type": "", + "value": "46" + } + ], + "functionName": { + "name": "array_storeLengthForEncoding_t_string_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "19569:58:1" + }, + "nodeType": "YulFunctionCall", + "src": "19569:67:1" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "19562:3:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "19734:3:1" + } + ], + "functionName": { + "name": "store_literal_in_memory_414be5daad95c532f9b7381e52ffca6776b0449e47c566018321a361a4b95d16", + "nodeType": "YulIdentifier", + "src": "19645:88:1" + }, + "nodeType": "YulFunctionCall", + "src": "19645:93:1" + }, + "nodeType": "YulExpressionStatement", + "src": "19645:93:1" + }, + { + "nodeType": "YulAssignment", + "src": "19747:19:1", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "19758:3:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "19763:2:1", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "19754:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "19754:12:1" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "19747:3:1" + } + ] + } + ] + }, + "name": "abi_encode_t_stringliteral_414be5daad95c532f9b7381e52ffca6776b0449e47c566018321a361a4b95d16_to_t_string_memory_ptr_fromStack", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "19540:3:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "19548:3:1", + "type": "" + } + ], + "src": "19406:366:1" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "19949:248:1", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "19959:26:1", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "19971:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "19982:2:1", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "19967:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "19967:18:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "19959:4:1" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "20006:9:1" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "20017:1:1", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "20002:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "20002:17:1" + }, + { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "20025:4:1" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "20031:9:1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "20021:3:1" + }, + "nodeType": "YulFunctionCall", + "src": "20021:20:1" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "19995:6:1" + }, + "nodeType": "YulFunctionCall", + "src": "19995:47:1" + }, + "nodeType": "YulExpressionStatement", + "src": "19995:47:1" + }, + { + "nodeType": "YulAssignment", + "src": "20051:139:1", + "value": { + "arguments": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "20185:4:1" + } + ], + "functionName": { + "name": "abi_encode_t_stringliteral_414be5daad95c532f9b7381e52ffca6776b0449e47c566018321a361a4b95d16_to_t_string_memory_ptr_fromStack", + "nodeType": "YulIdentifier", + "src": "20059:124:1" + }, + "nodeType": "YulFunctionCall", + "src": "20059:131:1" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "20051:4:1" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_414be5daad95c532f9b7381e52ffca6776b0449e47c566018321a361a4b95d16__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "19929:9:1", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "19944:4:1", + "type": "" + } + ], + "src": "19778:419:1" + } + ] + }, + "contents": "{\n\n function array_length_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function array_dataslot_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr(ptr) -> data {\n data := ptr\n\n data := add(ptr, 0x20)\n\n }\n\n function cleanup_t_uint160(value) -> cleaned {\n cleaned := and(value, 0xffffffffffffffffffffffffffffffffffffffff)\n }\n\n function cleanup_t_address(value) -> cleaned {\n cleaned := cleanup_t_uint160(value)\n }\n\n function abi_encode_t_address_to_t_address(value, pos) {\n mstore(pos, cleanup_t_address(value))\n }\n\n function array_length_t_string_memory_ptr(value) -> length {\n\n length := mload(value)\n\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function copy_memory_to_memory(src, dst, length) {\n let i := 0\n for { } lt(i, length) { i := add(i, 32) }\n {\n mstore(add(dst, i), mload(add(src, i)))\n }\n if gt(i, length)\n {\n // clear end\n mstore(add(dst, length), 0)\n }\n }\n\n function round_up_to_mul_of_32(value) -> result {\n result := and(add(value, 31), not(31))\n }\n\n function abi_encode_t_string_memory_ptr_to_t_string_memory_ptr(value, pos) -> end {\n let length := array_length_t_string_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_string_memory_ptr(pos, length)\n copy_memory_to_memory(add(value, 0x20), pos, length)\n end := add(pos, round_up_to_mul_of_32(length))\n }\n\n function cleanup_t_uint256(value) -> cleaned {\n cleaned := value\n }\n\n function abi_encode_t_uint256_to_t_uint256(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function cleanup_t_bool(value) -> cleaned {\n cleaned := iszero(iszero(value))\n }\n\n function abi_encode_t_bool_to_t_bool(value, pos) {\n mstore(pos, cleanup_t_bool(value))\n }\n\n // struct OrgCreation.OrgDetails -> struct OrgCreation.OrgDetails\n function abi_encode_t_struct$_OrgDetails_$55_memory_ptr_to_t_struct$_OrgDetails_$55_memory_ptr(value, pos) -> end {\n let tail := add(pos, 0x0120)\n\n {\n // org_address\n\n let memberValue0 := mload(add(value, 0x00))\n abi_encode_t_address_to_t_address(memberValue0, add(pos, 0x00))\n }\n\n {\n // name\n\n let memberValue0 := mload(add(value, 0x20))\n\n mstore(add(pos, 0x20), sub(tail, pos))\n tail := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr(memberValue0, tail)\n\n }\n\n {\n // doc_cid\n\n let memberValue0 := mload(add(value, 0x40))\n\n mstore(add(pos, 0x40), sub(tail, pos))\n tail := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr(memberValue0, tail)\n\n }\n\n {\n // upvotes\n\n let memberValue0 := mload(add(value, 0x60))\n abi_encode_t_uint256_to_t_uint256(memberValue0, add(pos, 0x60))\n }\n\n {\n // downvotes\n\n let memberValue0 := mload(add(value, 0x80))\n abi_encode_t_uint256_to_t_uint256(memberValue0, add(pos, 0x80))\n }\n\n {\n // views\n\n let memberValue0 := mload(add(value, 0xa0))\n abi_encode_t_uint256_to_t_uint256(memberValue0, add(pos, 0xa0))\n }\n\n {\n // verification_status\n\n let memberValue0 := mload(add(value, 0xc0))\n abi_encode_t_bool_to_t_bool(memberValue0, add(pos, 0xc0))\n }\n\n {\n // desc\n\n let memberValue0 := mload(add(value, 0xe0))\n\n mstore(add(pos, 0xe0), sub(tail, pos))\n tail := abi_encode_t_string_memory_ptr_to_t_string_memory_ptr(memberValue0, tail)\n\n }\n\n {\n // application_time\n\n let memberValue0 := mload(add(value, 0x0100))\n abi_encode_t_uint256_to_t_uint256(memberValue0, add(pos, 0x0100))\n }\n\n end := tail\n }\n\n function abi_encodeUpdatedPos_t_struct$_OrgDetails_$55_memory_ptr_to_t_struct$_OrgDetails_$55_memory_ptr(value0, pos) -> updatedPos {\n updatedPos := abi_encode_t_struct$_OrgDetails_$55_memory_ptr_to_t_struct$_OrgDetails_$55_memory_ptr(value0, pos)\n }\n\n function array_nextElement_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr(ptr) -> next {\n next := add(ptr, 0x20)\n }\n\n // struct OrgCreation.OrgDetails[] -> struct OrgCreation.OrgDetails[]\n function abi_encode_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr_to_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr_fromStack(value, pos) -> end {\n let length := array_length_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr(value)\n pos := array_storeLengthForEncoding_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr_fromStack(pos, length)\n let headStart := pos\n let tail := add(pos, mul(length, 0x20))\n let baseRef := array_dataslot_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr(value)\n let srcPtr := baseRef\n for { let i := 0 } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, sub(tail, headStart))\n let elementValue0 := mload(srcPtr)\n tail := abi_encodeUpdatedPos_t_struct$_OrgDetails_$55_memory_ptr_to_t_struct$_OrgDetails_$55_memory_ptr(elementValue0, tail)\n srcPtr := array_nextElement_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr(srcPtr)\n pos := add(pos, 0x20)\n }\n pos := tail\n end := pos\n }\n\n function abi_encode_tuple_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr_to_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr_fromStack(value0, tail)\n\n }\n\n function allocate_unbounded() -> memPtr {\n memPtr := mload(64)\n }\n\n function revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() {\n revert(0, 0)\n }\n\n function revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() {\n revert(0, 0)\n }\n\n function validator_revert_t_address(value) {\n if iszero(eq(value, cleanup_t_address(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_address(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_address(value)\n }\n\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0 {\n if slt(sub(dataEnd, headStart), 32) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_bool_to_t_bool_fromStack(value, pos) {\n mstore(pos, cleanup_t_bool(value))\n }\n\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_bool_to_t_bool_fromStack(value0, add(headStart, 0))\n\n }\n\n function revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() {\n revert(0, 0)\n }\n\n function revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() {\n revert(0, 0)\n }\n\n function panic_error_0x41() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n\n function finalize_allocation(memPtr, size) {\n let newFreePtr := add(memPtr, round_up_to_mul_of_32(size))\n // protect against overflow\n if or(gt(newFreePtr, 0xffffffffffffffff), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n }\n\n function allocate_memory(size) -> memPtr {\n memPtr := allocate_unbounded()\n finalize_allocation(memPtr, size)\n }\n\n function array_allocation_size_t_string_memory_ptr(length) -> size {\n // Make sure we can allocate memory without overflow\n if gt(length, 0xffffffffffffffff) { panic_error_0x41() }\n\n size := round_up_to_mul_of_32(length)\n\n // add length slot\n size := add(size, 0x20)\n\n }\n\n function copy_calldata_to_memory(src, dst, length) {\n calldatacopy(dst, src, length)\n // clear end\n mstore(add(dst, length), 0)\n }\n\n function abi_decode_available_length_t_string_memory_ptr(src, length, end) -> array {\n array := allocate_memory(array_allocation_size_t_string_memory_ptr(length))\n mstore(array, length)\n let dst := add(array, 0x20)\n if gt(add(src, length), end) { revert_error_987264b3b1d58a9c7f8255e93e81c77d86d6299019c33110a076957a3e06e2ae() }\n copy_calldata_to_memory(src, dst, length)\n }\n\n // string\n function abi_decode_t_string_memory_ptr(offset, end) -> array {\n if iszero(slt(add(offset, 0x1f), end)) { revert_error_1b9f4a0a5773e33b91aa01db23bf8c55fce1411167c872835e7fa00a4f17d46d() }\n let length := calldataload(offset)\n array := abi_decode_available_length_t_string_memory_ptr(add(offset, 0x20), length, end)\n }\n\n function validator_revert_t_uint256(value) {\n if iszero(eq(value, cleanup_t_uint256(value))) { revert(0, 0) }\n }\n\n function abi_decode_t_uint256(offset, end) -> value {\n value := calldataload(offset)\n validator_revert_t_uint256(value)\n }\n\n function abi_decode_tuple_t_addresst_string_memory_ptrt_string_memory_ptrt_string_memory_ptrt_uint256(headStart, dataEnd) -> value0, value1, value2, value3, value4 {\n if slt(sub(dataEnd, headStart), 160) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 32))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value1 := abi_decode_t_string_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 64))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value2 := abi_decode_t_string_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := calldataload(add(headStart, 96))\n if gt(offset, 0xffffffffffffffff) { revert_error_c1322bf8034eace5e0b5c7295db60986aa89aae5e0ea0873e4689e076861a5db() }\n\n value3 := abi_decode_t_string_memory_ptr(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 128\n\n value4 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_decode_tuple_t_addresst_uint256(headStart, dataEnd) -> value0, value1 {\n if slt(sub(dataEnd, headStart), 64) { revert_error_dbdddcbe895c83990c08b3492a0e83918d802a52331272ac6fdb6a7c4aea3b1b() }\n\n {\n\n let offset := 0\n\n value0 := abi_decode_t_address(add(headStart, offset), dataEnd)\n }\n\n {\n\n let offset := 32\n\n value1 := abi_decode_t_uint256(add(headStart, offset), dataEnd)\n }\n\n }\n\n function abi_encode_t_uint256_to_t_uint256_fromStack(value, pos) {\n mstore(pos, cleanup_t_uint256(value))\n }\n\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_uint256_to_t_uint256_fromStack(value0, add(headStart, 0))\n\n }\n\n function abi_encode_t_address_to_t_address_fromStack(value, pos) {\n mstore(pos, cleanup_t_address(value))\n }\n\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart , value0) -> tail {\n tail := add(headStart, 32)\n\n abi_encode_t_address_to_t_address_fromStack(value0, add(headStart, 0))\n\n }\n\n function panic_error_0x11() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n\n function checked_sub_t_uint256(x, y) -> diff {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n if lt(x, y) { panic_error_0x11() }\n\n diff := sub(x, y)\n }\n\n function panic_error_0x32() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n\n function panic_error_0x22() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n\n function extract_byte_array_length(data) -> length {\n length := div(data, 2)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) {\n length := and(length, 0x7f)\n }\n\n if eq(outOfPlaceEncoding, lt(length, 32)) {\n panic_error_0x22()\n }\n }\n\n function checked_add_t_uint256(x, y) -> sum {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n // overflow, if x > (maxValue - y)\n if gt(x, sub(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff, y)) { panic_error_0x11() }\n\n sum := add(x, y)\n }\n\n function increment_t_uint256(value) -> ret {\n value := cleanup_t_uint256(value)\n if eq(value, 0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff) { panic_error_0x11() }\n ret := add(value, 1)\n }\n\n function array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, length) -> updated_pos {\n mstore(pos, length)\n updated_pos := add(pos, 0x20)\n }\n\n function store_literal_in_memory_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f(memPtr) {\n\n mstore(add(memPtr, 0), \"Organization already registered!\")\n\n }\n\n function abi_encode_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 32)\n store_literal_in_memory_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function checked_mul_t_uint256(x, y) -> product {\n x := cleanup_t_uint256(x)\n y := cleanup_t_uint256(y)\n\n // overflow, if x != 0 and y > (maxValue / x)\n if and(iszero(iszero(x)), gt(y, div(0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff, x))) { panic_error_0x11() }\n\n product := mul(x, y)\n }\n\n function panic_error_0x31() {\n mstore(0, 35408467139433450592217433187231851964531694900788300625387963629091585785856)\n mstore(4, 0x31)\n revert(0, 0x24)\n }\n\n function store_literal_in_memory_ddeb0b25a32bdbd6903219d580ec164d518abe435832e90b114c90315c52a2cf(memPtr) {\n\n mstore(add(memPtr, 0), \"Organization address does not ex\")\n\n mstore(add(memPtr, 32), \"ist!\")\n\n }\n\n function abi_encode_t_stringliteral_ddeb0b25a32bdbd6903219d580ec164d518abe435832e90b114c90315c52a2cf_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 36)\n store_literal_in_memory_ddeb0b25a32bdbd6903219d580ec164d518abe435832e90b114c90315c52a2cf(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_ddeb0b25a32bdbd6903219d580ec164d518abe435832e90b114c90315c52a2cf__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_ddeb0b25a32bdbd6903219d580ec164d518abe435832e90b114c90315c52a2cf_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_53664b562d96b321f827bfb375320c905b5c20116fabd3735d276655e7a84701(memPtr) {\n\n mstore(add(memPtr, 0), \"Organization already verified!\")\n\n }\n\n function abi_encode_t_stringliteral_53664b562d96b321f827bfb375320c905b5c20116fabd3735d276655e7a84701_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 30)\n store_literal_in_memory_53664b562d96b321f827bfb375320c905b5c20116fabd3735d276655e7a84701(pos)\n end := add(pos, 32)\n }\n\n function abi_encode_tuple_t_stringliteral_53664b562d96b321f827bfb375320c905b5c20116fabd3735d276655e7a84701__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_53664b562d96b321f827bfb375320c905b5c20116fabd3735d276655e7a84701_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_a8c8730adc0a679cd4a5e2b2364d02c0d62620d7a5cf6d44281730f36a7832c1(memPtr) {\n\n mstore(add(memPtr, 0), \"Voter organization is not verifi\")\n\n mstore(add(memPtr, 32), \"ed, not permitted to vote!\")\n\n }\n\n function abi_encode_t_stringliteral_a8c8730adc0a679cd4a5e2b2364d02c0d62620d7a5cf6d44281730f36a7832c1_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 58)\n store_literal_in_memory_a8c8730adc0a679cd4a5e2b2364d02c0d62620d7a5cf6d44281730f36a7832c1(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_a8c8730adc0a679cd4a5e2b2364d02c0d62620d7a5cf6d44281730f36a7832c1__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_a8c8730adc0a679cd4a5e2b2364d02c0d62620d7a5cf6d44281730f36a7832c1_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n function store_literal_in_memory_414be5daad95c532f9b7381e52ffca6776b0449e47c566018321a361a4b95d16(memPtr) {\n\n mstore(add(memPtr, 0), \"Voter organization cannot vote m\")\n\n mstore(add(memPtr, 32), \"ore than once!\")\n\n }\n\n function abi_encode_t_stringliteral_414be5daad95c532f9b7381e52ffca6776b0449e47c566018321a361a4b95d16_to_t_string_memory_ptr_fromStack(pos) -> end {\n pos := array_storeLengthForEncoding_t_string_memory_ptr_fromStack(pos, 46)\n store_literal_in_memory_414be5daad95c532f9b7381e52ffca6776b0449e47c566018321a361a4b95d16(pos)\n end := add(pos, 64)\n }\n\n function abi_encode_tuple_t_stringliteral_414be5daad95c532f9b7381e52ffca6776b0449e47c566018321a361a4b95d16__to_t_string_memory_ptr__fromStack_reversed(headStart ) -> tail {\n tail := add(headStart, 32)\n\n mstore(add(headStart, 0), sub(tail, headStart))\n tail := abi_encode_t_stringliteral_414be5daad95c532f9b7381e52ffca6776b0449e47c566018321a361a4b95d16_to_t_string_memory_ptr_fromStack( tail)\n\n }\n\n}\n", + "id": 1, + "language": "Yul", + "name": "#utility.yul" + } + ], + "immutableReferences": {}, + "linkReferences": {}, + "object": "608060405234801561001057600080fd5b50600436106101165760003560e01c80638fc0ed2f116100a2578063e257911411610071578063e2579114146102e3578063e3323aba14610313578063e75176b514610331578063f15c01dd14610361578063f851a4401461039157610116565b80638fc0ed2f1461026f578063a1b0ffe014610279578063b7627e4114610283578063c9dfca10146102b357610116565b80634cf5d552116100e95780634cf5d552146101b55780635cf9303f146101d35780635d0161f1146102035780636fc3911c1461022157806380007e831461025157610116565b80632d80468d1461011b5780633e85747e14610139578063440370fe146101695780634648df2a14610185575b600080fd5b6101236103af565b60405161013091906121da565b60405180910390f35b610153600480360381019061014e919061223c565b61097f565b6040516101609190612278565b60405180910390f35b610183600480360381019061017e91906123f4565b610a1f565b005b61019f600480360381019061019a91906124c3565b610d3d565b6040516101ac9190612278565b60405180910390f35b6101bd610d9c565b6040516101ca9190612512565b60405180910390f35b6101ed60048036038101906101e8919061223c565b610da2565b6040516101fa9190612512565b60405180910390f35b61020b610ded565b60405161021891906121da565b60405180910390f35b61023b6004803603810190610236919061223c565b6111cc565b6040516102489190612278565b60405180910390f35b610259611243565b6040516102669190612278565b60405180910390f35b610277611299565b005b6102816113bf565b005b61029d6004803603810190610298919061223c565b61141b565b6040516102aa9190612512565b60405180910390f35b6102cd60048036038101906102c8919061223c565b611466565b6040516102da9190612278565b60405180910390f35b6102fd60048036038101906102f891906124c3565b611506565b60405161030a9190612278565b60405180910390f35b61031b611915565b6040516103289190612278565b60405180910390f35b61034b6004803603810190610346919061223c565b61196b565b6040516103589190612512565b60405180910390f35b61037b600480360381019061037691906124c3565b61199d565b6040516103889190612278565b60405180910390f35b610399611da9565b6040516103a6919061253c565b60405180910390f35b6060600060048054905090506000806008546004805490506103d19190612586565b67ffffffffffffffff8111156103ea576103e961229d565b5b60405190808252806020026020018201604052801561042357816020015b610410611dcf565b8152602001906001900390816104085790505b50905060005b8381101561097557600060048281548110610447576104466125ba565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506000808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160009054906101000a900460ff166109615760006040518061012001604052806000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101805461059e90612618565b80601f01602080910402602001604051908101604052809291908181526020018280546105ca90612618565b80156106175780601f106105ec57610100808354040283529160200191610617565b820191906000526020600020905b8154815290600101906020018083116105fa57829003601f168201915b505050505081526020016000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600201805461066d90612618565b80601f016020809104026020016040519081016040528092919081815260200182805461069990612618565b80156106e65780601f106106bb576101008083540402835291602001916106e6565b820191906000526020600020905b8154815290600101906020018083116106c957829003601f168201915b505050505081526020016000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206003015481526020016000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206004015481526020016000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206005015481526020016000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160009054906101000a900460ff16151581526020016000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600b01805461086790612618565b80601f016020809104026020016040519081016040528092919081815260200182805461089390612618565b80156108e05780601f106108b5576101008083540402835291602001916108e0565b820191906000526020600020905b8154815290600101906020018083116108c357829003601f168201915b505050505081526020016000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600d0154815250905080848681518110610945576109446125ba565b5b602002602001018190525060018561095d919061264a565b9450505b50808061096d906126a0565b915050610429565b5080935050505090565b60008033905060016000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060090160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1660ff1614915050919050565b60008060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600d015414610aa3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a9a90612746565b60405180910390fd5b846000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550836000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001019080519060200190610b78929190611e33565b50826000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002019080519060200190610bce929190611e33565b50816000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600b019080519060200190610c24929190611e33565b506202a30081610c34919061264a565b6000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600d01819055506001610c848661196b565b610c8e919061264a565b6000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600501819055506004859080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505050505050565b6000816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600d01541015610d915760019050610d96565b600090505b92915050565b60095481565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600301549050919050565b60606000600480549050905060008060085467ffffffffffffffff811115610e1857610e1761229d565b5b604051908082528060200260200182016040528015610e5157816020015b610e3e611dcf565b815260200190600190039081610e365790505b50905060005b838110156111c257600060048281548110610e7557610e746125ba565b5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690506000808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160009054906101000a900460ff16156111ae5760008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020905060006040518061012001604052808360000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001836001018054610f9590612618565b80601f0160208091040260200160405190810160405280929190818152602001828054610fc190612618565b801561100e5780601f10610fe35761010080835404028352916020019161100e565b820191906000526020600020905b815481529060010190602001808311610ff157829003601f168201915b5050505050815260200183600201805461102790612618565b80601f016020809104026020016040519081016040528092919081815260200182805461105390612618565b80156110a05780601f10611075576101008083540402835291602001916110a0565b820191906000526020600020905b81548152906001019060200180831161108357829003601f168201915b505050505081526020018360030154815260200183600401548152602001836005015481526020018360060160009054906101000a900460ff161515815260200183600b0180546110f090612618565b80601f016020809104026020016040519081016040528092919081815260200182805461111c90612618565b80156111695780601f1061113e57610100808354040283529160200191611169565b820191906000526020600020905b81548152906001019060200180831161114c57829003601f168201915b5050505050815260200183600d0154815250905080858781518110611191576111906125ba565b5b60200260200101819052506001866111a9919061264a565b955050505b5080806111ba906126a0565b915050610e57565b5080935050505090565b600060336009546111dd9190612766565b60646000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206003015461122b9190612766565b10611239576001905061123e565b600090505b919050565b60008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160009054906101000a900460ff16905090565b6000600c80549050905060005b818110156113bb57600c8054806112c0576112bf6127c0565b5b60019003818190600052602060002090600f0201600080820160006101000a81549073ffffffffffffffffffffffffffffffffffffffff021916905560018201600061130c9190611eb9565b60028201600061131c9190611eb9565b6003820160009055600482016000905560058201600090556006820160006101000a81549060ff02191690556007820160006113589190611ef9565b6008820160006113689190611ef9565b600a820160009055600b820160006113809190611eb9565b600c820160009055600d820160009055600e820160006101000a81549060ff02191690555050905580806113b3906126a0565b9150506112a6565b5050565b60016000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600e0160006101000a81548160ff021916908315150217905550565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600401549050919050565b60008033905060026000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060090160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1660ff1614915050919050565b60008260008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600d0154141561158e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161158590612861565b60405180910390fd5b6000808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160009054906101000a900460ff161561161d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611614906128cd565b60405180910390fd5b60008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600d0154141580156116ba57506000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160009054906101000a900460ff165b6116f9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116f09061295f565b60405180910390fd5b61170281611466565b15801561171557506117138161097f565b155b611754576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161174b906129f1565b60405180910390fd5b60016000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160008282546117a6919061264a565b925050819055506000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600701339080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060026000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060090160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908360ff1602179055506118f18484610d3d565b15611909576118ff846111cc565b506001915061190e565b600091505b5092915050565b60008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600e0160009054906101000a900460ff16905090565b60006119768261141b565b61197f83610da2565b60095461198c9190612586565b6119969190612586565b9050919050565b60008260008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600d01541415611a25576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a1c90612861565b60405180910390fd5b6000808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160009054906101000a900460ff1615611ab4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611aab906128cd565b60405180910390fd5b60008060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600d015414158015611b5157506000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060060160009054906101000a900460ff165b611b90576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b879061295f565b60405180910390fd5b611b9981611466565b158015611bac5750611baa8161097f565b155b611beb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611be2906129f1565b60405180910390fd5b60016000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206004016000828254611c3d919061264a565b925050819055506000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600801339080600181540180825580915050600190039060005260206000200160009091909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060016000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060090160003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908360ff160217905550611d888484610d3d565b15611d9d57611d96846111cc565b9150611da2565b600091505b5092915050565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b604051806101200160405280600073ffffffffffffffffffffffffffffffffffffffff168152602001606081526020016060815260200160008152602001600081526020016000815260200160001515815260200160608152602001600081525090565b828054611e3f90612618565b90600052602060002090601f016020900481019282611e615760008555611ea8565b82601f10611e7a57805160ff1916838001178555611ea8565b82800160010185558215611ea8579182015b82811115611ea7578251825591602001919060010190611e8c565b5b509050611eb59190611f1a565b5090565b508054611ec590612618565b6000825580601f10611ed75750611ef6565b601f016020900490600052602060002090810190611ef59190611f1a565b5b50565b5080546000825590600052602060002090810190611f179190611f1a565b50565b5b80821115611f33576000816000905550600101611f1b565b5090565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000611f8e82611f63565b9050919050565b611f9e81611f83565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b83811015611fde578082015181840152602081019050611fc3565b83811115611fed576000848401525b50505050565b6000601f19601f8301169050919050565b600061200f82611fa4565b6120198185611faf565b9350612029818560208601611fc0565b61203281611ff3565b840191505092915050565b6000819050919050565b6120508161203d565b82525050565b60008115159050919050565b61206b81612056565b82525050565b60006101208301600083015161208a6000860182611f95565b50602083015184820360208601526120a28282612004565b915050604083015184820360408601526120bc8282612004565b91505060608301516120d16060860182612047565b5060808301516120e46080860182612047565b5060a08301516120f760a0860182612047565b5060c083015161210a60c0860182612062565b5060e083015184820360e08601526121228282612004565b915050610100830151612139610100860182612047565b508091505092915050565b60006121508383612071565b905092915050565b6000602082019050919050565b600061217082611f37565b61217a8185611f42565b93508360208202850161218c85611f53565b8060005b858110156121c857848403895281516121a98582612144565b94506121b483612158565b925060208a01995050600181019050612190565b50829750879550505050505092915050565b600060208201905081810360008301526121f48184612165565b905092915050565b6000604051905090565b600080fd5b600080fd5b61221981611f83565b811461222457600080fd5b50565b60008135905061223681612210565b92915050565b60006020828403121561225257612251612206565b5b600061226084828501612227565b91505092915050565b61227281612056565b82525050565b600060208201905061228d6000830184612269565b92915050565b600080fd5b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b6122d582611ff3565b810181811067ffffffffffffffff821117156122f4576122f361229d565b5b80604052505050565b60006123076121fc565b905061231382826122cc565b919050565b600067ffffffffffffffff8211156123335761233261229d565b5b61233c82611ff3565b9050602081019050919050565b82818337600083830152505050565b600061236b61236684612318565b6122fd565b90508281526020810184848401111561238757612386612298565b5b612392848285612349565b509392505050565b600082601f8301126123af576123ae612293565b5b81356123bf848260208601612358565b91505092915050565b6123d18161203d565b81146123dc57600080fd5b50565b6000813590506123ee816123c8565b92915050565b600080600080600060a086880312156124105761240f612206565b5b600061241e88828901612227565b955050602086013567ffffffffffffffff81111561243f5761243e61220b565b5b61244b8882890161239a565b945050604086013567ffffffffffffffff81111561246c5761246b61220b565b5b6124788882890161239a565b935050606086013567ffffffffffffffff8111156124995761249861220b565b5b6124a58882890161239a565b92505060806124b6888289016123df565b9150509295509295909350565b600080604083850312156124da576124d9612206565b5b60006124e885828601612227565b92505060206124f9858286016123df565b9150509250929050565b61250c8161203d565b82525050565b60006020820190506125276000830184612503565b92915050565b61253681611f83565b82525050565b6000602082019050612551600083018461252d565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006125918261203d565b915061259c8361203d565b9250828210156125af576125ae612557565b5b828203905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061263057607f821691505b60208210811415612644576126436125e9565b5b50919050565b60006126558261203d565b91506126608361203d565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561269557612694612557565b5b828201905092915050565b60006126ab8261203d565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156126de576126dd612557565b5b600182019050919050565b600082825260208201905092915050565b7f4f7267616e697a6174696f6e20616c7265616479207265676973746572656421600082015250565b60006127306020836126e9565b915061273b826126fa565b602082019050919050565b6000602082019050818103600083015261275f81612723565b9050919050565b60006127718261203d565b915061277c8361203d565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156127b5576127b4612557565b5b828202905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fd5b7f4f7267616e697a6174696f6e206164647265737320646f6573206e6f7420657860008201527f6973742100000000000000000000000000000000000000000000000000000000602082015250565b600061284b6024836126e9565b9150612856826127ef565b604082019050919050565b6000602082019050818103600083015261287a8161283e565b9050919050565b7f4f7267616e697a6174696f6e20616c7265616479207665726966696564210000600082015250565b60006128b7601e836126e9565b91506128c282612881565b602082019050919050565b600060208201905081810360008301526128e6816128aa565b9050919050565b7f566f746572206f7267616e697a6174696f6e206973206e6f742076657269666960008201527f65642c206e6f74207065726d697474656420746f20766f746521000000000000602082015250565b6000612949603a836126e9565b9150612954826128ed565b604082019050919050565b600060208201905081810360008301526129788161293c565b9050919050565b7f566f746572206f7267616e697a6174696f6e2063616e6e6f7420766f7465206d60008201527f6f7265207468616e206f6e636521000000000000000000000000000000000000602082015250565b60006129db602e836126e9565b91506129e68261297f565b604082019050919050565b60006020820190508181036000830152612a0a816129ce565b905091905056fea2646970667358221220d393e9d29953bdafbb170b58dd0d362695d8ec6c4d8bf78334ba4bed5c42105e64736f6c63430008090033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x116 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x8FC0ED2F GT PUSH2 0xA2 JUMPI DUP1 PUSH4 0xE2579114 GT PUSH2 0x71 JUMPI DUP1 PUSH4 0xE2579114 EQ PUSH2 0x2E3 JUMPI DUP1 PUSH4 0xE3323ABA EQ PUSH2 0x313 JUMPI DUP1 PUSH4 0xE75176B5 EQ PUSH2 0x331 JUMPI DUP1 PUSH4 0xF15C01DD EQ PUSH2 0x361 JUMPI DUP1 PUSH4 0xF851A440 EQ PUSH2 0x391 JUMPI PUSH2 0x116 JUMP JUMPDEST DUP1 PUSH4 0x8FC0ED2F EQ PUSH2 0x26F JUMPI DUP1 PUSH4 0xA1B0FFE0 EQ PUSH2 0x279 JUMPI DUP1 PUSH4 0xB7627E41 EQ PUSH2 0x283 JUMPI DUP1 PUSH4 0xC9DFCA10 EQ PUSH2 0x2B3 JUMPI PUSH2 0x116 JUMP JUMPDEST DUP1 PUSH4 0x4CF5D552 GT PUSH2 0xE9 JUMPI DUP1 PUSH4 0x4CF5D552 EQ PUSH2 0x1B5 JUMPI DUP1 PUSH4 0x5CF9303F EQ PUSH2 0x1D3 JUMPI DUP1 PUSH4 0x5D0161F1 EQ PUSH2 0x203 JUMPI DUP1 PUSH4 0x6FC3911C EQ PUSH2 0x221 JUMPI DUP1 PUSH4 0x80007E83 EQ PUSH2 0x251 JUMPI PUSH2 0x116 JUMP JUMPDEST DUP1 PUSH4 0x2D80468D EQ PUSH2 0x11B JUMPI DUP1 PUSH4 0x3E85747E EQ PUSH2 0x139 JUMPI DUP1 PUSH4 0x440370FE EQ PUSH2 0x169 JUMPI DUP1 PUSH4 0x4648DF2A EQ PUSH2 0x185 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x123 PUSH2 0x3AF JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x130 SWAP2 SWAP1 PUSH2 0x21DA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x153 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x14E SWAP2 SWAP1 PUSH2 0x223C JUMP JUMPDEST PUSH2 0x97F JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x160 SWAP2 SWAP1 PUSH2 0x2278 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x183 PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x17E SWAP2 SWAP1 PUSH2 0x23F4 JUMP JUMPDEST PUSH2 0xA1F JUMP JUMPDEST STOP JUMPDEST PUSH2 0x19F PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x19A SWAP2 SWAP1 PUSH2 0x24C3 JUMP JUMPDEST PUSH2 0xD3D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1AC SWAP2 SWAP1 PUSH2 0x2278 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1BD PUSH2 0xD9C JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1CA SWAP2 SWAP1 PUSH2 0x2512 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x1ED PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x1E8 SWAP2 SWAP1 PUSH2 0x223C JUMP JUMPDEST PUSH2 0xDA2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x1FA SWAP2 SWAP1 PUSH2 0x2512 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x20B PUSH2 0xDED JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x218 SWAP2 SWAP1 PUSH2 0x21DA JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x23B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x236 SWAP2 SWAP1 PUSH2 0x223C JUMP JUMPDEST PUSH2 0x11CC JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x248 SWAP2 SWAP1 PUSH2 0x2278 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x259 PUSH2 0x1243 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x266 SWAP2 SWAP1 PUSH2 0x2278 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x277 PUSH2 0x1299 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x281 PUSH2 0x13BF JUMP JUMPDEST STOP JUMPDEST PUSH2 0x29D PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x298 SWAP2 SWAP1 PUSH2 0x223C JUMP JUMPDEST PUSH2 0x141B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2AA SWAP2 SWAP1 PUSH2 0x2512 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2CD PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2C8 SWAP2 SWAP1 PUSH2 0x223C JUMP JUMPDEST PUSH2 0x1466 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x2DA SWAP2 SWAP1 PUSH2 0x2278 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x2FD PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x2F8 SWAP2 SWAP1 PUSH2 0x24C3 JUMP JUMPDEST PUSH2 0x1506 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x30A SWAP2 SWAP1 PUSH2 0x2278 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x31B PUSH2 0x1915 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x328 SWAP2 SWAP1 PUSH2 0x2278 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x34B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x346 SWAP2 SWAP1 PUSH2 0x223C JUMP JUMPDEST PUSH2 0x196B JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x358 SWAP2 SWAP1 PUSH2 0x2512 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x37B PUSH1 0x4 DUP1 CALLDATASIZE SUB DUP2 ADD SWAP1 PUSH2 0x376 SWAP2 SWAP1 PUSH2 0x24C3 JUMP JUMPDEST PUSH2 0x199D JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x388 SWAP2 SWAP1 PUSH2 0x2278 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x399 PUSH2 0x1DA9 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x3A6 SWAP2 SWAP1 PUSH2 0x253C JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH1 0x4 DUP1 SLOAD SWAP1 POP SWAP1 POP PUSH1 0x0 DUP1 PUSH1 0x8 SLOAD PUSH1 0x4 DUP1 SLOAD SWAP1 POP PUSH2 0x3D1 SWAP2 SWAP1 PUSH2 0x2586 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x3EA JUMPI PUSH2 0x3E9 PUSH2 0x229D JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x423 JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH2 0x410 PUSH2 0x1DCF JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x408 JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x975 JUMPI PUSH1 0x0 PUSH1 0x4 DUP3 DUP2 SLOAD DUP2 LT PUSH2 0x447 JUMPI PUSH2 0x446 PUSH2 0x25BA JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP PUSH1 0x0 DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH2 0x961 JUMPI PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH2 0x120 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD DUP1 SLOAD PUSH2 0x59E SWAP1 PUSH2 0x2618 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x5CA SWAP1 PUSH2 0x2618 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x617 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x5EC JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x617 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x5FA JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD DUP1 SLOAD PUSH2 0x66D SWAP1 PUSH2 0x2618 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x699 SWAP1 PUSH2 0x2618 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x6E6 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x6BB JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x6E6 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x6C9 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xB ADD DUP1 SLOAD PUSH2 0x867 SWAP1 PUSH2 0x2618 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x893 SWAP1 PUSH2 0x2618 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x8E0 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x8B5 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x8E0 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x8C3 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xD ADD SLOAD DUP2 MSTORE POP SWAP1 POP DUP1 DUP5 DUP7 DUP2 MLOAD DUP2 LT PUSH2 0x945 JUMPI PUSH2 0x944 PUSH2 0x25BA JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP PUSH1 0x1 DUP6 PUSH2 0x95D SWAP2 SWAP1 PUSH2 0x264A JUMP JUMPDEST SWAP5 POP POP JUMPDEST POP DUP1 DUP1 PUSH2 0x96D SWAP1 PUSH2 0x26A0 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x429 JUMP JUMPDEST POP DUP1 SWAP4 POP POP POP POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 CALLER SWAP1 POP PUSH1 0x1 PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x9 ADD PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH1 0xFF AND EQ SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xD ADD SLOAD EQ PUSH2 0xAA3 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0xA9A SWAP1 PUSH2 0x2746 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST DUP5 PUSH1 0x0 DUP1 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP DUP4 PUSH1 0x0 DUP1 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x1 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0xB78 SWAP3 SWAP2 SWAP1 PUSH2 0x1E33 JUMP JUMPDEST POP DUP3 PUSH1 0x0 DUP1 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0xBCE SWAP3 SWAP2 SWAP1 PUSH2 0x1E33 JUMP JUMPDEST POP DUP2 PUSH1 0x0 DUP1 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xB ADD SWAP1 DUP1 MLOAD SWAP1 PUSH1 0x20 ADD SWAP1 PUSH2 0xC24 SWAP3 SWAP2 SWAP1 PUSH2 0x1E33 JUMP JUMPDEST POP PUSH3 0x2A300 DUP2 PUSH2 0xC34 SWAP2 SWAP1 PUSH2 0x264A JUMP JUMPDEST PUSH1 0x0 DUP1 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xD ADD DUP2 SWAP1 SSTORE POP PUSH1 0x1 PUSH2 0xC84 DUP7 PUSH2 0x196B JUMP JUMPDEST PUSH2 0xC8E SWAP2 SWAP1 PUSH2 0x264A JUMP JUMPDEST PUSH1 0x0 DUP1 DUP8 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x5 ADD DUP2 SWAP1 SSTORE POP PUSH1 0x4 DUP6 SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xD ADD SLOAD LT ISZERO PUSH2 0xD91 JUMPI PUSH1 0x1 SWAP1 POP PUSH2 0xD96 JUMP JUMPDEST PUSH1 0x0 SWAP1 POP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x9 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD SLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 PUSH1 0x4 DUP1 SLOAD SWAP1 POP SWAP1 POP PUSH1 0x0 DUP1 PUSH1 0x8 SLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0xE18 JUMPI PUSH2 0xE17 PUSH2 0x229D JUMP JUMPDEST JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0xE51 JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH2 0xE3E PUSH2 0x1DCF JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0xE36 JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x11C2 JUMPI PUSH1 0x0 PUSH1 0x4 DUP3 DUP2 SLOAD DUP2 LT PUSH2 0xE75 JUMPI PUSH2 0xE74 PUSH2 0x25BA JUMP JUMPDEST JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND SWAP1 POP PUSH1 0x0 DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0x11AE JUMPI PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 SWAP1 POP PUSH1 0x0 PUSH1 0x40 MLOAD DUP1 PUSH2 0x120 ADD PUSH1 0x40 MSTORE DUP1 DUP4 PUSH1 0x0 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD DUP4 PUSH1 0x1 ADD DUP1 SLOAD PUSH2 0xF95 SWAP1 PUSH2 0x2618 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0xFC1 SWAP1 PUSH2 0x2618 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x100E JUMPI DUP1 PUSH1 0x1F LT PUSH2 0xFE3 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x100E JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0xFF1 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD DUP4 PUSH1 0x2 ADD DUP1 SLOAD PUSH2 0x1027 SWAP1 PUSH2 0x2618 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x1053 SWAP1 PUSH2 0x2618 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x10A0 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x1075 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x10A0 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x1083 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD DUP4 PUSH1 0x3 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD DUP4 PUSH1 0x4 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD DUP4 PUSH1 0x5 ADD SLOAD DUP2 MSTORE PUSH1 0x20 ADD DUP4 PUSH1 0x6 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD DUP4 PUSH1 0xB ADD DUP1 SLOAD PUSH2 0x10F0 SWAP1 PUSH2 0x2618 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x111C SWAP1 PUSH2 0x2618 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x1169 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x113E JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x1169 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x114C JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD DUP4 PUSH1 0xD ADD SLOAD DUP2 MSTORE POP SWAP1 POP DUP1 DUP6 DUP8 DUP2 MLOAD DUP2 LT PUSH2 0x1191 JUMPI PUSH2 0x1190 PUSH2 0x25BA JUMP JUMPDEST JUMPDEST PUSH1 0x20 MUL PUSH1 0x20 ADD ADD DUP2 SWAP1 MSTORE POP PUSH1 0x1 DUP7 PUSH2 0x11A9 SWAP2 SWAP1 PUSH2 0x264A JUMP JUMPDEST SWAP6 POP POP POP JUMPDEST POP DUP1 DUP1 PUSH2 0x11BA SWAP1 PUSH2 0x26A0 JUMP JUMPDEST SWAP2 POP POP PUSH2 0xE57 JUMP JUMPDEST POP DUP1 SWAP4 POP POP POP POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x33 PUSH1 0x9 SLOAD PUSH2 0x11DD SWAP2 SWAP1 PUSH2 0x2766 JUMP JUMPDEST PUSH1 0x64 PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD SLOAD PUSH2 0x122B SWAP2 SWAP1 PUSH2 0x2766 JUMP JUMPDEST LT PUSH2 0x1239 JUMPI PUSH1 0x1 SWAP1 POP PUSH2 0x123E JUMP JUMPDEST PUSH1 0x0 SWAP1 POP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH1 0xC DUP1 SLOAD SWAP1 POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x13BB JUMPI PUSH1 0xC DUP1 SLOAD DUP1 PUSH2 0x12C0 JUMPI PUSH2 0x12BF PUSH2 0x27C0 JUMP JUMPDEST JUMPDEST PUSH1 0x1 SWAP1 SUB DUP2 DUP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0xF MUL ADD PUSH1 0x0 DUP1 DUP3 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 SSTORE PUSH1 0x1 DUP3 ADD PUSH1 0x0 PUSH2 0x130C SWAP2 SWAP1 PUSH2 0x1EB9 JUMP JUMPDEST PUSH1 0x2 DUP3 ADD PUSH1 0x0 PUSH2 0x131C SWAP2 SWAP1 PUSH2 0x1EB9 JUMP JUMPDEST PUSH1 0x3 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0x4 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0x5 DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0x6 DUP3 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH1 0xFF MUL NOT AND SWAP1 SSTORE PUSH1 0x7 DUP3 ADD PUSH1 0x0 PUSH2 0x1358 SWAP2 SWAP1 PUSH2 0x1EF9 JUMP JUMPDEST PUSH1 0x8 DUP3 ADD PUSH1 0x0 PUSH2 0x1368 SWAP2 SWAP1 PUSH2 0x1EF9 JUMP JUMPDEST PUSH1 0xA DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0xB DUP3 ADD PUSH1 0x0 PUSH2 0x1380 SWAP2 SWAP1 PUSH2 0x1EB9 JUMP JUMPDEST PUSH1 0xC DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0xD DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0xE DUP3 ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD SWAP1 PUSH1 0xFF MUL NOT AND SWAP1 SSTORE POP POP SWAP1 SSTORE DUP1 DUP1 PUSH2 0x13B3 SWAP1 PUSH2 0x26A0 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x12A6 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x0 DUP1 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xE ADD PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 ISZERO ISZERO MUL OR SWAP1 SSTORE POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD SLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP1 CALLER SWAP1 POP PUSH1 0x2 PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x9 ADD PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND PUSH1 0xFF AND EQ SWAP2 POP POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xD ADD SLOAD EQ ISZERO PUSH2 0x158E JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1585 SWAP1 PUSH2 0x2861 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0x161D JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1614 SWAP1 PUSH2 0x28CD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xD ADD SLOAD EQ ISZERO DUP1 ISZERO PUSH2 0x16BA JUMPI POP PUSH1 0x0 DUP1 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND JUMPDEST PUSH2 0x16F9 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x16F0 SWAP1 PUSH2 0x295F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x1702 DUP2 PUSH2 0x1466 JUMP JUMPDEST ISZERO DUP1 ISZERO PUSH2 0x1715 JUMPI POP PUSH2 0x1713 DUP2 PUSH2 0x97F JUMP JUMPDEST ISZERO JUMPDEST PUSH2 0x1754 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x174B SWAP1 PUSH2 0x29F1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x0 DUP1 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x3 ADD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x17A6 SWAP2 SWAP1 PUSH2 0x264A JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD CALLER SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x2 PUSH1 0x0 DUP1 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x9 ADD PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP PUSH2 0x18F1 DUP5 DUP5 PUSH2 0xD3D JUMP JUMPDEST ISZERO PUSH2 0x1909 JUMPI PUSH2 0x18FF DUP5 PUSH2 0x11CC JUMP JUMPDEST POP PUSH1 0x1 SWAP2 POP PUSH2 0x190E JUMP JUMPDEST PUSH1 0x0 SWAP2 POP JUMPDEST POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xE ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1976 DUP3 PUSH2 0x141B JUMP JUMPDEST PUSH2 0x197F DUP4 PUSH2 0xDA2 JUMP JUMPDEST PUSH1 0x9 SLOAD PUSH2 0x198C SWAP2 SWAP1 PUSH2 0x2586 JUMP JUMPDEST PUSH2 0x1996 SWAP2 SWAP1 PUSH2 0x2586 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x0 DUP1 PUSH1 0x0 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xD ADD SLOAD EQ ISZERO PUSH2 0x1A25 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1A1C SWAP1 PUSH2 0x2861 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 DUP3 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND ISZERO PUSH2 0x1AB4 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1AAB SWAP1 PUSH2 0x28CD JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xD ADD SLOAD EQ ISZERO DUP1 ISZERO PUSH2 0x1B51 JUMPI POP PUSH1 0x0 DUP1 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x6 ADD PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH1 0xFF AND JUMPDEST PUSH2 0x1B90 JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1B87 SWAP1 PUSH2 0x295F JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH2 0x1B99 DUP2 PUSH2 0x1466 JUMP JUMPDEST ISZERO DUP1 ISZERO PUSH2 0x1BAC JUMPI POP PUSH2 0x1BAA DUP2 PUSH2 0x97F JUMP JUMPDEST ISZERO JUMPDEST PUSH2 0x1BEB JUMPI PUSH1 0x40 MLOAD PUSH32 0x8C379A000000000000000000000000000000000000000000000000000000000 DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x1BE2 SWAP1 PUSH2 0x29F1 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x0 DUP1 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x4 ADD PUSH1 0x0 DUP3 DUP3 SLOAD PUSH2 0x1C3D SWAP2 SWAP1 PUSH2 0x264A JUMP JUMPDEST SWAP3 POP POP DUP2 SWAP1 SSTORE POP PUSH1 0x0 DUP1 DUP6 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD CALLER SWAP1 DUP1 PUSH1 0x1 DUP2 SLOAD ADD DUP1 DUP3 SSTORE DUP1 SWAP2 POP POP PUSH1 0x1 SWAP1 SUB SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 ADD PUSH1 0x0 SWAP1 SWAP2 SWAP1 SWAP2 SWAP1 SWAP2 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF MUL NOT AND SWAP1 DUP4 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND MUL OR SWAP1 SSTORE POP PUSH1 0x1 PUSH1 0x0 DUP1 DUP7 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x9 ADD PUSH1 0x0 CALLER PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x0 PUSH2 0x100 EXP DUP2 SLOAD DUP2 PUSH1 0xFF MUL NOT AND SWAP1 DUP4 PUSH1 0xFF AND MUL OR SWAP1 SSTORE POP PUSH2 0x1D88 DUP5 DUP5 PUSH2 0xD3D JUMP JUMPDEST ISZERO PUSH2 0x1D9D JUMPI PUSH2 0x1D96 DUP5 PUSH2 0x11CC JUMP JUMPDEST SWAP2 POP PUSH2 0x1DA2 JUMP JUMPDEST PUSH1 0x0 SWAP2 POP JUMPDEST POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x7 PUSH1 0x0 SWAP1 SLOAD SWAP1 PUSH2 0x100 EXP SWAP1 DIV PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH2 0x120 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE POP SWAP1 JUMP JUMPDEST DUP3 DUP1 SLOAD PUSH2 0x1E3F SWAP1 PUSH2 0x2618 JUMP JUMPDEST SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV DUP2 ADD SWAP3 DUP3 PUSH2 0x1E61 JUMPI PUSH1 0x0 DUP6 SSTORE PUSH2 0x1EA8 JUMP JUMPDEST DUP3 PUSH1 0x1F LT PUSH2 0x1E7A JUMPI DUP1 MLOAD PUSH1 0xFF NOT AND DUP4 DUP1 ADD OR DUP6 SSTORE PUSH2 0x1EA8 JUMP JUMPDEST DUP3 DUP1 ADD PUSH1 0x1 ADD DUP6 SSTORE DUP3 ISZERO PUSH2 0x1EA8 JUMPI SWAP2 DUP3 ADD JUMPDEST DUP3 DUP2 GT ISZERO PUSH2 0x1EA7 JUMPI DUP3 MLOAD DUP3 SSTORE SWAP2 PUSH1 0x20 ADD SWAP2 SWAP1 PUSH1 0x1 ADD SWAP1 PUSH2 0x1E8C JUMP JUMPDEST JUMPDEST POP SWAP1 POP PUSH2 0x1EB5 SWAP2 SWAP1 PUSH2 0x1F1A JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST POP DUP1 SLOAD PUSH2 0x1EC5 SWAP1 PUSH2 0x2618 JUMP JUMPDEST PUSH1 0x0 DUP3 SSTORE DUP1 PUSH1 0x1F LT PUSH2 0x1ED7 JUMPI POP PUSH2 0x1EF6 JUMP JUMPDEST PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 DUP2 ADD SWAP1 PUSH2 0x1EF5 SWAP2 SWAP1 PUSH2 0x1F1A JUMP JUMPDEST JUMPDEST POP JUMP JUMPDEST POP DUP1 SLOAD PUSH1 0x0 DUP3 SSTORE SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 DUP2 ADD SWAP1 PUSH2 0x1F17 SWAP2 SWAP1 PUSH2 0x1F1A JUMP JUMPDEST POP JUMP JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0x1F33 JUMPI PUSH1 0x0 DUP2 PUSH1 0x0 SWAP1 SSTORE POP PUSH1 0x1 ADD PUSH2 0x1F1B JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH20 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x1F8E DUP3 PUSH2 0x1F63 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x1F9E DUP2 PUSH2 0x1F83 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1FDE JUMPI DUP1 DUP3 ADD MLOAD DUP2 DUP5 ADD MSTORE PUSH1 0x20 DUP2 ADD SWAP1 POP PUSH2 0x1FC3 JUMP JUMPDEST DUP4 DUP2 GT ISZERO PUSH2 0x1FED JUMPI PUSH1 0x0 DUP5 DUP5 ADD MSTORE JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x200F DUP3 PUSH2 0x1FA4 JUMP JUMPDEST PUSH2 0x2019 DUP2 DUP6 PUSH2 0x1FAF JUMP JUMPDEST SWAP4 POP PUSH2 0x2029 DUP2 DUP6 PUSH1 0x20 DUP7 ADD PUSH2 0x1FC0 JUMP JUMPDEST PUSH2 0x2032 DUP2 PUSH2 0x1FF3 JUMP JUMPDEST DUP5 ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x2050 DUP2 PUSH2 0x203D JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 DUP2 ISZERO ISZERO SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH2 0x206B DUP2 PUSH2 0x2056 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x120 DUP4 ADD PUSH1 0x0 DUP4 ADD MLOAD PUSH2 0x208A PUSH1 0x0 DUP7 ADD DUP3 PUSH2 0x1F95 JUMP JUMPDEST POP PUSH1 0x20 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x20 DUP7 ADD MSTORE PUSH2 0x20A2 DUP3 DUP3 PUSH2 0x2004 JUMP JUMPDEST SWAP2 POP POP PUSH1 0x40 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0x40 DUP7 ADD MSTORE PUSH2 0x20BC DUP3 DUP3 PUSH2 0x2004 JUMP JUMPDEST SWAP2 POP POP PUSH1 0x60 DUP4 ADD MLOAD PUSH2 0x20D1 PUSH1 0x60 DUP7 ADD DUP3 PUSH2 0x2047 JUMP JUMPDEST POP PUSH1 0x80 DUP4 ADD MLOAD PUSH2 0x20E4 PUSH1 0x80 DUP7 ADD DUP3 PUSH2 0x2047 JUMP JUMPDEST POP PUSH1 0xA0 DUP4 ADD MLOAD PUSH2 0x20F7 PUSH1 0xA0 DUP7 ADD DUP3 PUSH2 0x2047 JUMP JUMPDEST POP PUSH1 0xC0 DUP4 ADD MLOAD PUSH2 0x210A PUSH1 0xC0 DUP7 ADD DUP3 PUSH2 0x2062 JUMP JUMPDEST POP PUSH1 0xE0 DUP4 ADD MLOAD DUP5 DUP3 SUB PUSH1 0xE0 DUP7 ADD MSTORE PUSH2 0x2122 DUP3 DUP3 PUSH2 0x2004 JUMP JUMPDEST SWAP2 POP POP PUSH2 0x100 DUP4 ADD MLOAD PUSH2 0x2139 PUSH2 0x100 DUP7 ADD DUP3 PUSH2 0x2047 JUMP JUMPDEST POP DUP1 SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2150 DUP4 DUP4 PUSH2 0x2071 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2170 DUP3 PUSH2 0x1F37 JUMP JUMPDEST PUSH2 0x217A DUP2 DUP6 PUSH2 0x1F42 JUMP JUMPDEST SWAP4 POP DUP4 PUSH1 0x20 DUP3 MUL DUP6 ADD PUSH2 0x218C DUP6 PUSH2 0x1F53 JUMP JUMPDEST DUP1 PUSH1 0x0 JUMPDEST DUP6 DUP2 LT ISZERO PUSH2 0x21C8 JUMPI DUP5 DUP5 SUB DUP10 MSTORE DUP2 MLOAD PUSH2 0x21A9 DUP6 DUP3 PUSH2 0x2144 JUMP JUMPDEST SWAP5 POP PUSH2 0x21B4 DUP4 PUSH2 0x2158 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP11 ADD SWAP10 POP POP PUSH1 0x1 DUP2 ADD SWAP1 POP PUSH2 0x2190 JUMP JUMPDEST POP DUP3 SWAP8 POP DUP8 SWAP6 POP POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x21F4 DUP2 DUP5 PUSH2 0x2165 JUMP JUMPDEST SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x40 MLOAD SWAP1 POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2219 DUP2 PUSH2 0x1F83 JUMP JUMPDEST DUP2 EQ PUSH2 0x2224 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x2236 DUP2 PUSH2 0x2210 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2252 JUMPI PUSH2 0x2251 PUSH2 0x2206 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x2260 DUP5 DUP3 DUP6 ADD PUSH2 0x2227 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x2272 DUP2 PUSH2 0x2056 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x228D PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2269 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH2 0x22D5 DUP3 PUSH2 0x1FF3 JUMP JUMPDEST DUP2 ADD DUP2 DUP2 LT PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT OR ISZERO PUSH2 0x22F4 JUMPI PUSH2 0x22F3 PUSH2 0x229D JUMP JUMPDEST JUMPDEST DUP1 PUSH1 0x40 MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2307 PUSH2 0x21FC JUMP JUMPDEST SWAP1 POP PUSH2 0x2313 DUP3 DUP3 PUSH2 0x22CC JUMP JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH8 0xFFFFFFFFFFFFFFFF DUP3 GT ISZERO PUSH2 0x2333 JUMPI PUSH2 0x2332 PUSH2 0x229D JUMP JUMPDEST JUMPDEST PUSH2 0x233C DUP3 PUSH2 0x1FF3 JUMP JUMPDEST SWAP1 POP PUSH1 0x20 DUP2 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP3 DUP2 DUP4 CALLDATACOPY PUSH1 0x0 DUP4 DUP4 ADD MSTORE POP POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x236B PUSH2 0x2366 DUP5 PUSH2 0x2318 JUMP JUMPDEST PUSH2 0x22FD JUMP JUMPDEST SWAP1 POP DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 ADD DUP5 DUP5 DUP5 ADD GT ISZERO PUSH2 0x2387 JUMPI PUSH2 0x2386 PUSH2 0x2298 JUMP JUMPDEST JUMPDEST PUSH2 0x2392 DUP5 DUP3 DUP6 PUSH2 0x2349 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x23AF JUMPI PUSH2 0x23AE PUSH2 0x2293 JUMP JUMPDEST JUMPDEST DUP2 CALLDATALOAD PUSH2 0x23BF DUP5 DUP3 PUSH1 0x20 DUP7 ADD PUSH2 0x2358 JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x23D1 DUP2 PUSH2 0x203D JUMP JUMPDEST DUP2 EQ PUSH2 0x23DC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP JUMP JUMPDEST PUSH1 0x0 DUP2 CALLDATALOAD SWAP1 POP PUSH2 0x23EE DUP2 PUSH2 0x23C8 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0xA0 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x2410 JUMPI PUSH2 0x240F PUSH2 0x2206 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x241E DUP9 DUP3 DUP10 ADD PUSH2 0x2227 JUMP JUMPDEST SWAP6 POP POP PUSH1 0x20 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x243F JUMPI PUSH2 0x243E PUSH2 0x220B JUMP JUMPDEST JUMPDEST PUSH2 0x244B DUP9 DUP3 DUP10 ADD PUSH2 0x239A JUMP JUMPDEST SWAP5 POP POP PUSH1 0x40 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x246C JUMPI PUSH2 0x246B PUSH2 0x220B JUMP JUMPDEST JUMPDEST PUSH2 0x2478 DUP9 DUP3 DUP10 ADD PUSH2 0x239A JUMP JUMPDEST SWAP4 POP POP PUSH1 0x60 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x2499 JUMPI PUSH2 0x2498 PUSH2 0x220B JUMP JUMPDEST JUMPDEST PUSH2 0x24A5 DUP9 DUP3 DUP10 ADD PUSH2 0x239A JUMP JUMPDEST SWAP3 POP POP PUSH1 0x80 PUSH2 0x24B6 DUP9 DUP3 DUP10 ADD PUSH2 0x23DF JUMP JUMPDEST SWAP2 POP POP SWAP3 SWAP6 POP SWAP3 SWAP6 SWAP1 SWAP4 POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x24DA JUMPI PUSH2 0x24D9 PUSH2 0x2206 JUMP JUMPDEST JUMPDEST PUSH1 0x0 PUSH2 0x24E8 DUP6 DUP3 DUP7 ADD PUSH2 0x2227 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x20 PUSH2 0x24F9 DUP6 DUP3 DUP7 ADD PUSH2 0x23DF JUMP JUMPDEST SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH2 0x250C DUP2 PUSH2 0x203D JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2527 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x2503 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH2 0x2536 DUP2 PUSH2 0x1F83 JUMP JUMPDEST DUP3 MSTORE POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP PUSH2 0x2551 PUSH1 0x0 DUP4 ADD DUP5 PUSH2 0x252D JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH2 0x2591 DUP3 PUSH2 0x203D JUMP JUMPDEST SWAP2 POP PUSH2 0x259C DUP4 PUSH2 0x203D JUMP JUMPDEST SWAP3 POP DUP3 DUP3 LT ISZERO PUSH2 0x25AF JUMPI PUSH2 0x25AE PUSH2 0x2557 JUMP JUMPDEST JUMPDEST DUP3 DUP3 SUB SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 PUSH1 0x2 DUP3 DIV SWAP1 POP PUSH1 0x1 DUP3 AND DUP1 PUSH2 0x2630 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 EQ ISZERO PUSH2 0x2644 JUMPI PUSH2 0x2643 PUSH2 0x25E9 JUMP JUMPDEST JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2655 DUP3 PUSH2 0x203D JUMP JUMPDEST SWAP2 POP PUSH2 0x2660 DUP4 PUSH2 0x203D JUMP JUMPDEST SWAP3 POP DUP3 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF SUB DUP3 GT ISZERO PUSH2 0x2695 JUMPI PUSH2 0x2694 PUSH2 0x2557 JUMP JUMPDEST JUMPDEST DUP3 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x26AB DUP3 PUSH2 0x203D JUMP JUMPDEST SWAP2 POP PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DUP3 EQ ISZERO PUSH2 0x26DE JUMPI PUSH2 0x26DD PUSH2 0x2557 JUMP JUMPDEST JUMPDEST PUSH1 0x1 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP3 DUP3 MSTORE PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4F7267616E697A6174696F6E20616C7265616479207265676973746572656421 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2730 PUSH1 0x20 DUP4 PUSH2 0x26E9 JUMP JUMPDEST SWAP2 POP PUSH2 0x273B DUP3 PUSH2 0x26FA JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x275F DUP2 PUSH2 0x2723 JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2771 DUP3 PUSH2 0x203D JUMP JUMPDEST SWAP2 POP PUSH2 0x277C DUP4 PUSH2 0x203D JUMP JUMPDEST SWAP3 POP DUP2 PUSH32 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DIV DUP4 GT DUP3 ISZERO ISZERO AND ISZERO PUSH2 0x27B5 JUMPI PUSH2 0x27B4 PUSH2 0x2557 JUMP JUMPDEST JUMPDEST DUP3 DUP3 MUL SWAP1 POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH32 0x4E487B7100000000000000000000000000000000000000000000000000000000 PUSH1 0x0 MSTORE PUSH1 0x31 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH32 0x4F7267616E697A6174696F6E206164647265737320646F6573206E6F74206578 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6973742100000000000000000000000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x284B PUSH1 0x24 DUP4 PUSH2 0x26E9 JUMP JUMPDEST SWAP2 POP PUSH2 0x2856 DUP3 PUSH2 0x27EF JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x287A DUP2 PUSH2 0x283E JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x4F7267616E697A6174696F6E20616C7265616479207665726966696564210000 PUSH1 0x0 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x28B7 PUSH1 0x1E DUP4 PUSH2 0x26E9 JUMP JUMPDEST SWAP2 POP PUSH2 0x28C2 DUP3 PUSH2 0x2881 JUMP JUMPDEST PUSH1 0x20 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x28E6 DUP2 PUSH2 0x28AA JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x566F746572206F7267616E697A6174696F6E206973206E6F7420766572696669 PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x65642C206E6F74207065726D697474656420746F20766F746521000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x2949 PUSH1 0x3A DUP4 PUSH2 0x26E9 JUMP JUMPDEST SWAP2 POP PUSH2 0x2954 DUP3 PUSH2 0x28ED JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2978 DUP2 PUSH2 0x293C JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH32 0x566F746572206F7267616E697A6174696F6E2063616E6E6F7420766F7465206D PUSH1 0x0 DUP3 ADD MSTORE PUSH32 0x6F7265207468616E206F6E636521000000000000000000000000000000000000 PUSH1 0x20 DUP3 ADD MSTORE POP JUMP JUMPDEST PUSH1 0x0 PUSH2 0x29DB PUSH1 0x2E DUP4 PUSH2 0x26E9 JUMP JUMPDEST SWAP2 POP PUSH2 0x29E6 DUP3 PUSH2 0x297F JUMP JUMPDEST PUSH1 0x40 DUP3 ADD SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 ADD SWAP1 POP DUP2 DUP2 SUB PUSH1 0x0 DUP4 ADD MSTORE PUSH2 0x2A0A DUP2 PUSH2 0x29CE JUMP JUMPDEST SWAP1 POP SWAP2 SWAP1 POP JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xD3 SWAP4 0xE9 0xD2 SWAP10 MSTORE8 0xBD 0xAF 0xBB OR SIGNEXTEND PC 0xDD 0xD CALLDATASIZE 0x26 SWAP6 0xD8 0xEC PUSH13 0x4D8BF78334BA4BED5C42105E64 PUSH20 0x6F6C634300080900330000000000000000000000 ", + "sourceMap": "67:10537:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5206:1314;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3240:192;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7704:885;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3543:274;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1202:33;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2325:129;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3917:1189;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9689:289;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1749:120;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6600:201;;;:::i;:::-;;2130:100;;;:::i;:::-;;2552:133;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2975:190;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8642:456;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1958:110;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2693:209;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9153:457;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1140:20;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5206:1314;5293:19;5330:11;5344:19;:26;;;;5330:40;;5381:11;5407:34;5504:16;;5475:19;:26;;;;:45;;;;:::i;:::-;5444:87;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;5407:124;;5547:9;5542:939;5566:3;5562:1;:7;5542:939;;;5591:16;5610:19;5630:1;5610:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;5591:41;;5652:13;:23;5666:8;5652:23;;;;;;;;;;;;;;;:43;;;;;;;;;;;;5647:823;;5716:25;5744:635;;;;;;;;5791:13;:23;5805:8;5791:23;;;;;;;;;;;;;;;:35;;;;;;;;;;;;5744:635;;;;;;5855:13;:23;5869:8;5855:23;;;;;;;;;;;;;;;:28;;5744:635;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5915:13;:23;5929:8;5915:23;;;;;;;;;;;;;;;:31;;5744:635;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5978:13;:23;5992:8;5978:23;;;;;;;;;;;;;;;:31;;;5744:635;;;;6043:13;:23;6057:8;6043:23;;;;;;;;;;;;;;;:33;;;5744:635;;;;6105:13;:23;6119:8;6105:23;;;;;;;;;;;;;;;:29;;;5744:635;;;;6178:13;:23;6192:8;6178:23;;;;;;;;;;;;;;;:43;;;;;;;;;;;;5744:635;;;;;;6250:13;:23;6264:8;6250:23;;;;;;;;;;;;;;;:28;;5744:635;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6319:13;:23;6333:8;6319:23;;;;;;;;;;;;;;;:40;;;5744:635;;;5716:663;;6420:7;6398:14;6413:3;6398:19;;;;;;;;:::i;:::-;;;;;;;:29;;;;6453:1;6446:8;;;;;:::i;:::-;;;5697:773;5647:823;5576:905;5571:3;;;;;:::i;:::-;;;;5542:939;;;;6498:14;6491:21;;;;;5206:1314;:::o;3240:192::-;3308:4;3325:18;3346:10;3325:31;;3423:1;3374:13;:26;3388:11;3374:26;;;;;;;;;;;;;;;:33;;:45;3408:10;3374:45;;;;;;;;;;;;;;;;;;;;;;;;;:50;;;3367:57;;;3240:192;;;:::o;7704:885::-;8005:1;7949:13;:35;7963:20;7949:35;;;;;;;;;;;;;;;:52;;;:57;7927:139;;;;;;;;;;;;:::i;:::-;;;;;;;;;8129:20;8079:13;:35;8093:20;8079:35;;;;;;;;;;;;;;;:47;;;:70;;;;;;;;;;;;;;;;;;8203:17;8160:13;:35;8174:20;8160:35;;;;;;;;;;;;;;;:40;;:60;;;;;;;;;;;;:::i;:::-;;8277:12;8231:13;:35;8245:20;8231:35;;;;;;;;;;;;;;;:43;;:58;;;;;;;;;;;;:::i;:::-;;8343:11;8300:13;:35;8314:20;8300:35;;;;;;;;;;;;;;;:40;;:54;;;;;;;;;;;;:::i;:::-;;8427:6;8420:4;:13;;;;:::i;:::-;8365;:35;8379:20;8365:35;;;;;;;;;;;;;;;:52;;:68;;;;8523:1;8488:34;8501:20;8488:12;:34::i;:::-;:36;;;;:::i;:::-;8444:13;:35;8458:20;8444:35;;;;;;;;;;;;;;;:41;;:80;;;;8535:19;8560:20;8535:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7704:885;;;;;:::o;3543:274::-;3649:4;3713:12;3670:13;:23;3684:8;3670:23;;;;;;;;;;;;;;;:40;;;:55;3666:144;;;3749:4;3742:11;;;;3666:144;3793:5;3786:12;;3543:274;;;;;:::o;1202:33::-;;;;:::o;2325:129::-;2388:7;2415:13;:23;2429:8;2415:23;;;;;;;;;;;;;;;:31;;;2408:38;;2325:129;;;:::o;3917:1189::-;4002:19;4039:11;4053:19;:26;;;;4039:40;;4090:11;4116:32;4168:16;;4151:34;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;4116:69;;4201:9;4196:873;4220:3;4216:1;:7;4196:873;;;4245:16;4264:19;4284:1;4264:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;4245:41;;4305:13;:23;4319:8;4305:23;;;;;;;;;;;;;;;:43;;;;;;;;;;;;4301:757;;;4369:28;4400:13;:23;4414:8;4400:23;;;;;;;;;;;;;;;4369:54;;4442:29;4474:491;;;;;;;;4521:7;:19;;;;;;;;;;;;4474:491;;;;;;4569:7;:12;;4474:491;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4613:7;:15;;4474:491;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4660:7;:15;;;4474:491;;;;4709:7;:17;;;4474:491;;;;4755:7;:13;;;4474:491;;;;4812:7;:27;;;;;;;;;;;;4474:491;;;;;;4868:7;:12;;4474:491;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4921:7;:24;;;4474:491;;;4442:523;;5004:11;4984:12;4997:3;4984:17;;;;;;;;:::i;:::-;;;;;;;:31;;;;5041:1;5034:8;;;;;:::i;:::-;;;4350:708;;4301:757;4230:839;4225:3;;;;;:::i;:::-;;;;4196:873;;;;5086:12;5079:19;;;;;3917:1189;:::o;9689:289::-;9791:4;9896:2;9875:18;;:23;;;;:::i;:::-;9868:3;9831:13;:26;9845:11;9831:26;;;;;;;;;;;;;;;:34;;;:40;;;;:::i;:::-;:67;9813:135;;9932:4;9925:11;;;;9813:135;9965:5;9958:12;;9689:289;;;;:::o;1749:120::-;1792:4;1816:13;:25;1830:10;1816:25;;;;;;;;;;;;;;;:45;;;;;;;;;;;;1809:52;;1749:120;:::o;6600:201::-;6651:16;6670:17;:24;;;;6651:43;;6710:9;6705:89;6729:8;6725:1;:12;6705:89;;;6759:17;:23;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6739:3;;;;;:::i;:::-;;;;6705:89;;;;6640:161;6600:201::o;2130:100::-;2218:4;2178:13;:25;2192:10;2178:25;;;;;;;;;;;;;;;:37;;;:44;;;;;;;;;;;;;;;;;;2130:100::o;2552:133::-;2617:7;2644:13;:23;2658:8;2644:23;;;;;;;;;;;;;;;:33;;;2637:40;;2552:133;;;:::o;2975:190::-;3041:4;3058:18;3079:10;3058:31;;3156:1;3107:13;:26;3121:11;3107:26;;;;;;;;;;;;;;;:33;;:45;3141:10;3107:45;;;;;;;;;;;;;;;;;;;;;;;;;:50;;;3100:57;;;2975:190;;;:::o;8642:456::-;8762:4;8742:8;6930:1;6886:13;:23;6900:8;6886:23;;;;;;;;;;;;;;;:40;;;:45;;6864:131;;;;;;;;;;;;:::i;:::-;;;;;;;;;7029:13;:23;7043:8;7029:23;;;;;;;;;;;;;;;:43;;;;;;;;;;;;7028:44;7006:124;;;;;;;;;;;;:::i;:::-;;;;;;;;;7209:1;7163:13;:25;7177:10;7163:25;;;;;;;;;;;;;;;:42;;;:47;;:113;;;;;7231:13;:25;7245:10;7231:25;;;;;;;;;;;;;;;:45;;;;;;;;;;;;7163:113;7141:221;;;;;;;;;;;;:::i;:::-;;;;;;;;;7396:24;7411:8;7396:14;:24::i;:::-;7395:25;:56;;;;;7425:26;7442:8;7425:16;:26::i;:::-;7424:27;7395:56;7373:152;;;;;;;;;;;;:::i;:::-;;;;;;;;;8813:1:::1;8778:13;:23:::0;8792:8:::1;8778:23;;;;;;;;;;;;;;;:31;;;:36;;;;;;;:::i;:::-;;;;;;;;8825:13;:23:::0;8839:8:::1;8825:23;;;;;;;;;;;;;;;:32;;8863:10;8825:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8930:1;8885:13;:23:::0;8899:8:::1;8885:23;;;;;;;;;;;;;;;:30;;:42;8916:10;8885:42;;;;;;;;;;;;;;;;:46;;;;;;;;;;;;;;;;;;8946:34;8957:8;8967:12;8946:10;:34::i;:::-;8942:126;;;8997:33;9021:8;8997:23;:33::i;:::-;;9052:4;9045:11;;;;8942:126;9085:5;9078:12;;7536:1;8642:456:::0;;;;;:::o;1958:110::-;1999:4;2023:13;:25;2037:10;2023:25;;;;;;;;;;;;;;;:37;;;;;;;;;;;;2016:44;;1958:110;:::o;2693:209::-;2754:7;2868:26;2885:8;2868:16;:26::i;:::-;2828:24;2843:8;2828:14;:24::i;:::-;2794:18;;:58;;;;:::i;:::-;:100;;;;:::i;:::-;2774:120;;2693:209;;;:::o;9153:457::-;9275:4;9256:8;6930:1;6886:13;:23;6900:8;6886:23;;;;;;;;;;;;;;;:40;;;:45;;6864:131;;;;;;;;;;;;:::i;:::-;;;;;;;;;7029:13;:23;7043:8;7029:23;;;;;;;;;;;;;;;:43;;;;;;;;;;;;7028:44;7006:124;;;;;;;;;;;;:::i;:::-;;;;;;;;;7209:1;7163:13;:25;7177:10;7163:25;;;;;;;;;;;;;;;:42;;;:47;;:113;;;;;7231:13;:25;7245:10;7231:25;;;;;;;;;;;;;;;:45;;;;;;;;;;;;7163:113;7141:221;;;;;;;;;;;;:::i;:::-;;;;;;;;;7396:24;7411:8;7396:14;:24::i;:::-;7395:25;:56;;;;;7425:26;7442:8;7425:16;:26::i;:::-;7424:27;7395:56;7373:152;;;;;;;;;;;;:::i;:::-;;;;;;;;;9329:1:::1;9292:13;:23:::0;9306:8:::1;9292:23;;;;;;;;;;;;;;;:33;;;:38;;;;;;;:::i;:::-;;;;;;;;9341:13;:23:::0;9355:8:::1;9341:23;;;;;;;;;;;;;;;:34;;9381:10;9341:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9448:1;9403:13;:23:::0;9417:8:::1;9403:23;;;;;;;;;;;;;;;:30;;:42;9434:10;9403:42;;;;;;;;;;;;;;;;:46;;;;;;;;;;;;;;;;;;9464:34;9475:8;9485:12;9464:10;:34::i;:::-;9460:120;;;9522:33;9546:8;9522:23;:33::i;:::-;9515:40;;;;9460:120;9597:5;9590:12;;7536:1;9153:457:::0;;;;;:::o;1140:20::-;;;;;;;;;;;;;:::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;:::o;7:140:1:-;100:6;134:5;128:12;118:22;;7:140;;;:::o;153:210::-;278:11;312:6;307:3;300:19;352:4;347:3;343:14;328:29;;153:210;;;;:::o;369:158::-;462:4;485:3;477:11;;515:4;510:3;506:14;498:22;;369:158;;;:::o;533:126::-;570:7;610:42;603:5;599:54;588:65;;533:126;;;:::o;665:96::-;702:7;731:24;749:5;731:24;:::i;:::-;720:35;;665:96;;;:::o;767:108::-;844:24;862:5;844:24;:::i;:::-;839:3;832:37;767:108;;:::o;881:99::-;933:6;967:5;961:12;951:22;;881:99;;;:::o;986:159::-;1060:11;1094:6;1089:3;1082:19;1134:4;1129:3;1125:14;1110:29;;986:159;;;;:::o;1151:307::-;1219:1;1229:113;1243:6;1240:1;1237:13;1229:113;;;1328:1;1323:3;1319:11;1313:18;1309:1;1304:3;1300:11;1293:39;1265:2;1262:1;1258:10;1253:15;;1229:113;;;1360:6;1357:1;1354:13;1351:101;;;1440:1;1431:6;1426:3;1422:16;1415:27;1351:101;1200:258;1151:307;;;:::o;1464:102::-;1505:6;1556:2;1552:7;1547:2;1540:5;1536:14;1532:28;1522:38;;1464:102;;;:::o;1572:344::-;1650:3;1678:39;1711:5;1678:39;:::i;:::-;1733:61;1787:6;1782:3;1733:61;:::i;:::-;1726:68;;1803:52;1848:6;1843:3;1836:4;1829:5;1825:16;1803:52;:::i;:::-;1880:29;1902:6;1880:29;:::i;:::-;1875:3;1871:39;1864:46;;1654:262;1572:344;;;;:::o;1922:77::-;1959:7;1988:5;1977:16;;1922:77;;;:::o;2005:108::-;2082:24;2100:5;2082:24;:::i;:::-;2077:3;2070:37;2005:108;;:::o;2119:90::-;2153:7;2196:5;2189:13;2182:21;2171:32;;2119:90;;;:::o;2215:99::-;2286:21;2301:5;2286:21;:::i;:::-;2281:3;2274:34;2215:99;;:::o;2390:2004::-;2501:3;2537:6;2532:3;2528:16;2633:4;2626:5;2622:16;2616:23;2652:63;2709:4;2704:3;2700:14;2686:12;2652:63;:::i;:::-;2554:171;2807:4;2800:5;2796:16;2790:23;2860:3;2854:4;2850:14;2843:4;2838:3;2834:14;2827:38;2886:73;2954:4;2940:12;2886:73;:::i;:::-;2878:81;;2735:235;3055:4;3048:5;3044:16;3038:23;3108:3;3102:4;3098:14;3091:4;3086:3;3082:14;3075:38;3134:73;3202:4;3188:12;3134:73;:::i;:::-;3126:81;;2980:238;3303:4;3296:5;3292:16;3286:23;3322:63;3379:4;3374:3;3370:14;3356:12;3322:63;:::i;:::-;3228:167;3482:4;3475:5;3471:16;3465:23;3501:63;3558:4;3553:3;3549:14;3535:12;3501:63;:::i;:::-;3405:169;3657:4;3650:5;3646:16;3640:23;3676:63;3733:4;3728:3;3724:14;3710:12;3676:63;:::i;:::-;3584:165;3846:4;3839:5;3835:16;3829:23;3865:57;3916:4;3911:3;3907:14;3893:12;3865:57;:::i;:::-;3759:173;4014:4;4007:5;4003:16;3997:23;4067:3;4061:4;4057:14;4050:4;4045:3;4041:14;4034:38;4093:73;4161:4;4147:12;4093:73;:::i;:::-;4085:81;;3942:235;4271:6;4264:5;4260:18;4254:25;4292:65;4349:6;4344:3;4340:16;4326:12;4292:65;:::i;:::-;4187:180;4384:4;4377:11;;2506:1888;2390:2004;;;;:::o;4400:260::-;4521:10;4556:98;4650:3;4642:6;4556:98;:::i;:::-;4542:112;;4400:260;;;;:::o;4666:139::-;4762:4;4794;4789:3;4785:14;4777:22;;4666:139;;;:::o;4885:1119::-;5056:3;5085:80;5159:5;5085:80;:::i;:::-;5181:112;5286:6;5281:3;5181:112;:::i;:::-;5174:119;;5319:3;5364:4;5356:6;5352:17;5347:3;5343:27;5394:82;5470:5;5394:82;:::i;:::-;5499:7;5530:1;5515:444;5540:6;5537:1;5534:13;5515:444;;;5611:9;5605:4;5601:20;5596:3;5589:33;5662:6;5656:13;5690:116;5801:4;5786:13;5690:116;:::i;:::-;5682:124;;5829:86;5908:6;5829:86;:::i;:::-;5819:96;;5944:4;5939:3;5935:14;5928:21;;5575:384;5562:1;5559;5555:9;5550:14;;5515:444;;;5519:14;5975:4;5968:11;;5995:3;5988:10;;5061:943;;;;;4885:1119;;;;:::o;6010:477::-;6205:4;6243:2;6232:9;6228:18;6220:26;;6292:9;6286:4;6282:20;6278:1;6267:9;6263:17;6256:47;6320:160;6475:4;6466:6;6320:160;:::i;:::-;6312:168;;6010:477;;;;:::o;6493:75::-;6526:6;6559:2;6553:9;6543:19;;6493:75;:::o;6574:117::-;6683:1;6680;6673:12;6697:117;6806:1;6803;6796:12;6820:122;6893:24;6911:5;6893:24;:::i;:::-;6886:5;6883:35;6873:63;;6932:1;6929;6922:12;6873:63;6820:122;:::o;6948:139::-;6994:5;7032:6;7019:20;7010:29;;7048:33;7075:5;7048:33;:::i;:::-;6948:139;;;;:::o;7093:329::-;7152:6;7201:2;7189:9;7180:7;7176:23;7172:32;7169:119;;;7207:79;;:::i;:::-;7169:119;7327:1;7352:53;7397:7;7388:6;7377:9;7373:22;7352:53;:::i;:::-;7342:63;;7298:117;7093:329;;;;:::o;7428:109::-;7509:21;7524:5;7509:21;:::i;:::-;7504:3;7497:34;7428:109;;:::o;7543:210::-;7630:4;7668:2;7657:9;7653:18;7645:26;;7681:65;7743:1;7732:9;7728:17;7719:6;7681:65;:::i;:::-;7543:210;;;;:::o;7759:117::-;7868:1;7865;7858:12;7882:117;7991:1;7988;7981:12;8005:180;8053:77;8050:1;8043:88;8150:4;8147:1;8140:15;8174:4;8171:1;8164:15;8191:281;8274:27;8296:4;8274:27;:::i;:::-;8266:6;8262:40;8404:6;8392:10;8389:22;8368:18;8356:10;8353:34;8350:62;8347:88;;;8415:18;;:::i;:::-;8347:88;8455:10;8451:2;8444:22;8234:238;8191:281;;:::o;8478:129::-;8512:6;8539:20;;:::i;:::-;8529:30;;8568:33;8596:4;8588:6;8568:33;:::i;:::-;8478:129;;;:::o;8613:308::-;8675:4;8765:18;8757:6;8754:30;8751:56;;;8787:18;;:::i;:::-;8751:56;8825:29;8847:6;8825:29;:::i;:::-;8817:37;;8909:4;8903;8899:15;8891:23;;8613:308;;;:::o;8927:154::-;9011:6;9006:3;9001;8988:30;9073:1;9064:6;9059:3;9055:16;9048:27;8927:154;;;:::o;9087:412::-;9165:5;9190:66;9206:49;9248:6;9206:49;:::i;:::-;9190:66;:::i;:::-;9181:75;;9279:6;9272:5;9265:21;9317:4;9310:5;9306:16;9355:3;9346:6;9341:3;9337:16;9334:25;9331:112;;;9362:79;;:::i;:::-;9331:112;9452:41;9486:6;9481:3;9476;9452:41;:::i;:::-;9171:328;9087:412;;;;;:::o;9519:340::-;9575:5;9624:3;9617:4;9609:6;9605:17;9601:27;9591:122;;9632:79;;:::i;:::-;9591:122;9749:6;9736:20;9774:79;9849:3;9841:6;9834:4;9826:6;9822:17;9774:79;:::i;:::-;9765:88;;9581:278;9519:340;;;;:::o;9865:122::-;9938:24;9956:5;9938:24;:::i;:::-;9931:5;9928:35;9918:63;;9977:1;9974;9967:12;9918:63;9865:122;:::o;9993:139::-;10039:5;10077:6;10064:20;10055:29;;10093:33;10120:5;10093:33;:::i;:::-;9993:139;;;;:::o;10138:1451::-;10263:6;10271;10279;10287;10295;10344:3;10332:9;10323:7;10319:23;10315:33;10312:120;;;10351:79;;:::i;:::-;10312:120;10471:1;10496:53;10541:7;10532:6;10521:9;10517:22;10496:53;:::i;:::-;10486:63;;10442:117;10626:2;10615:9;10611:18;10598:32;10657:18;10649:6;10646:30;10643:117;;;10679:79;;:::i;:::-;10643:117;10784:63;10839:7;10830:6;10819:9;10815:22;10784:63;:::i;:::-;10774:73;;10569:288;10924:2;10913:9;10909:18;10896:32;10955:18;10947:6;10944:30;10941:117;;;10977:79;;:::i;:::-;10941:117;11082:63;11137:7;11128:6;11117:9;11113:22;11082:63;:::i;:::-;11072:73;;10867:288;11222:2;11211:9;11207:18;11194:32;11253:18;11245:6;11242:30;11239:117;;;11275:79;;:::i;:::-;11239:117;11380:63;11435:7;11426:6;11415:9;11411:22;11380:63;:::i;:::-;11370:73;;11165:288;11492:3;11519:53;11564:7;11555:6;11544:9;11540:22;11519:53;:::i;:::-;11509:63;;11463:119;10138:1451;;;;;;;;:::o;11595:474::-;11663:6;11671;11720:2;11708:9;11699:7;11695:23;11691:32;11688:119;;;11726:79;;:::i;:::-;11688:119;11846:1;11871:53;11916:7;11907:6;11896:9;11892:22;11871:53;:::i;:::-;11861:63;;11817:117;11973:2;11999:53;12044:7;12035:6;12024:9;12020:22;11999:53;:::i;:::-;11989:63;;11944:118;11595:474;;;;;:::o;12075:118::-;12162:24;12180:5;12162:24;:::i;:::-;12157:3;12150:37;12075:118;;:::o;12199:222::-;12292:4;12330:2;12319:9;12315:18;12307:26;;12343:71;12411:1;12400:9;12396:17;12387:6;12343:71;:::i;:::-;12199:222;;;;:::o;12427:118::-;12514:24;12532:5;12514:24;:::i;:::-;12509:3;12502:37;12427:118;;:::o;12551:222::-;12644:4;12682:2;12671:9;12667:18;12659:26;;12695:71;12763:1;12752:9;12748:17;12739:6;12695:71;:::i;:::-;12551:222;;;;:::o;12779:180::-;12827:77;12824:1;12817:88;12924:4;12921:1;12914:15;12948:4;12945:1;12938:15;12965:191;13005:4;13025:20;13043:1;13025:20;:::i;:::-;13020:25;;13059:20;13077:1;13059:20;:::i;:::-;13054:25;;13098:1;13095;13092:8;13089:34;;;13103:18;;:::i;:::-;13089:34;13148:1;13145;13141:9;13133:17;;12965:191;;;;:::o;13162:180::-;13210:77;13207:1;13200:88;13307:4;13304:1;13297:15;13331:4;13328:1;13321:15;13348:180;13396:77;13393:1;13386:88;13493:4;13490:1;13483:15;13517:4;13514:1;13507:15;13534:320;13578:6;13615:1;13609:4;13605:12;13595:22;;13662:1;13656:4;13652:12;13683:18;13673:81;;13739:4;13731:6;13727:17;13717:27;;13673:81;13801:2;13793:6;13790:14;13770:18;13767:38;13764:84;;;13820:18;;:::i;:::-;13764:84;13585:269;13534:320;;;:::o;13860:305::-;13900:3;13919:20;13937:1;13919:20;:::i;:::-;13914:25;;13953:20;13971:1;13953:20;:::i;:::-;13948:25;;14107:1;14039:66;14035:74;14032:1;14029:81;14026:107;;;14113:18;;:::i;:::-;14026:107;14157:1;14154;14150:9;14143:16;;13860:305;;;;:::o;14171:233::-;14210:3;14233:24;14251:5;14233:24;:::i;:::-;14224:33;;14279:66;14272:5;14269:77;14266:103;;;14349:18;;:::i;:::-;14266:103;14396:1;14389:5;14385:13;14378:20;;14171:233;;;:::o;14410:169::-;14494:11;14528:6;14523:3;14516:19;14568:4;14563:3;14559:14;14544:29;;14410:169;;;;:::o;14585:182::-;14725:34;14721:1;14713:6;14709:14;14702:58;14585:182;:::o;14773:366::-;14915:3;14936:67;15000:2;14995:3;14936:67;:::i;:::-;14929:74;;15012:93;15101:3;15012:93;:::i;:::-;15130:2;15125:3;15121:12;15114:19;;14773:366;;;:::o;15145:419::-;15311:4;15349:2;15338:9;15334:18;15326:26;;15398:9;15392:4;15388:20;15384:1;15373:9;15369:17;15362:47;15426:131;15552:4;15426:131;:::i;:::-;15418:139;;15145:419;;;:::o;15570:348::-;15610:7;15633:20;15651:1;15633:20;:::i;:::-;15628:25;;15667:20;15685:1;15667:20;:::i;:::-;15662:25;;15855:1;15787:66;15783:74;15780:1;15777:81;15772:1;15765:9;15758:17;15754:105;15751:131;;;15862:18;;:::i;:::-;15751:131;15910:1;15907;15903:9;15892:20;;15570:348;;;;:::o;15924:180::-;15972:77;15969:1;15962:88;16069:4;16066:1;16059:15;16093:4;16090:1;16083:15;16110:223;16250:34;16246:1;16238:6;16234:14;16227:58;16319:6;16314:2;16306:6;16302:15;16295:31;16110:223;:::o;16339:366::-;16481:3;16502:67;16566:2;16561:3;16502:67;:::i;:::-;16495:74;;16578:93;16667:3;16578:93;:::i;:::-;16696:2;16691:3;16687:12;16680:19;;16339:366;;;:::o;16711:419::-;16877:4;16915:2;16904:9;16900:18;16892:26;;16964:9;16958:4;16954:20;16950:1;16939:9;16935:17;16928:47;16992:131;17118:4;16992:131;:::i;:::-;16984:139;;16711:419;;;:::o;17136:180::-;17276:32;17272:1;17264:6;17260:14;17253:56;17136:180;:::o;17322:366::-;17464:3;17485:67;17549:2;17544:3;17485:67;:::i;:::-;17478:74;;17561:93;17650:3;17561:93;:::i;:::-;17679:2;17674:3;17670:12;17663:19;;17322:366;;;:::o;17694:419::-;17860:4;17898:2;17887:9;17883:18;17875:26;;17947:9;17941:4;17937:20;17933:1;17922:9;17918:17;17911:47;17975:131;18101:4;17975:131;:::i;:::-;17967:139;;17694:419;;;:::o;18119:245::-;18259:34;18255:1;18247:6;18243:14;18236:58;18328:28;18323:2;18315:6;18311:15;18304:53;18119:245;:::o;18370:366::-;18512:3;18533:67;18597:2;18592:3;18533:67;:::i;:::-;18526:74;;18609:93;18698:3;18609:93;:::i;:::-;18727:2;18722:3;18718:12;18711:19;;18370:366;;;:::o;18742:419::-;18908:4;18946:2;18935:9;18931:18;18923:26;;18995:9;18989:4;18985:20;18981:1;18970:9;18966:17;18959:47;19023:131;19149:4;19023:131;:::i;:::-;19015:139;;18742:419;;;:::o;19167:233::-;19307:34;19303:1;19295:6;19291:14;19284:58;19376:16;19371:2;19363:6;19359:15;19352:41;19167:233;:::o;19406:366::-;19548:3;19569:67;19633:2;19628:3;19569:67;:::i;:::-;19562:74;;19645:93;19734:3;19645:93;:::i;:::-;19763:2;19758:3;19754:12;19747:19;;19406:366;;;:::o;19778:419::-;19944:4;19982:2;19971:9;19967:18;19959:26;;20031:9;20025:4;20021:20;20017:1;20006:9;20002:17;19995:47;20059:131;20185:4;20059:131;:::i;:::-;20051:139;;19778:419;;;:::o" + }, + "gasEstimates": { + "creation": { + "codeDepositCost": "2164600", + "executionCost": "infinite", + "totalCost": "infinite" + }, + "external": { + "admin()": "2624", + "changeIsStakedPaid()": "24551", + "checkIfDownvoted(address)": "3049", + "checkIfUpvoted(address)": "3092", + "checkVerificationStatus(address)": "infinite", + "countOfDownvotes(address)": "2914", + "countOfUpvotes(address)": "2892", + "countOfViews(address)": "infinite", + "downVote(address,uint256)": "infinite", + "emptyListOrganization()": "infinite", + "isStaked()": "2618", + "isVerified()": "2685", + "registerOrg(address,string,string,string,uint256)": "infinite", + "totalOrganizations()": "2452", + "unverifiedOrganizationsList()": "infinite", + "upVote(address,uint256)": "infinite", + "verifiedOrganizationsList()": "infinite", + "votingDone(address,uint256)": "3153" + } + }, + "methodIdentifiers": { + "admin()": "f851a440", + "changeIsStakedPaid()": "a1b0ffe0", + "checkIfDownvoted(address)": "3e85747e", + "checkIfUpvoted(address)": "c9dfca10", + "checkVerificationStatus(address)": "6fc3911c", + "countOfDownvotes(address)": "b7627e41", + "countOfUpvotes(address)": "5cf9303f", + "countOfViews(address)": "e75176b5", + "downVote(address,uint256)": "f15c01dd", + "emptyListOrganization()": "8fc0ed2f", + "isStaked()": "e3323aba", + "isVerified()": "80007e83", + "registerOrg(address,string,string,string,uint256)": "440370fe", + "totalOrganizations()": "4cf5d552", + "unverifiedOrganizationsList()": "2d80468d", + "upVote(address,uint256)": "e2579114", + "verifiedOrganizationsList()": "5d0161f1", + "votingDone(address,uint256)": "4648df2a" + } + }, + "abi": [ + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "admin", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "changeIsStakedPaid", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "checkIfDownvoted", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "checkIfUpvoted", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "checkVerificationStatus", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + } + ], + "name": "countOfDownvotes", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + } + ], + "name": "countOfUpvotes", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + } + ], + "name": "countOfViews", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + }, + { + "internalType": "uint256", + "name": "current_time", + "type": "uint256" + } + ], + "name": "downVote", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "emptyListOrganization", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "isStaked", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "isVerified", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "organization_address", + "type": "address" + }, + { + "internalType": "string", + "name": "organization_name", + "type": "string" + }, + { + "internalType": "string", + "name": "document_cid", + "type": "string" + }, + { + "internalType": "string", + "name": "description", + "type": "string" + }, + { + "internalType": "uint256", + "name": "time", + "type": "uint256" + } + ], + "name": "registerOrg", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "totalOrganizations", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "unverifiedOrganizationsList", + "outputs": [ + { + "components": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + }, + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "doc_cid", + "type": "string" + }, + { + "internalType": "uint256", + "name": "upvotes", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "downvotes", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "views", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "verification_status", + "type": "bool" + }, + { + "internalType": "string", + "name": "desc", + "type": "string" + }, + { + "internalType": "uint256", + "name": "application_time", + "type": "uint256" + } + ], + "internalType": "struct OrgCreation.OrgDetails[]", + "name": "", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + }, + { + "internalType": "uint256", + "name": "current_time", + "type": "uint256" + } + ], + "name": "upVote", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "verifiedOrganizationsList", + "outputs": [ + { + "components": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + }, + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "doc_cid", + "type": "string" + }, + { + "internalType": "uint256", + "name": "upvotes", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "downvotes", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "views", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "verification_status", + "type": "bool" + }, + { + "internalType": "string", + "name": "desc", + "type": "string" + }, + { + "internalType": "uint256", + "name": "application_time", + "type": "uint256" + } + ], + "internalType": "struct OrgCreation.OrgDetails[]", + "name": "", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + }, + { + "internalType": "uint256", + "name": "current_time", + "type": "uint256" + } + ], + "name": "votingDone", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + } + ] +} \ No newline at end of file diff --git a/artifacts/OrgCreation_metadata.json b/artifacts/OrgCreation_metadata.json new file mode 100644 index 0000000..766e128 --- /dev/null +++ b/artifacts/OrgCreation_metadata.json @@ -0,0 +1,456 @@ +{ + "compiler": { + "version": "0.8.9+commit.e5eed63a" + }, + "language": "Solidity", + "output": { + "abi": [ + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "admin", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "changeIsStakedPaid", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "checkIfDownvoted", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "checkIfUpvoted", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "checkVerificationStatus", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + } + ], + "name": "countOfDownvotes", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + } + ], + "name": "countOfUpvotes", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + } + ], + "name": "countOfViews", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + }, + { + "internalType": "uint256", + "name": "current_time", + "type": "uint256" + } + ], + "name": "downVote", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "emptyListOrganization", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "isStaked", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "isVerified", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "organization_address", + "type": "address" + }, + { + "internalType": "string", + "name": "organization_name", + "type": "string" + }, + { + "internalType": "string", + "name": "document_cid", + "type": "string" + }, + { + "internalType": "string", + "name": "description", + "type": "string" + }, + { + "internalType": "uint256", + "name": "time", + "type": "uint256" + } + ], + "name": "registerOrg", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "totalOrganizations", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "unverifiedOrganizationsList", + "outputs": [ + { + "components": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + }, + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "doc_cid", + "type": "string" + }, + { + "internalType": "uint256", + "name": "upvotes", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "downvotes", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "views", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "verification_status", + "type": "bool" + }, + { + "internalType": "string", + "name": "desc", + "type": "string" + }, + { + "internalType": "uint256", + "name": "application_time", + "type": "uint256" + } + ], + "internalType": "struct OrgCreation.OrgDetails[]", + "name": "", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + }, + { + "internalType": "uint256", + "name": "current_time", + "type": "uint256" + } + ], + "name": "upVote", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "verifiedOrganizationsList", + "outputs": [ + { + "components": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + }, + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "doc_cid", + "type": "string" + }, + { + "internalType": "uint256", + "name": "upvotes", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "downvotes", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "views", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "verification_status", + "type": "bool" + }, + { + "internalType": "string", + "name": "desc", + "type": "string" + }, + { + "internalType": "uint256", + "name": "application_time", + "type": "uint256" + } + ], + "internalType": "struct OrgCreation.OrgDetails[]", + "name": "", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + }, + { + "internalType": "uint256", + "name": "current_time", + "type": "uint256" + } + ], + "name": "votingDone", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + }, + "settings": { + "compilationTarget": { + "hardhat\\contracts\\OrgCreation.sol": "OrgCreation" + }, + "evmVersion": "london", + "libraries": {}, + "metadata": { + "bytecodeHash": "ipfs" + }, + "optimizer": { + "enabled": false, + "runs": 200 + }, + "remappings": [] + }, + "sources": { + "hardhat\\contracts\\OrgCreation.sol": { + "keccak256": "0xdcf694b024d1a1255aacfa75604c32dd739639437ac64a3f894d050574d09e3c", + "license": "UNLICENSED", + "urls": [ + "bzz-raw://1dc8b0de720c0d4666c6194d912b2db2afb0d94b26bc96e2fc61c03378fb4863", + "dweb:/ipfs/QmXr9bM4FCXd6CxWyw3Jhxv7kugvK1hfMZpiG1HP3JYjeq" + ] + } + }, + "version": 1 +} \ No newline at end of file diff --git a/bin/hardhat/contracts/OrgOperation-solc-output.json b/bin/hardhat/contracts/OrgOperation-solc-output.json new file mode 100644 index 0000000..a22c3b9 --- /dev/null +++ b/bin/hardhat/contracts/OrgOperation-solc-output.json @@ -0,0 +1,52278 @@ +{ + "contracts": { + "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol": { + "OrgCreation": { + "abi": [ + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "inputs": [], + "name": "admin", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "changeIsStakedPaid", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "checkIfDownvoted", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "checkIfUpvoted", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "checkVerificationStatus", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + } + ], + "name": "countOfDownvotes", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + } + ], + "name": "countOfUpvotes", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + } + ], + "name": "countOfViews", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + }, + { + "internalType": "uint256", + "name": "current_time", + "type": "uint256" + } + ], + "name": "downVote", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "emptyListOrganization", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "isStaked", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "isVerified", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "organization_address", + "type": "address" + }, + { + "internalType": "string", + "name": "organization_name", + "type": "string" + }, + { + "internalType": "string", + "name": "document_cid", + "type": "string" + }, + { + "internalType": "string", + "name": "description", + "type": "string" + }, + { + "internalType": "uint256", + "name": "time", + "type": "uint256" + } + ], + "name": "registerOrg", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "totalOrganizations", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "unverifiedOrganizationsList", + "outputs": [ + { + "components": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + }, + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "doc_cid", + "type": "string" + }, + { + "internalType": "uint256", + "name": "upvotes", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "downvotes", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "views", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "verification_status", + "type": "bool" + }, + { + "internalType": "string", + "name": "desc", + "type": "string" + }, + { + "internalType": "uint256", + "name": "application_time", + "type": "uint256" + } + ], + "internalType": "struct OrgCreation.OrgDetails[]", + "name": "", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + }, + { + "internalType": "uint256", + "name": "current_time", + "type": "uint256" + } + ], + "name": "upVote", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "verifiedOrganizationsList", + "outputs": [ + { + "components": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + }, + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "doc_cid", + "type": "string" + }, + { + "internalType": "uint256", + "name": "upvotes", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "downvotes", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "views", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "verification_status", + "type": "bool" + }, + { + "internalType": "string", + "name": "desc", + "type": "string" + }, + { + "internalType": "uint256", + "name": "application_time", + "type": "uint256" + } + ], + "internalType": "struct OrgCreation.OrgDetails[]", + "name": "", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + }, + { + "internalType": "uint256", + "name": "current_time", + "type": "uint256" + } + ], + "name": "votingDone", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + } + ], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "evm": { + "bytecode": { + "functionDebugData": { + "@_137": { + "entryPoint": null, + "id": 137, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@countOfDownvotes_199": { + "entryPoint": null, + "id": 199, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@countOfUpvotes_186": { + "entryPoint": null, + "id": 186, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@countOfViews_217": { + "entryPoint": 615, + "id": 217, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@registerOrg_650": { + "entryPoint": 197, + "id": 650, + "parameterSlots": 5, + "returnSlots": 0 + }, + "abi_encode_tuple_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": null, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_dataslot_string_storage": { + "entryPoint": null, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "checked_add_t_uint256": { + "entryPoint": 1074, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "checked_sub_t_uint256": { + "entryPoint": 1096, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "clean_up_bytearray_end_slots_string_storage": { + "entryPoint": 765, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage": { + "entryPoint": 848, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "extract_byte_array_length": { + "entryPoint": 705, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "extract_used_part_and_set_length_of_short_byte_array": { + "entryPoint": null, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "panic_error_0x11": { + "entryPoint": 1052, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x41": { + "entryPoint": 683, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nodeType": "YulBlock", + "src": "0:3488:2", + "statements": [ + { + "nodeType": "YulBlock", + "src": "6:3:2", + "statements": [] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "188:182:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "205:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "216:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "198:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "198:21:2" + }, + "nodeType": "YulExpressionStatement", + "src": "198:21:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "239:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "250:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "235:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "235:18:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "255:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "228:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "228:30:2" + }, + "nodeType": "YulExpressionStatement", + "src": "228:30:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "278:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "289:2:2", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "274:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "274:18:2" + }, + { + "hexValue": "4f7267616e697a6174696f6e20616c7265616479207265676973746572656421", + "kind": "string", + "nodeType": "YulLiteral", + "src": "294:34:2", + "type": "", + "value": "Organization already registered!" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "267:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "267:62:2" + }, + "nodeType": "YulExpressionStatement", + "src": "267:62:2" + }, + { + "nodeType": "YulAssignment", + "src": "338:26:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "350:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "361:2:2", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "346:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "346:18:2" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "338:4:2" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "165:9:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "179:4:2", + "type": "" + } + ], + "src": "14:356:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "407:95:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "424:1:2", + "type": "", + "value": "0" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "431:3:2", + "type": "", + "value": "224" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "436:10:2", + "type": "", + "value": "0x4e487b71" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "427:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "427:20:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "417:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "417:31:2" + }, + "nodeType": "YulExpressionStatement", + "src": "417:31:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "464:1:2", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "467:4:2", + "type": "", + "value": "0x41" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "457:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "457:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "457:15:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "488:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "491:4:2", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "481:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "481:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "481:15:2" + } + ] + }, + "name": "panic_error_0x41", + "nodeType": "YulFunctionDefinition", + "src": "375:127:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "562:325:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "572:22:2", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "586:1:2", + "type": "", + "value": "1" + }, + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "589:4:2" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "582:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "582:12:2" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "572:6:2" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "603:38:2", + "value": { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "633:4:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "639:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "629:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "629:12:2" + }, + "variables": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulTypedName", + "src": "607:18:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "680:31:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "682:27:2", + "value": { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "696:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "704:4:2", + "type": "", + "value": "0x7f" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "692:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "692:17:2" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "682:6:2" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulIdentifier", + "src": "660:18:2" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "653:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "653:26:2" + }, + "nodeType": "YulIf", + "src": "650:61:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "770:111:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "791:1:2", + "type": "", + "value": "0" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "798:3:2", + "type": "", + "value": "224" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "803:10:2", + "type": "", + "value": "0x4e487b71" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "794:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "794:20:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "784:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "784:31:2" + }, + "nodeType": "YulExpressionStatement", + "src": "784:31:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "835:1:2", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "838:4:2", + "type": "", + "value": "0x22" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "828:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "828:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "828:15:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "863:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "866:4:2", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "856:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "856:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "856:15:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulIdentifier", + "src": "726:18:2" + }, + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "749:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "757:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "746:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "746:14:2" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "723:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "723:38:2" + }, + "nodeType": "YulIf", + "src": "720:161:2" + } + ] + }, + "name": "extract_byte_array_length", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "542:4:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "551:6:2", + "type": "" + } + ], + "src": "507:380:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "948:65:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "965:1:2", + "type": "", + "value": "0" + }, + { + "name": "ptr", + "nodeType": "YulIdentifier", + "src": "968:3:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "958:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "958:14:2" + }, + "nodeType": "YulExpressionStatement", + "src": "958:14:2" + }, + { + "nodeType": "YulAssignment", + "src": "981:26:2", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "999:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1002:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "keccak256", + "nodeType": "YulIdentifier", + "src": "989:9:2" + }, + "nodeType": "YulFunctionCall", + "src": "989:18:2" + }, + "variableNames": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "981:4:2" + } + ] + } + ] + }, + "name": "array_dataslot_string_storage", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nodeType": "YulTypedName", + "src": "931:3:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "939:4:2", + "type": "" + } + ], + "src": "892:121:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1099:464:2", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "1132:425:2", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "1146:11:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1156:1:2", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "1150:2:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1177:2:2" + }, + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "1181:5:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1170:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "1170:17:2" + }, + "nodeType": "YulExpressionStatement", + "src": "1170:17:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1200:31:2", + "value": { + "arguments": [ + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1222:2:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1226:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "keccak256", + "nodeType": "YulIdentifier", + "src": "1212:9:2" + }, + "nodeType": "YulFunctionCall", + "src": "1212:19:2" + }, + "variables": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "1204:4:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1244:57:2", + "value": { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "1267:4:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1277:1:2", + "type": "", + "value": "5" + }, + { + "arguments": [ + { + "name": "startIndex", + "nodeType": "YulIdentifier", + "src": "1284:10:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1296:2:2", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1280:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1280:19:2" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "1273:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1273:27:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1263:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1263:38:2" + }, + "variables": [ + { + "name": "deleteStart", + "nodeType": "YulTypedName", + "src": "1248:11:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1338:23:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "1340:19:2", + "value": { + "name": "data", + "nodeType": "YulIdentifier", + "src": "1355:4:2" + }, + "variableNames": [ + { + "name": "deleteStart", + "nodeType": "YulIdentifier", + "src": "1340:11:2" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "startIndex", + "nodeType": "YulIdentifier", + "src": "1320:10:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1332:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "1317:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "1317:20:2" + }, + "nodeType": "YulIf", + "src": "1314:47:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1374:41:2", + "value": { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "1388:4:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1398:1:2", + "type": "", + "value": "5" + }, + { + "arguments": [ + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "1405:3:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1410:2:2", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1401:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1401:12:2" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "1394:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1394:20:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1384:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1384:31:2" + }, + "variables": [ + { + "name": "_2", + "nodeType": "YulTypedName", + "src": "1378:2:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1428:24:2", + "value": { + "name": "deleteStart", + "nodeType": "YulIdentifier", + "src": "1441:11:2" + }, + "variables": [ + { + "name": "start", + "nodeType": "YulTypedName", + "src": "1432:5:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1526:21:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "1535:5:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1542:2:2" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "1528:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "1528:17:2" + }, + "nodeType": "YulExpressionStatement", + "src": "1528:17:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "1476:5:2" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "1483:2:2" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "1473:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "1473:13:2" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "1487:26:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "1489:22:2", + "value": { + "arguments": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "1502:5:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1509:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1498:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1498:13:2" + }, + "variableNames": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "1489:5:2" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "1469:3:2", + "statements": [] + }, + "src": "1465:82:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "1115:3:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1120:2:2", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "1112:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "1112:11:2" + }, + "nodeType": "YulIf", + "src": "1109:448:2" + } + ] + }, + "name": "clean_up_bytearray_end_slots_string_storage", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "array", + "nodeType": "YulTypedName", + "src": "1071:5:2", + "type": "" + }, + { + "name": "len", + "nodeType": "YulTypedName", + "src": "1078:3:2", + "type": "" + }, + { + "name": "startIndex", + "nodeType": "YulTypedName", + "src": "1083:10:2", + "type": "" + } + ], + "src": "1018:545:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1653:81:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "1663:65:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "1678:4:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1696:1:2", + "type": "", + "value": "3" + }, + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "1699:3:2" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "1692:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1692:11:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1709:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "1705:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1705:6:2" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "1688:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1688:24:2" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "1684:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1684:29:2" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "1674:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1674:40:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1720:1:2", + "type": "", + "value": "1" + }, + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "1723:3:2" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "1716:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1716:11:2" + } + ], + "functionName": { + "name": "or", + "nodeType": "YulIdentifier", + "src": "1671:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "1671:57:2" + }, + "variableNames": [ + { + "name": "used", + "nodeType": "YulIdentifier", + "src": "1663:4:2" + } + ] + } + ] + }, + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "1630:4:2", + "type": "" + }, + { + "name": "len", + "nodeType": "YulTypedName", + "src": "1636:3:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "used", + "nodeType": "YulTypedName", + "src": "1644:4:2", + "type": "" + } + ], + "src": "1568:166:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1835:1256:2", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "1845:24:2", + "value": { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "1865:3:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "1859:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "1859:10:2" + }, + "variables": [ + { + "name": "newLen", + "nodeType": "YulTypedName", + "src": "1849:6:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1912:22:2", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "1914:16:2" + }, + "nodeType": "YulFunctionCall", + "src": "1914:18:2" + }, + "nodeType": "YulExpressionStatement", + "src": "1914:18:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "1884:6:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1900:2:2", + "type": "", + "value": "64" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1904:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "1896:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1896:10:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1908:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "1892:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1892:18:2" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "1881:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "1881:30:2" + }, + "nodeType": "YulIf", + "src": "1878:56:2" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "1987:4:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "2025:4:2" + } + ], + "functionName": { + "name": "sload", + "nodeType": "YulIdentifier", + "src": "2019:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "2019:11:2" + } + ], + "functionName": { + "name": "extract_byte_array_length", + "nodeType": "YulIdentifier", + "src": "1993:25:2" + }, + "nodeType": "YulFunctionCall", + "src": "1993:38:2" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "2033:6:2" + } + ], + "functionName": { + "name": "clean_up_bytearray_end_slots_string_storage", + "nodeType": "YulIdentifier", + "src": "1943:43:2" + }, + "nodeType": "YulFunctionCall", + "src": "1943:97:2" + }, + "nodeType": "YulExpressionStatement", + "src": "1943:97:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2049:18:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2066:1:2", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "srcOffset", + "nodeType": "YulTypedName", + "src": "2053:9:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2076:23:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2095:4:2", + "type": "", + "value": "0x20" + }, + "variables": [ + { + "name": "srcOffset_1", + "nodeType": "YulTypedName", + "src": "2080:11:2", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "2108:24:2", + "value": { + "name": "srcOffset_1", + "nodeType": "YulIdentifier", + "src": "2121:11:2" + }, + "variableNames": [ + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "2108:9:2" + } + ] + }, + { + "cases": [ + { + "body": { + "nodeType": "YulBlock", + "src": "2178:656:2", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "2192:35:2", + "value": { + "arguments": [ + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "2211:6:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2223:2:2", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "2219:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2219:7:2" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "2207:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2207:20:2" + }, + "variables": [ + { + "name": "loopEnd", + "nodeType": "YulTypedName", + "src": "2196:7:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2240:49:2", + "value": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "2284:4:2" + } + ], + "functionName": { + "name": "array_dataslot_string_storage", + "nodeType": "YulIdentifier", + "src": "2254:29:2" + }, + "nodeType": "YulFunctionCall", + "src": "2254:35:2" + }, + "variables": [ + { + "name": "dstPtr", + "nodeType": "YulTypedName", + "src": "2244:6:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2302:10:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2311:1:2", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "2306:1:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2389:172:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "2414:6:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "2432:3:2" + }, + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "2437:9:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2428:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2428:19:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "2422:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "2422:26:2" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "2407:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "2407:42:2" + }, + "nodeType": "YulExpressionStatement", + "src": "2407:42:2" + }, + { + "nodeType": "YulAssignment", + "src": "2466:24:2", + "value": { + "arguments": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "2480:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2488:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2476:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2476:14:2" + }, + "variableNames": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "2466:6:2" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "2507:40:2", + "value": { + "arguments": [ + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "2524:9:2" + }, + { + "name": "srcOffset_1", + "nodeType": "YulIdentifier", + "src": "2535:11:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2520:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2520:27:2" + }, + "variableNames": [ + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "2507:9:2" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "2336:1:2" + }, + { + "name": "loopEnd", + "nodeType": "YulIdentifier", + "src": "2339:7:2" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "2333:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "2333:14:2" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "2348:28:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "2350:24:2", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "2359:1:2" + }, + { + "name": "srcOffset_1", + "nodeType": "YulIdentifier", + "src": "2362:11:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2355:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2355:19:2" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "2350:1:2" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "2329:3:2", + "statements": [] + }, + "src": "2325:236:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2609:166:2", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "2627:43:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "2654:3:2" + }, + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "2659:9:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2650:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2650:19:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "2644:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "2644:26:2" + }, + "variables": [ + { + "name": "lastValue", + "nodeType": "YulTypedName", + "src": "2631:9:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "2694:6:2" + }, + { + "arguments": [ + { + "name": "lastValue", + "nodeType": "YulIdentifier", + "src": "2706:9:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2733:1:2", + "type": "", + "value": "3" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "2736:6:2" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "2729:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2729:14:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2745:3:2", + "type": "", + "value": "248" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "2725:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2725:24:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2755:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "2751:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2751:6:2" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "2721:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2721:37:2" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "2717:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2717:42:2" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "2702:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2702:58:2" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "2687:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "2687:74:2" + }, + "nodeType": "YulExpressionStatement", + "src": "2687:74:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "loopEnd", + "nodeType": "YulIdentifier", + "src": "2580:7:2" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "2589:6:2" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "2577:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "2577:19:2" + }, + "nodeType": "YulIf", + "src": "2574:201:2" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "2795:4:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2809:1:2", + "type": "", + "value": "1" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "2812:6:2" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "2805:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2805:14:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2821:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2801:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2801:22:2" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "2788:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "2788:36:2" + }, + "nodeType": "YulExpressionStatement", + "src": "2788:36:2" + } + ] + }, + "nodeType": "YulCase", + "src": "2171:663:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2176:1:2", + "type": "", + "value": "1" + } + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2851:234:2", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "2865:14:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2878:1:2", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "2869:5:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2914:67:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "2932:35:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "2951:3:2" + }, + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "2956:9:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2947:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2947:19:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "2941:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "2941:26:2" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "2932:5:2" + } + ] + } + ] + }, + "condition": { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "2895:6:2" + }, + "nodeType": "YulIf", + "src": "2892:89:2" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "3001:4:2" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "3060:5:2" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "3067:6:2" + } + ], + "functionName": { + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nodeType": "YulIdentifier", + "src": "3007:52:2" + }, + "nodeType": "YulFunctionCall", + "src": "3007:67:2" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "2994:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "2994:81:2" + }, + "nodeType": "YulExpressionStatement", + "src": "2994:81:2" + } + ] + }, + "nodeType": "YulCase", + "src": "2843:242:2", + "value": "default" + } + ], + "expression": { + "arguments": [ + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "2151:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2159:2:2", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "2148:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "2148:14:2" + }, + "nodeType": "YulSwitch", + "src": "2141:944:2" + } + ] + }, + "name": "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nodeType": "YulTypedName", + "src": "1820:4:2", + "type": "" + }, + { + "name": "src", + "nodeType": "YulTypedName", + "src": "1826:3:2", + "type": "" + } + ], + "src": "1739:1352:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3128:95:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3145:1:2", + "type": "", + "value": "0" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3152:3:2", + "type": "", + "value": "224" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3157:10:2", + "type": "", + "value": "0x4e487b71" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "3148:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3148:20:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "3138:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "3138:31:2" + }, + "nodeType": "YulExpressionStatement", + "src": "3138:31:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3185:1:2", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3188:4:2", + "type": "", + "value": "0x11" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "3178:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "3178:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "3178:15:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3209:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3212:4:2", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "3202:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "3202:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "3202:15:2" + } + ] + }, + "name": "panic_error_0x11", + "nodeType": "YulFunctionDefinition", + "src": "3096:127:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3276:77:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "3286:16:2", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "3297:1:2" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "3300:1:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3293:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3293:9:2" + }, + "variableNames": [ + { + "name": "sum", + "nodeType": "YulIdentifier", + "src": "3286:3:2" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3325:22:2", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nodeType": "YulIdentifier", + "src": "3327:16:2" + }, + "nodeType": "YulFunctionCall", + "src": "3327:18:2" + }, + "nodeType": "YulExpressionStatement", + "src": "3327:18:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "3317:1:2" + }, + { + "name": "sum", + "nodeType": "YulIdentifier", + "src": "3320:3:2" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "3314:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "3314:10:2" + }, + "nodeType": "YulIf", + "src": "3311:36:2" + } + ] + }, + "name": "checked_add_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nodeType": "YulTypedName", + "src": "3259:1:2", + "type": "" + }, + { + "name": "y", + "nodeType": "YulTypedName", + "src": "3262:1:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "sum", + "nodeType": "YulTypedName", + "src": "3268:3:2", + "type": "" + } + ], + "src": "3228:125:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3407:79:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "3417:17:2", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "3429:1:2" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "3432:1:2" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "3425:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3425:9:2" + }, + "variableNames": [ + { + "name": "diff", + "nodeType": "YulIdentifier", + "src": "3417:4:2" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3458:22:2", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nodeType": "YulIdentifier", + "src": "3460:16:2" + }, + "nodeType": "YulFunctionCall", + "src": "3460:18:2" + }, + "nodeType": "YulExpressionStatement", + "src": "3460:18:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "diff", + "nodeType": "YulIdentifier", + "src": "3449:4:2" + }, + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "3455:1:2" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "3446:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "3446:11:2" + }, + "nodeType": "YulIf", + "src": "3443:37:2" + } + ] + }, + "name": "checked_sub_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nodeType": "YulTypedName", + "src": "3389:1:2", + "type": "" + }, + { + "name": "y", + "nodeType": "YulTypedName", + "src": "3392:1:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "diff", + "nodeType": "YulTypedName", + "src": "3398:4:2", + "type": "" + } + ], + "src": "3358:128:2" + } + ] + }, + "contents": "{\n { }\n function abi_encode_tuple_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 32)\n mstore(add(headStart, 64), \"Organization already registered!\")\n tail := add(headStart, 96)\n }\n function panic_error_0x41()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function extract_byte_array_length(data) -> length\n {\n length := shr(1, data)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) { length := and(length, 0x7f) }\n if eq(outOfPlaceEncoding, lt(length, 32))\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n }\n function array_dataslot_string_storage(ptr) -> data\n {\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n }\n function clean_up_bytearray_end_slots_string_storage(array, len, startIndex)\n {\n if gt(len, 31)\n {\n let _1 := 0\n mstore(_1, array)\n let data := keccak256(_1, 0x20)\n let deleteStart := add(data, shr(5, add(startIndex, 31)))\n if lt(startIndex, 0x20) { deleteStart := data }\n let _2 := add(data, shr(5, add(len, 31)))\n let start := deleteStart\n for { } lt(start, _2) { start := add(start, 1) }\n { sstore(start, _1) }\n }\n }\n function extract_used_part_and_set_length_of_short_byte_array(data, len) -> used\n {\n used := or(and(data, not(shr(shl(3, len), not(0)))), shl(1, len))\n }\n function copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage(slot, src)\n {\n let newLen := mload(src)\n if gt(newLen, sub(shl(64, 1), 1)) { panic_error_0x41() }\n clean_up_bytearray_end_slots_string_storage(slot, extract_byte_array_length(sload(slot)), newLen)\n let srcOffset := 0\n let srcOffset_1 := 0x20\n srcOffset := srcOffset_1\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(31))\n let dstPtr := array_dataslot_string_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, srcOffset_1) }\n {\n sstore(dstPtr, mload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, srcOffset_1)\n }\n if lt(loopEnd, newLen)\n {\n let lastValue := mload(add(src, srcOffset))\n sstore(dstPtr, and(lastValue, not(shr(and(shl(3, newLen), 248), not(0)))))\n }\n sstore(slot, add(shl(1, newLen), 1))\n }\n default {\n let value := 0\n if newLen\n {\n value := mload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n function panic_error_0x11()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n function checked_add_t_uint256(x, y) -> sum\n {\n sum := add(x, y)\n if gt(x, sum) { panic_error_0x11() }\n }\n function checked_sub_t_uint256(x, y) -> diff\n {\n diff := sub(x, y)\n if gt(diff, x) { panic_error_0x11() }\n }\n}", + "id": 2, + "language": "Yul", + "name": "#utility.yul" + } + ], + "linkReferences": {}, + "object": "608060405260016008553480156200001657600080fd5b50600780546001600160a01b031916339081179091556706f05b59d3b20000600a556000600b908155604080518082018252600581526427bbb732b960d91b6020808301919091528251808401845260048152634e6f6e6560e01b8183015283518085019094529383526a2232b9b1b934b83a34b7b760a91b90830152620000a29392909142620000c5565b336000908152602081905260409020600601805460ff191660011790556200045e565b6001600160a01b0385166000908152602081905260409020600d015415620001335760405162461bcd60e51b815260206004820181905260248201527f4f7267616e697a6174696f6e20616c7265616479207265676973746572656421604482015260640160405180910390fd5b6001600160a01b038516600081815260208190526040902080546001600160a01b03191690911781556001016200016b858262000350565b506001600160a01b038516600090815260208190526040902060020162000193848262000350565b506001600160a01b0385166000908152602081905260409020600b01620001bb838262000350565b50620001cb816202a30062000432565b6001600160a01b0386166000908152602081905260409020600d0155620001f28562000267565b620001ff90600162000432565b6001600160a01b039095166000818152602081905260408120600501969096556004805460018101825596527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b90950180546001600160a01b03191690951790945550505050565b6001600160a01b0381166000908152602081905260408120600481015460039091015460095462000299919062000448565b620002a5919062000448565b92915050565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620002d657607f821691505b602082108103620002f757634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200034b57600081815260208120601f850160051c81016020861015620003265750805b601f850160051c820191505b81811015620003475782815560010162000332565b5050505b505050565b81516001600160401b038111156200036c576200036c620002ab565b62000384816200037d8454620002c1565b84620002fd565b602080601f831160018114620003bc5760008415620003a35750858301515b600019600386901b1c1916600185901b17855562000347565b600085815260208120601f198616915b82811015620003ed57888601518255948401946001909101908401620003cc565b50858210156200040c5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b80820180821115620002a557620002a56200041c565b81810381811115620002a557620002a56200041c565b611785806200046e6000396000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c80638fc0ed2f116100a2578063e257911411610071578063e257911414610266578063e3323aba14610279578063e75176b514610294578063f15c01dd146102a7578063f851a440146102ba57600080fd5b80638fc0ed2f146101fd578063a1b0ffe014610205578063b7627e4114610227578063c9dfca101461025357600080fd5b80634cf5d552116100e95780634cf5d552146101845780635cf9303f1461019b5780635d0161f1146101c75780636fc3911c146101cf57806380007e83146101e257600080fd5b80632d80468d1461011b5780633e85747e14610139578063440370fe1461015c5780634648df2a14610171575b600080fd5b6101236102e5565b60405161013091906111e5565b60405180910390f35b61014c6101473660046112ef565b610675565b6040519015158152602001610130565b61016f61016a3660046113b4565b6106a2565b005b61014c61017f366004611455565b610838565b61018d60095481565b604051908152602001610130565b61018d6101a93660046112ef565b6001600160a01b031660009081526020819052604090206003015490565b61012361086d565b61014c6101dd3660046112ef565b610b84565b3360009081526020819052604090206006015460ff1661014c565b61016f610bd1565b61016f336000908152602081905260409020600e01805460ff19166001179055565b61018d6102353660046112ef565b6001600160a01b031660009081526020819052604090206004015490565b61014c6102613660046112ef565b610cb8565b61014c610274366004611455565b610ce5565b336000908152602081905260409020600e015460ff1661014c565b61018d6102a23660046112ef565b610ec7565b61014c6102b5366004611455565b610f01565b6007546102cd906001600160a01b031681565b6040516001600160a01b039091168152602001610130565b6004546008546060919060009081906102fe9084611495565b67ffffffffffffffff81111561031657610316611311565b60405190808252806020026020018201604052801561034f57816020015b61033c6110d8565b8152602001906001900390816103345790505b50905060005b8381101561066d57600060048281548110610372576103726114a8565b60009182526020808320909101546001600160a01b03168083529082905260409091206006015490915060ff1661065a5760408051610120810182526001600160a01b0380841660008181526020818152948120805490931684529081528084526001909101805491938301916103e8906114be565b80601f0160208091040260200160405190810160405280929190818152602001828054610414906114be565b80156104615780601f1061043657610100808354040283529160200191610461565b820191906000526020600020905b81548152906001019060200180831161044457829003601f168201915b50505050508152602001600080856001600160a01b03166001600160a01b03168152602001908152602001600020600201805461049d906114be565b80601f01602080910402602001604051908101604052809291908181526020018280546104c9906114be565b80156105165780601f106104eb57610100808354040283529160200191610516565b820191906000526020600020905b8154815290600101906020018083116104f957829003601f168201915b50505091835250506001600160a01b03841660008181526020818152604080832060038101548387015260048101549186019190915260058101546060860152600681015460ff161515608086015292825252600b01805460a09092019161057d906114be565b80601f01602080910402602001604051908101604052809291908181526020018280546105a9906114be565b80156105f65780601f106105cb576101008083540402835291602001916105f6565b820191906000526020600020905b8154815290600101906020018083116105d957829003601f168201915b50505050508152602001600080856001600160a01b03166001600160a01b03168152602001908152602001600020600d0154815250905080848681518110610640576106406114a8565b60209081029190910101526106566001866114f8565b9450505b50806106658161150b565b915050610355565b509392505050565b6001600160a01b031660009081526020818152604080832033845260090190915290205460ff1660011490565b6001600160a01b0385166000908152602081905260409020600d0154156107105760405162461bcd60e51b815260206004820181905260248201527f4f7267616e697a6174696f6e20616c726561647920726567697374657265642160448201526064015b60405180910390fd5b6001600160a01b038516600081815260208190526040902080546001600160a01b03191690911781556001016107468582611573565b506001600160a01b038516600090815260208190526040902060020161076c8482611573565b506001600160a01b0385166000908152602081905260409020600b016107928382611573565b506107a0816202a3006114f8565b6001600160a01b0386166000908152602081905260409020600d01556107c585610ec7565b6107d09060016114f8565b6001600160a01b039095166000818152602081905260408120600501969096556004805460018101825596527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b90950180546001600160a01b03191690951790945550505050565b6001600160a01b0382166000908152602081905260408120600d015482111561086357506001610867565b5060005b92915050565b60045460085460609190600090819067ffffffffffffffff81111561089457610894611311565b6040519080825280602002602001820160405280156108cd57816020015b6108ba6110d8565b8152602001906001900390816108b25790505b50905060005b8381101561066d576000600482815481106108f0576108f06114a8565b60009182526020808320909101546001600160a01b03168083529082905260409091206006015490915060ff1615610b71576001600160a01b0380821660009081526020818152604080832081516101208101909252805490941681526001840180549192830191610961906114be565b80601f016020809104026020016040519081016040528092919081815260200182805461098d906114be565b80156109da5780601f106109af576101008083540402835291602001916109da565b820191906000526020600020905b8154815290600101906020018083116109bd57829003601f168201915b505050505081526020018360020180546109f3906114be565b80601f0160208091040260200160405190810160405280929190818152602001828054610a1f906114be565b8015610a6c5780601f10610a4157610100808354040283529160200191610a6c565b820191906000526020600020905b815481529060010190602001808311610a4f57829003601f168201915b5050509183525050600384015460208201526004840154604082015260058401546060820152600684015460ff1615156080820152600b8401805460a090920191610ab6906114be565b80601f0160208091040260200160405190810160405280929190818152602001828054610ae2906114be565b8015610b2f5780601f10610b0457610100808354040283529160200191610b2f565b820191906000526020600020905b815481529060010190602001808311610b1257829003601f168201915b5050505050815260200183600d0154815250905080858781518110610b5657610b566114a8565b6020908102919091010152610b6c6001876114f8565b955050505b5080610b7c8161150b565b9150506108d3565b60006009546033610b959190611633565b6001600160a01b038316600090815260208190526040902060030154610bbc906064611633565b10610bc957506001919050565b506000919050565b600c5460005b81811015610cb457600c805480610bf057610bf061164a565b600082815260208120600f6000199093019283020180546001600160a01b031916815590610c21600183018261112f565b610c2f60028301600061112f565b600060038301819055600483018190556005830181905560068301805460ff19169055610c6090600784019061116c565b610c6e60088301600061116c565b600a820160009055600b82016000610c86919061112f565b506000600c8201819055600d820155600e01805460ff19169055905580610cac8161150b565b915050610bd7565b5050565b6001600160a01b031660009081526020818152604080832033845260090190915290205460ff1660021490565b6001600160a01b0382166000908152602081905260408120600d015483908203610d215760405162461bcd60e51b815260040161070790611660565b6001600160a01b03811660009081526020819052604090206006015460ff1615610d8d5760405162461bcd60e51b815260206004820152601e60248201527f4f7267616e697a6174696f6e20616c72656164792076657269666965642100006044820152606401610707565b336000908152602081905260409020600d015415801590610dc057503360009081526020819052604090206006015460ff165b610ddc5760405162461bcd60e51b8152600401610707906116a4565b610de581610cb8565b158015610df85750610df681610675565b155b610e145760405162461bcd60e51b815260040161070790611701565b6001600160a01b0384166000908152602081905260408120600301805460019290610e409084906114f8565b90915550506001600160a01b0384166000908152602081815260408083206007810180546001810182559085528385200180546001600160a01b0319163390811790915584526009019091529020805460ff19166002179055610ea38484610838565b15610ebb57610eb184610b84565b5060019150610ec0565b600091505b5092915050565b6001600160a01b03811660009081526020819052604081206004810154600390910154600954610ef79190611495565b6108679190611495565b6001600160a01b0382166000908152602081905260408120600d015483908203610f3d5760405162461bcd60e51b815260040161070790611660565b6001600160a01b03811660009081526020819052604090206006015460ff1615610fa95760405162461bcd60e51b815260206004820152601e60248201527f4f7267616e697a6174696f6e20616c72656164792076657269666965642100006044820152606401610707565b336000908152602081905260409020600d015415801590610fdc57503360009081526020819052604090206006015460ff165b610ff85760405162461bcd60e51b8152600401610707906116a4565b61100181610cb8565b158015611014575061101281610675565b155b6110305760405162461bcd60e51b815260040161070790611701565b6001600160a01b038416600090815260208190526040812060040180546001929061105c9084906114f8565b90915550506001600160a01b038416600090815260208181526040808320600881018054600181810183559186528486200180546001600160a01b0319163390811790915585526009909101909252909120805460ff191690911790556110c38484610838565b15610ebb576110d184610b84565b9150610ec0565b60405180610120016040528060006001600160a01b03168152602001606081526020016060815260200160008152602001600081526020016000815260200160001515815260200160608152602001600081525090565b50805461113b906114be565b6000825580601f1061114b575050565b601f0160209004906000526020600020908101906111699190611186565b50565b508054600082559060005260206000209081019061116991905b5b8082111561119b5760008155600101611187565b5090565b6000815180845260005b818110156111c5576020818501810151868301820152016111a9565b506000602082860101526020601f19601f83011685010191505092915050565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b838110156112c557888303603f19018552815180516001600160a01b0316845261012088820151818a8701526112448287018261119f565b915050878201518582038987015261125c828261119f565b606084810151908801526080808501519088015260a0808501519088015260c08085015115159088015260e080850151888303828a015291935091506112a2838261119f565b61010094850151979094019690965250509487019492509086019060010161120c565b509098975050505050505050565b80356001600160a01b03811681146112ea57600080fd5b919050565b60006020828403121561130157600080fd5b61130a826112d3565b9392505050565b634e487b7160e01b600052604160045260246000fd5b600082601f83011261133857600080fd5b813567ffffffffffffffff8082111561135357611353611311565b604051601f8301601f19908116603f0116810190828211818310171561137b5761137b611311565b8160405283815286602085880101111561139457600080fd5b836020870160208301376000602085830101528094505050505092915050565b600080600080600060a086880312156113cc57600080fd5b6113d5866112d3565b9450602086013567ffffffffffffffff808211156113f257600080fd5b6113fe89838a01611327565b9550604088013591508082111561141457600080fd5b61142089838a01611327565b9450606088013591508082111561143657600080fd5b5061144388828901611327565b95989497509295608001359392505050565b6000806040838503121561146857600080fd5b611471836112d3565b946020939093013593505050565b634e487b7160e01b600052601160045260246000fd5b818103818111156108675761086761147f565b634e487b7160e01b600052603260045260246000fd5b600181811c908216806114d257607f821691505b6020821081036114f257634e487b7160e01b600052602260045260246000fd5b50919050565b808201808211156108675761086761147f565b60006001820161151d5761151d61147f565b5060010190565b601f82111561156e57600081815260208120601f850160051c8101602086101561154b5750805b601f850160051c820191505b8181101561156a57828155600101611557565b5050505b505050565b815167ffffffffffffffff81111561158d5761158d611311565b6115a18161159b84546114be565b84611524565b602080601f8311600181146115d657600084156115be5750858301515b600019600386901b1c1916600185901b17855561156a565b600085815260208120601f198616915b82811015611605578886015182559484019460019091019084016115e6565b50858210156116235787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b80820281158282048414176108675761086761147f565b634e487b7160e01b600052603160045260246000fd5b60208082526024908201527f4f7267616e697a6174696f6e206164647265737320646f6573206e6f742065786040820152636973742160e01b606082015260800190565b6020808252603a908201527f566f746572206f7267616e697a6174696f6e206973206e6f742076657269666960408201527f65642c206e6f74207065726d697474656420746f20766f746521000000000000606082015260800190565b6020808252602e908201527f566f746572206f7267616e697a6174696f6e2063616e6e6f7420766f7465206d60408201526d6f7265207468616e206f6e63652160901b60608201526080019056fea264697066735822122007f1ee91f43c26e5c1c6b7b758bd5caf86619d3d2b38a2792e365c32c8ab823364736f6c63430008110033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x1 PUSH1 0x8 SSTORE CALLVALUE DUP1 ISZERO PUSH3 0x16 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x7 DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND CALLER SWAP1 DUP2 OR SWAP1 SWAP2 SSTORE PUSH8 0x6F05B59D3B20000 PUSH1 0xA SSTORE PUSH1 0x0 PUSH1 0xB SWAP1 DUP2 SSTORE PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD DUP3 MSTORE PUSH1 0x5 DUP2 MSTORE PUSH5 0x27BBB732B9 PUSH1 0xD9 SHL PUSH1 0x20 DUP1 DUP4 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP3 MLOAD DUP1 DUP5 ADD DUP5 MSTORE PUSH1 0x4 DUP2 MSTORE PUSH4 0x4E6F6E65 PUSH1 0xE0 SHL DUP2 DUP4 ADD MSTORE DUP4 MLOAD DUP1 DUP6 ADD SWAP1 SWAP5 MSTORE SWAP4 DUP4 MSTORE PUSH11 0x2232B9B1B934B83A34B7B7 PUSH1 0xA9 SHL SWAP1 DUP4 ADD MSTORE PUSH3 0xA2 SWAP4 SWAP3 SWAP1 SWAP2 TIMESTAMP PUSH3 0xC5 JUMP JUMPDEST CALLER PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x6 ADD DUP1 SLOAD PUSH1 0xFF NOT AND PUSH1 0x1 OR SWAP1 SSTORE PUSH3 0x45E JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xD ADD SLOAD ISZERO PUSH3 0x133 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD DUP2 SWAP1 MSTORE PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x4F7267616E697A6174696F6E20616C7265616479207265676973746572656421 PUSH1 0x44 DUP3 ADD MSTORE PUSH1 0x64 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND SWAP1 SWAP2 OR DUP2 SSTORE PUSH1 0x1 ADD PUSH3 0x16B DUP6 DUP3 PUSH3 0x350 JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x2 ADD PUSH3 0x193 DUP5 DUP3 PUSH3 0x350 JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xB ADD PUSH3 0x1BB DUP4 DUP3 PUSH3 0x350 JUMP JUMPDEST POP PUSH3 0x1CB DUP2 PUSH3 0x2A300 PUSH3 0x432 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP7 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xD ADD SSTORE PUSH3 0x1F2 DUP6 PUSH3 0x267 JUMP JUMPDEST PUSH3 0x1FF SWAP1 PUSH1 0x1 PUSH3 0x432 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP6 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x5 ADD SWAP7 SWAP1 SWAP7 SSTORE PUSH1 0x4 DUP1 SLOAD PUSH1 0x1 DUP2 ADD DUP3 SSTORE SWAP7 MSTORE PUSH32 0x8A35ACFBC15FF81A39AE7D344FD709F28E8600B4AA8C65C6B64BFE7FE36BD19B SWAP1 SWAP6 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND SWAP1 SWAP6 OR SWAP1 SWAP5 SSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x4 DUP2 ADD SLOAD PUSH1 0x3 SWAP1 SWAP2 ADD SLOAD PUSH1 0x9 SLOAD PUSH3 0x299 SWAP2 SWAP1 PUSH3 0x448 JUMP JUMPDEST PUSH3 0x2A5 SWAP2 SWAP1 PUSH3 0x448 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH3 0x2D6 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH3 0x2F7 JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH3 0x34B JUMPI PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP2 ADD PUSH1 0x20 DUP7 LT ISZERO PUSH3 0x326 JUMPI POP DUP1 JUMPDEST PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP3 ADD SWAP2 POP JUMPDEST DUP2 DUP2 LT ISZERO PUSH3 0x347 JUMPI DUP3 DUP2 SSTORE PUSH1 0x1 ADD PUSH3 0x332 JUMP JUMPDEST POP POP POP JUMPDEST POP POP POP JUMP JUMPDEST DUP2 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT ISZERO PUSH3 0x36C JUMPI PUSH3 0x36C PUSH3 0x2AB JUMP JUMPDEST PUSH3 0x384 DUP2 PUSH3 0x37D DUP5 SLOAD PUSH3 0x2C1 JUMP JUMPDEST DUP5 PUSH3 0x2FD JUMP JUMPDEST PUSH1 0x20 DUP1 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH3 0x3BC JUMPI PUSH1 0x0 DUP5 ISZERO PUSH3 0x3A3 JUMPI POP DUP6 DUP4 ADD MLOAD JUMPDEST PUSH1 0x0 NOT PUSH1 0x3 DUP7 SWAP1 SHL SHR NOT AND PUSH1 0x1 DUP6 SWAP1 SHL OR DUP6 SSTORE PUSH3 0x347 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F NOT DUP7 AND SWAP2 JUMPDEST DUP3 DUP2 LT ISZERO PUSH3 0x3ED JUMPI DUP9 DUP7 ADD MLOAD DUP3 SSTORE SWAP5 DUP5 ADD SWAP5 PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 DUP5 ADD PUSH3 0x3CC JUMP JUMPDEST POP DUP6 DUP3 LT ISZERO PUSH3 0x40C JUMPI DUP8 DUP6 ADD MLOAD PUSH1 0x0 NOT PUSH1 0x3 DUP9 SWAP1 SHL PUSH1 0xF8 AND SHR NOT AND DUP2 SSTORE JUMPDEST POP POP POP POP POP PUSH1 0x1 SWAP1 DUP2 SHL ADD SWAP1 SSTORE POP JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST DUP1 DUP3 ADD DUP1 DUP3 GT ISZERO PUSH3 0x2A5 JUMPI PUSH3 0x2A5 PUSH3 0x41C JUMP JUMPDEST DUP2 DUP2 SUB DUP2 DUP2 GT ISZERO PUSH3 0x2A5 JUMPI PUSH3 0x2A5 PUSH3 0x41C JUMP JUMPDEST PUSH2 0x1785 DUP1 PUSH3 0x46E PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x116 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x8FC0ED2F GT PUSH2 0xA2 JUMPI DUP1 PUSH4 0xE2579114 GT PUSH2 0x71 JUMPI DUP1 PUSH4 0xE2579114 EQ PUSH2 0x266 JUMPI DUP1 PUSH4 0xE3323ABA EQ PUSH2 0x279 JUMPI DUP1 PUSH4 0xE75176B5 EQ PUSH2 0x294 JUMPI DUP1 PUSH4 0xF15C01DD EQ PUSH2 0x2A7 JUMPI DUP1 PUSH4 0xF851A440 EQ PUSH2 0x2BA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 PUSH4 0x8FC0ED2F EQ PUSH2 0x1FD JUMPI DUP1 PUSH4 0xA1B0FFE0 EQ PUSH2 0x205 JUMPI DUP1 PUSH4 0xB7627E41 EQ PUSH2 0x227 JUMPI DUP1 PUSH4 0xC9DFCA10 EQ PUSH2 0x253 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 PUSH4 0x4CF5D552 GT PUSH2 0xE9 JUMPI DUP1 PUSH4 0x4CF5D552 EQ PUSH2 0x184 JUMPI DUP1 PUSH4 0x5CF9303F EQ PUSH2 0x19B JUMPI DUP1 PUSH4 0x5D0161F1 EQ PUSH2 0x1C7 JUMPI DUP1 PUSH4 0x6FC3911C EQ PUSH2 0x1CF JUMPI DUP1 PUSH4 0x80007E83 EQ PUSH2 0x1E2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 PUSH4 0x2D80468D EQ PUSH2 0x11B JUMPI DUP1 PUSH4 0x3E85747E EQ PUSH2 0x139 JUMPI DUP1 PUSH4 0x440370FE EQ PUSH2 0x15C JUMPI DUP1 PUSH4 0x4648DF2A EQ PUSH2 0x171 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x123 PUSH2 0x2E5 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x130 SWAP2 SWAP1 PUSH2 0x11E5 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x14C PUSH2 0x147 CALLDATASIZE PUSH1 0x4 PUSH2 0x12EF JUMP JUMPDEST PUSH2 0x675 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x130 JUMP JUMPDEST PUSH2 0x16F PUSH2 0x16A CALLDATASIZE PUSH1 0x4 PUSH2 0x13B4 JUMP JUMPDEST PUSH2 0x6A2 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x14C PUSH2 0x17F CALLDATASIZE PUSH1 0x4 PUSH2 0x1455 JUMP JUMPDEST PUSH2 0x838 JUMP JUMPDEST PUSH2 0x18D PUSH1 0x9 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x130 JUMP JUMPDEST PUSH2 0x18D PUSH2 0x1A9 CALLDATASIZE PUSH1 0x4 PUSH2 0x12EF JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x3 ADD SLOAD SWAP1 JUMP JUMPDEST PUSH2 0x123 PUSH2 0x86D JUMP JUMPDEST PUSH2 0x14C PUSH2 0x1DD CALLDATASIZE PUSH1 0x4 PUSH2 0x12EF JUMP JUMPDEST PUSH2 0xB84 JUMP JUMPDEST CALLER PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x6 ADD SLOAD PUSH1 0xFF AND PUSH2 0x14C JUMP JUMPDEST PUSH2 0x16F PUSH2 0xBD1 JUMP JUMPDEST PUSH2 0x16F CALLER PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xE ADD DUP1 SLOAD PUSH1 0xFF NOT AND PUSH1 0x1 OR SWAP1 SSTORE JUMP JUMPDEST PUSH2 0x18D PUSH2 0x235 CALLDATASIZE PUSH1 0x4 PUSH2 0x12EF JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x4 ADD SLOAD SWAP1 JUMP JUMPDEST PUSH2 0x14C PUSH2 0x261 CALLDATASIZE PUSH1 0x4 PUSH2 0x12EF JUMP JUMPDEST PUSH2 0xCB8 JUMP JUMPDEST PUSH2 0x14C PUSH2 0x274 CALLDATASIZE PUSH1 0x4 PUSH2 0x1455 JUMP JUMPDEST PUSH2 0xCE5 JUMP JUMPDEST CALLER PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xE ADD SLOAD PUSH1 0xFF AND PUSH2 0x14C JUMP JUMPDEST PUSH2 0x18D PUSH2 0x2A2 CALLDATASIZE PUSH1 0x4 PUSH2 0x12EF JUMP JUMPDEST PUSH2 0xEC7 JUMP JUMPDEST PUSH2 0x14C PUSH2 0x2B5 CALLDATASIZE PUSH1 0x4 PUSH2 0x1455 JUMP JUMPDEST PUSH2 0xF01 JUMP JUMPDEST PUSH1 0x7 SLOAD PUSH2 0x2CD SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x130 JUMP JUMPDEST PUSH1 0x4 SLOAD PUSH1 0x8 SLOAD PUSH1 0x60 SWAP2 SWAP1 PUSH1 0x0 SWAP1 DUP2 SWAP1 PUSH2 0x2FE SWAP1 DUP5 PUSH2 0x1495 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x316 JUMPI PUSH2 0x316 PUSH2 0x1311 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x34F JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH2 0x33C PUSH2 0x10D8 JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x334 JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x66D JUMPI PUSH1 0x0 PUSH1 0x4 DUP3 DUP2 SLOAD DUP2 LT PUSH2 0x372 JUMPI PUSH2 0x372 PUSH2 0x14A8 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP1 DUP4 MSTORE SWAP1 DUP3 SWAP1 MSTORE PUSH1 0x40 SWAP1 SWAP2 KECCAK256 PUSH1 0x6 ADD SLOAD SWAP1 SWAP2 POP PUSH1 0xFF AND PUSH2 0x65A JUMPI PUSH1 0x40 DUP1 MLOAD PUSH2 0x120 DUP2 ADD DUP3 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP1 DUP5 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 DUP2 MSTORE SWAP5 DUP2 KECCAK256 DUP1 SLOAD SWAP1 SWAP4 AND DUP5 MSTORE SWAP1 DUP2 MSTORE DUP1 DUP5 MSTORE PUSH1 0x1 SWAP1 SWAP2 ADD DUP1 SLOAD SWAP2 SWAP4 DUP4 ADD SWAP2 PUSH2 0x3E8 SWAP1 PUSH2 0x14BE JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x414 SWAP1 PUSH2 0x14BE JUMP JUMPDEST DUP1 ISZERO PUSH2 0x461 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x436 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x461 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x444 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 DUP6 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD DUP1 SLOAD PUSH2 0x49D SWAP1 PUSH2 0x14BE JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x4C9 SWAP1 PUSH2 0x14BE JUMP JUMPDEST DUP1 ISZERO PUSH2 0x516 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x4EB JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x516 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x4F9 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP SWAP2 DUP4 MSTORE POP POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 PUSH1 0x3 DUP2 ADD SLOAD DUP4 DUP8 ADD MSTORE PUSH1 0x4 DUP2 ADD SLOAD SWAP2 DUP7 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0x5 DUP2 ADD SLOAD PUSH1 0x60 DUP7 ADD MSTORE PUSH1 0x6 DUP2 ADD SLOAD PUSH1 0xFF AND ISZERO ISZERO PUSH1 0x80 DUP7 ADD MSTORE SWAP3 DUP3 MSTORE MSTORE PUSH1 0xB ADD DUP1 SLOAD PUSH1 0xA0 SWAP1 SWAP3 ADD SWAP2 PUSH2 0x57D SWAP1 PUSH2 0x14BE JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x5A9 SWAP1 PUSH2 0x14BE JUMP JUMPDEST DUP1 ISZERO PUSH2 0x5F6 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x5CB JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x5F6 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x5D9 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 DUP6 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xD ADD SLOAD DUP2 MSTORE POP SWAP1 POP DUP1 DUP5 DUP7 DUP2 MLOAD DUP2 LT PUSH2 0x640 JUMPI PUSH2 0x640 PUSH2 0x14A8 JUMP JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MSTORE PUSH2 0x656 PUSH1 0x1 DUP7 PUSH2 0x14F8 JUMP JUMPDEST SWAP5 POP POP JUMPDEST POP DUP1 PUSH2 0x665 DUP2 PUSH2 0x150B JUMP JUMPDEST SWAP2 POP POP PUSH2 0x355 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 CALLER DUP5 MSTORE PUSH1 0x9 ADD SWAP1 SWAP2 MSTORE SWAP1 KECCAK256 SLOAD PUSH1 0xFF AND PUSH1 0x1 EQ SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xD ADD SLOAD ISZERO PUSH2 0x710 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD DUP2 SWAP1 MSTORE PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x4F7267616E697A6174696F6E20616C7265616479207265676973746572656421 PUSH1 0x44 DUP3 ADD MSTORE PUSH1 0x64 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND SWAP1 SWAP2 OR DUP2 SSTORE PUSH1 0x1 ADD PUSH2 0x746 DUP6 DUP3 PUSH2 0x1573 JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x2 ADD PUSH2 0x76C DUP5 DUP3 PUSH2 0x1573 JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xB ADD PUSH2 0x792 DUP4 DUP3 PUSH2 0x1573 JUMP JUMPDEST POP PUSH2 0x7A0 DUP2 PUSH3 0x2A300 PUSH2 0x14F8 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP7 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xD ADD SSTORE PUSH2 0x7C5 DUP6 PUSH2 0xEC7 JUMP JUMPDEST PUSH2 0x7D0 SWAP1 PUSH1 0x1 PUSH2 0x14F8 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP6 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x5 ADD SWAP7 SWAP1 SWAP7 SSTORE PUSH1 0x4 DUP1 SLOAD PUSH1 0x1 DUP2 ADD DUP3 SSTORE SWAP7 MSTORE PUSH32 0x8A35ACFBC15FF81A39AE7D344FD709F28E8600B4AA8C65C6B64BFE7FE36BD19B SWAP1 SWAP6 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND SWAP1 SWAP6 OR SWAP1 SWAP5 SSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0xD ADD SLOAD DUP3 GT ISZERO PUSH2 0x863 JUMPI POP PUSH1 0x1 PUSH2 0x867 JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x4 SLOAD PUSH1 0x8 SLOAD PUSH1 0x60 SWAP2 SWAP1 PUSH1 0x0 SWAP1 DUP2 SWAP1 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x894 JUMPI PUSH2 0x894 PUSH2 0x1311 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x8CD JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH2 0x8BA PUSH2 0x10D8 JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x8B2 JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x66D JUMPI PUSH1 0x0 PUSH1 0x4 DUP3 DUP2 SLOAD DUP2 LT PUSH2 0x8F0 JUMPI PUSH2 0x8F0 PUSH2 0x14A8 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP1 DUP4 MSTORE SWAP1 DUP3 SWAP1 MSTORE PUSH1 0x40 SWAP1 SWAP2 KECCAK256 PUSH1 0x6 ADD SLOAD SWAP1 SWAP2 POP PUSH1 0xFF AND ISZERO PUSH2 0xB71 JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP1 DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 DUP2 MLOAD PUSH2 0x120 DUP2 ADD SWAP1 SWAP3 MSTORE DUP1 SLOAD SWAP1 SWAP5 AND DUP2 MSTORE PUSH1 0x1 DUP5 ADD DUP1 SLOAD SWAP2 SWAP3 DUP4 ADD SWAP2 PUSH2 0x961 SWAP1 PUSH2 0x14BE JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x98D SWAP1 PUSH2 0x14BE JUMP JUMPDEST DUP1 ISZERO PUSH2 0x9DA JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x9AF JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x9DA JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x9BD JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD DUP4 PUSH1 0x2 ADD DUP1 SLOAD PUSH2 0x9F3 SWAP1 PUSH2 0x14BE JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0xA1F SWAP1 PUSH2 0x14BE JUMP JUMPDEST DUP1 ISZERO PUSH2 0xA6C JUMPI DUP1 PUSH1 0x1F LT PUSH2 0xA41 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0xA6C JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0xA4F JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP SWAP2 DUP4 MSTORE POP POP PUSH1 0x3 DUP5 ADD SLOAD PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x4 DUP5 ADD SLOAD PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x5 DUP5 ADD SLOAD PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x6 DUP5 ADD SLOAD PUSH1 0xFF AND ISZERO ISZERO PUSH1 0x80 DUP3 ADD MSTORE PUSH1 0xB DUP5 ADD DUP1 SLOAD PUSH1 0xA0 SWAP1 SWAP3 ADD SWAP2 PUSH2 0xAB6 SWAP1 PUSH2 0x14BE JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0xAE2 SWAP1 PUSH2 0x14BE JUMP JUMPDEST DUP1 ISZERO PUSH2 0xB2F JUMPI DUP1 PUSH1 0x1F LT PUSH2 0xB04 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0xB2F JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0xB12 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD DUP4 PUSH1 0xD ADD SLOAD DUP2 MSTORE POP SWAP1 POP DUP1 DUP6 DUP8 DUP2 MLOAD DUP2 LT PUSH2 0xB56 JUMPI PUSH2 0xB56 PUSH2 0x14A8 JUMP JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MSTORE PUSH2 0xB6C PUSH1 0x1 DUP8 PUSH2 0x14F8 JUMP JUMPDEST SWAP6 POP POP POP JUMPDEST POP DUP1 PUSH2 0xB7C DUP2 PUSH2 0x150B JUMP JUMPDEST SWAP2 POP POP PUSH2 0x8D3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x9 SLOAD PUSH1 0x33 PUSH2 0xB95 SWAP2 SWAP1 PUSH2 0x1633 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x3 ADD SLOAD PUSH2 0xBBC SWAP1 PUSH1 0x64 PUSH2 0x1633 JUMP JUMPDEST LT PUSH2 0xBC9 JUMPI POP PUSH1 0x1 SWAP2 SWAP1 POP JUMP JUMPDEST POP PUSH1 0x0 SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0xC SLOAD PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0xCB4 JUMPI PUSH1 0xC DUP1 SLOAD DUP1 PUSH2 0xBF0 JUMPI PUSH2 0xBF0 PUSH2 0x164A JUMP JUMPDEST PUSH1 0x0 DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0xF PUSH1 0x0 NOT SWAP1 SWAP4 ADD SWAP3 DUP4 MUL ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND DUP2 SSTORE SWAP1 PUSH2 0xC21 PUSH1 0x1 DUP4 ADD DUP3 PUSH2 0x112F JUMP JUMPDEST PUSH2 0xC2F PUSH1 0x2 DUP4 ADD PUSH1 0x0 PUSH2 0x112F JUMP JUMPDEST PUSH1 0x0 PUSH1 0x3 DUP4 ADD DUP2 SWAP1 SSTORE PUSH1 0x4 DUP4 ADD DUP2 SWAP1 SSTORE PUSH1 0x5 DUP4 ADD DUP2 SWAP1 SSTORE PUSH1 0x6 DUP4 ADD DUP1 SLOAD PUSH1 0xFF NOT AND SWAP1 SSTORE PUSH2 0xC60 SWAP1 PUSH1 0x7 DUP5 ADD SWAP1 PUSH2 0x116C JUMP JUMPDEST PUSH2 0xC6E PUSH1 0x8 DUP4 ADD PUSH1 0x0 PUSH2 0x116C JUMP JUMPDEST PUSH1 0xA DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0xB DUP3 ADD PUSH1 0x0 PUSH2 0xC86 SWAP2 SWAP1 PUSH2 0x112F JUMP JUMPDEST POP PUSH1 0x0 PUSH1 0xC DUP3 ADD DUP2 SWAP1 SSTORE PUSH1 0xD DUP3 ADD SSTORE PUSH1 0xE ADD DUP1 SLOAD PUSH1 0xFF NOT AND SWAP1 SSTORE SWAP1 SSTORE DUP1 PUSH2 0xCAC DUP2 PUSH2 0x150B JUMP JUMPDEST SWAP2 POP POP PUSH2 0xBD7 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 CALLER DUP5 MSTORE PUSH1 0x9 ADD SWAP1 SWAP2 MSTORE SWAP1 KECCAK256 SLOAD PUSH1 0xFF AND PUSH1 0x2 EQ SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0xD ADD SLOAD DUP4 SWAP1 DUP3 SUB PUSH2 0xD21 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x707 SWAP1 PUSH2 0x1660 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x6 ADD SLOAD PUSH1 0xFF AND ISZERO PUSH2 0xD8D JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x1E PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x4F7267616E697A6174696F6E20616C7265616479207665726966696564210000 PUSH1 0x44 DUP3 ADD MSTORE PUSH1 0x64 ADD PUSH2 0x707 JUMP JUMPDEST CALLER PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xD ADD SLOAD ISZERO DUP1 ISZERO SWAP1 PUSH2 0xDC0 JUMPI POP CALLER PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x6 ADD SLOAD PUSH1 0xFF AND JUMPDEST PUSH2 0xDDC JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x707 SWAP1 PUSH2 0x16A4 JUMP JUMPDEST PUSH2 0xDE5 DUP2 PUSH2 0xCB8 JUMP JUMPDEST ISZERO DUP1 ISZERO PUSH2 0xDF8 JUMPI POP PUSH2 0xDF6 DUP2 PUSH2 0x675 JUMP JUMPDEST ISZERO JUMPDEST PUSH2 0xE14 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x707 SWAP1 PUSH2 0x1701 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x3 ADD DUP1 SLOAD PUSH1 0x1 SWAP3 SWAP1 PUSH2 0xE40 SWAP1 DUP5 SWAP1 PUSH2 0x14F8 JUMP JUMPDEST SWAP1 SWAP2 SSTORE POP POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 PUSH1 0x7 DUP2 ADD DUP1 SLOAD PUSH1 0x1 DUP2 ADD DUP3 SSTORE SWAP1 DUP6 MSTORE DUP4 DUP6 KECCAK256 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND CALLER SWAP1 DUP2 OR SWAP1 SWAP2 SSTORE DUP5 MSTORE PUSH1 0x9 ADD SWAP1 SWAP2 MSTORE SWAP1 KECCAK256 DUP1 SLOAD PUSH1 0xFF NOT AND PUSH1 0x2 OR SWAP1 SSTORE PUSH2 0xEA3 DUP5 DUP5 PUSH2 0x838 JUMP JUMPDEST ISZERO PUSH2 0xEBB JUMPI PUSH2 0xEB1 DUP5 PUSH2 0xB84 JUMP JUMPDEST POP PUSH1 0x1 SWAP2 POP PUSH2 0xEC0 JUMP JUMPDEST PUSH1 0x0 SWAP2 POP JUMPDEST POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x4 DUP2 ADD SLOAD PUSH1 0x3 SWAP1 SWAP2 ADD SLOAD PUSH1 0x9 SLOAD PUSH2 0xEF7 SWAP2 SWAP1 PUSH2 0x1495 JUMP JUMPDEST PUSH2 0x867 SWAP2 SWAP1 PUSH2 0x1495 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0xD ADD SLOAD DUP4 SWAP1 DUP3 SUB PUSH2 0xF3D JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x707 SWAP1 PUSH2 0x1660 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x6 ADD SLOAD PUSH1 0xFF AND ISZERO PUSH2 0xFA9 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x1E PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x4F7267616E697A6174696F6E20616C7265616479207665726966696564210000 PUSH1 0x44 DUP3 ADD MSTORE PUSH1 0x64 ADD PUSH2 0x707 JUMP JUMPDEST CALLER PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xD ADD SLOAD ISZERO DUP1 ISZERO SWAP1 PUSH2 0xFDC JUMPI POP CALLER PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x6 ADD SLOAD PUSH1 0xFF AND JUMPDEST PUSH2 0xFF8 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x707 SWAP1 PUSH2 0x16A4 JUMP JUMPDEST PUSH2 0x1001 DUP2 PUSH2 0xCB8 JUMP JUMPDEST ISZERO DUP1 ISZERO PUSH2 0x1014 JUMPI POP PUSH2 0x1012 DUP2 PUSH2 0x675 JUMP JUMPDEST ISZERO JUMPDEST PUSH2 0x1030 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x707 SWAP1 PUSH2 0x1701 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x4 ADD DUP1 SLOAD PUSH1 0x1 SWAP3 SWAP1 PUSH2 0x105C SWAP1 DUP5 SWAP1 PUSH2 0x14F8 JUMP JUMPDEST SWAP1 SWAP2 SSTORE POP POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 PUSH1 0x8 DUP2 ADD DUP1 SLOAD PUSH1 0x1 DUP2 DUP2 ADD DUP4 SSTORE SWAP2 DUP7 MSTORE DUP5 DUP7 KECCAK256 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND CALLER SWAP1 DUP2 OR SWAP1 SWAP2 SSTORE DUP6 MSTORE PUSH1 0x9 SWAP1 SWAP2 ADD SWAP1 SWAP3 MSTORE SWAP1 SWAP2 KECCAK256 DUP1 SLOAD PUSH1 0xFF NOT AND SWAP1 SWAP2 OR SWAP1 SSTORE PUSH2 0x10C3 DUP5 DUP5 PUSH2 0x838 JUMP JUMPDEST ISZERO PUSH2 0xEBB JUMPI PUSH2 0x10D1 DUP5 PUSH2 0xB84 JUMP JUMPDEST SWAP2 POP PUSH2 0xEC0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH2 0x120 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE POP SWAP1 JUMP JUMPDEST POP DUP1 SLOAD PUSH2 0x113B SWAP1 PUSH2 0x14BE JUMP JUMPDEST PUSH1 0x0 DUP3 SSTORE DUP1 PUSH1 0x1F LT PUSH2 0x114B JUMPI POP POP JUMP JUMPDEST PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 DUP2 ADD SWAP1 PUSH2 0x1169 SWAP2 SWAP1 PUSH2 0x1186 JUMP JUMPDEST POP JUMP JUMPDEST POP DUP1 SLOAD PUSH1 0x0 DUP3 SSTORE SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 DUP2 ADD SWAP1 PUSH2 0x1169 SWAP2 SWAP1 JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0x119B JUMPI PUSH1 0x0 DUP2 SSTORE PUSH1 0x1 ADD PUSH2 0x1187 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD DUP1 DUP5 MSTORE PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x11C5 JUMPI PUSH1 0x20 DUP2 DUP6 ADD DUP2 ADD MLOAD DUP7 DUP4 ADD DUP3 ADD MSTORE ADD PUSH2 0x11A9 JUMP JUMPDEST POP PUSH1 0x0 PUSH1 0x20 DUP3 DUP7 ADD ADD MSTORE PUSH1 0x20 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND DUP6 ADD ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 ADD DUP2 DUP5 MSTORE DUP1 DUP6 MLOAD DUP1 DUP4 MSTORE PUSH1 0x40 SWAP3 POP DUP3 DUP7 ADD SWAP2 POP DUP3 DUP2 PUSH1 0x5 SHL DUP8 ADD ADD DUP5 DUP9 ADD PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x12C5 JUMPI DUP9 DUP4 SUB PUSH1 0x3F NOT ADD DUP6 MSTORE DUP2 MLOAD DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP5 MSTORE PUSH2 0x120 DUP9 DUP3 ADD MLOAD DUP2 DUP11 DUP8 ADD MSTORE PUSH2 0x1244 DUP3 DUP8 ADD DUP3 PUSH2 0x119F JUMP JUMPDEST SWAP2 POP POP DUP8 DUP3 ADD MLOAD DUP6 DUP3 SUB DUP10 DUP8 ADD MSTORE PUSH2 0x125C DUP3 DUP3 PUSH2 0x119F JUMP JUMPDEST PUSH1 0x60 DUP5 DUP2 ADD MLOAD SWAP1 DUP9 ADD MSTORE PUSH1 0x80 DUP1 DUP6 ADD MLOAD SWAP1 DUP9 ADD MSTORE PUSH1 0xA0 DUP1 DUP6 ADD MLOAD SWAP1 DUP9 ADD MSTORE PUSH1 0xC0 DUP1 DUP6 ADD MLOAD ISZERO ISZERO SWAP1 DUP9 ADD MSTORE PUSH1 0xE0 DUP1 DUP6 ADD MLOAD DUP9 DUP4 SUB DUP3 DUP11 ADD MSTORE SWAP2 SWAP4 POP SWAP2 POP PUSH2 0x12A2 DUP4 DUP3 PUSH2 0x119F JUMP JUMPDEST PUSH2 0x100 SWAP5 DUP6 ADD MLOAD SWAP8 SWAP1 SWAP5 ADD SWAP7 SWAP1 SWAP7 MSTORE POP POP SWAP5 DUP8 ADD SWAP5 SWAP3 POP SWAP1 DUP7 ADD SWAP1 PUSH1 0x1 ADD PUSH2 0x120C JUMP JUMPDEST POP SWAP1 SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP1 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH2 0x12EA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1301 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x130A DUP3 PUSH2 0x12D3 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x1338 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x1353 JUMPI PUSH2 0x1353 PUSH2 0x1311 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP4 ADD PUSH1 0x1F NOT SWAP1 DUP2 AND PUSH1 0x3F ADD AND DUP2 ADD SWAP1 DUP3 DUP3 GT DUP2 DUP4 LT OR ISZERO PUSH2 0x137B JUMPI PUSH2 0x137B PUSH2 0x1311 JUMP JUMPDEST DUP2 PUSH1 0x40 MSTORE DUP4 DUP2 MSTORE DUP7 PUSH1 0x20 DUP6 DUP9 ADD ADD GT ISZERO PUSH2 0x1394 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 PUSH1 0x20 DUP8 ADD PUSH1 0x20 DUP4 ADD CALLDATACOPY PUSH1 0x0 PUSH1 0x20 DUP6 DUP4 ADD ADD MSTORE DUP1 SWAP5 POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0xA0 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x13CC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x13D5 DUP7 PUSH2 0x12D3 JUMP JUMPDEST SWAP5 POP PUSH1 0x20 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x13F2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x13FE DUP10 DUP4 DUP11 ADD PUSH2 0x1327 JUMP JUMPDEST SWAP6 POP PUSH1 0x40 DUP9 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x1414 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1420 DUP10 DUP4 DUP11 ADD PUSH2 0x1327 JUMP JUMPDEST SWAP5 POP PUSH1 0x60 DUP9 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x1436 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1443 DUP9 DUP3 DUP10 ADD PUSH2 0x1327 JUMP JUMPDEST SWAP6 SWAP9 SWAP5 SWAP8 POP SWAP3 SWAP6 PUSH1 0x80 ADD CALLDATALOAD SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1468 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1471 DUP4 PUSH2 0x12D3 JUMP JUMPDEST SWAP5 PUSH1 0x20 SWAP4 SWAP1 SWAP4 ADD CALLDATALOAD SWAP4 POP POP POP JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST DUP2 DUP2 SUB DUP2 DUP2 GT ISZERO PUSH2 0x867 JUMPI PUSH2 0x867 PUSH2 0x147F JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH2 0x14D2 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x14F2 JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP1 DUP3 ADD DUP1 DUP3 GT ISZERO PUSH2 0x867 JUMPI PUSH2 0x867 PUSH2 0x147F JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 DUP3 ADD PUSH2 0x151D JUMPI PUSH2 0x151D PUSH2 0x147F JUMP JUMPDEST POP PUSH1 0x1 ADD SWAP1 JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0x156E JUMPI PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP2 ADD PUSH1 0x20 DUP7 LT ISZERO PUSH2 0x154B JUMPI POP DUP1 JUMPDEST PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP3 ADD SWAP2 POP JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x156A JUMPI DUP3 DUP2 SSTORE PUSH1 0x1 ADD PUSH2 0x1557 JUMP JUMPDEST POP POP POP JUMPDEST POP POP POP JUMP JUMPDEST DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x158D JUMPI PUSH2 0x158D PUSH2 0x1311 JUMP JUMPDEST PUSH2 0x15A1 DUP2 PUSH2 0x159B DUP5 SLOAD PUSH2 0x14BE JUMP JUMPDEST DUP5 PUSH2 0x1524 JUMP JUMPDEST PUSH1 0x20 DUP1 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0x15D6 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0x15BE JUMPI POP DUP6 DUP4 ADD MLOAD JUMPDEST PUSH1 0x0 NOT PUSH1 0x3 DUP7 SWAP1 SHL SHR NOT AND PUSH1 0x1 DUP6 SWAP1 SHL OR DUP6 SSTORE PUSH2 0x156A JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F NOT DUP7 AND SWAP2 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x1605 JUMPI DUP9 DUP7 ADD MLOAD DUP3 SSTORE SWAP5 DUP5 ADD SWAP5 PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 DUP5 ADD PUSH2 0x15E6 JUMP JUMPDEST POP DUP6 DUP3 LT ISZERO PUSH2 0x1623 JUMPI DUP8 DUP6 ADD MLOAD PUSH1 0x0 NOT PUSH1 0x3 DUP9 SWAP1 SHL PUSH1 0xF8 AND SHR NOT AND DUP2 SSTORE JUMPDEST POP POP POP POP POP PUSH1 0x1 SWAP1 DUP2 SHL ADD SWAP1 SSTORE POP JUMP JUMPDEST DUP1 DUP3 MUL DUP2 ISZERO DUP3 DUP3 DIV DUP5 EQ OR PUSH2 0x867 JUMPI PUSH2 0x867 PUSH2 0x147F JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x31 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x24 SWAP1 DUP3 ADD MSTORE PUSH32 0x4F7267616E697A6174696F6E206164647265737320646F6573206E6F74206578 PUSH1 0x40 DUP3 ADD MSTORE PUSH4 0x69737421 PUSH1 0xE0 SHL PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x3A SWAP1 DUP3 ADD MSTORE PUSH32 0x566F746572206F7267616E697A6174696F6E206973206E6F7420766572696669 PUSH1 0x40 DUP3 ADD MSTORE PUSH32 0x65642C206E6F74207065726D697474656420746F20766F746521000000000000 PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x2E SWAP1 DUP3 ADD MSTORE PUSH32 0x566F746572206F7267616E697A6174696F6E2063616E6E6F7420766F7465206D PUSH1 0x40 DUP3 ADD MSTORE PUSH14 0x6F7265207468616E206F6E636521 PUSH1 0x90 SHL PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 SMOD CALL 0xEE SWAP2 DELEGATECALL EXTCODECOPY 0x26 0xE5 0xC1 0xC6 0xB7 0xB7 PC 0xBD 0x5C 0xAF DUP7 PUSH2 0x9D3D 0x2B CODESIZE LOG2 PUSH26 0x2E365C32C8AB823364736F6C6343000811003300000000000000 ", + "sourceMap": "67:10537:0:-:0;;;1192:1;1167:26;;1355:272;;;;;;;;;-1:-1:-1;1380:5:0;:18;;-1:-1:-1;;;;;;1380:18:0;1388:10;1380:18;;;;;;1432:10;1409:20;:33;1380:5;1453:20;:24;;;1488:68;;;;;;;;;;;-1:-1:-1;;;1488:68:0;;;;;;;;;;;;;;;;;;-1:-1:-1;;;1488:68:0;;;;;;;;;;;;;;;-1:-1:-1;;;1488:68:0;;;;;;1388:10;1488:68;;1540:15;1488:11;:68::i;:::-;1581:10;1567:13;:25;;;;;;;;;;:45;;:52;;-1:-1:-1;;1567:52:0;1615:4;1567:52;;;67:10537;;7704:885;-1:-1:-1;;;;;7949:35:0;;:13;:35;;;;;;;;;;:52;;;:57;7927:139;;;;-1:-1:-1;;;7927:139:0;;216:2:2;7927:139:0;;;198:21:2;;;235:18;;;228:30;294:34;274:18;;;267:62;346:18;;7927:139:0;;;;;;;;-1:-1:-1;;;;;8079:35:0;;:13;:35;;;;;;;;;;:70;;-1:-1:-1;;;;;;8079:70:0;;;;;;;8160:40;:60;8203:17;8160:40;:60;:::i;:::-;-1:-1:-1;;;;;;8231:35:0;;:13;:35;;;;;;;;;;:43;;:58;8277:12;8231:43;:58;:::i;:::-;-1:-1:-1;;;;;;8300:35:0;;:13;:35;;;;;;;;;;:40;;:54;8343:11;8300:40;:54;:::i;:::-;-1:-1:-1;8420:13:0;:4;8427:6;8420:13;:::i;:::-;-1:-1:-1;;;;;8365:35:0;;:13;:35;;;;;;;;;;:52;;:68;8488:34;8379:20;8488:12;:34::i;:::-;:36;;8523:1;8488:36;:::i;:::-;-1:-1:-1;;;;;8444:35:0;;;:13;:35;;;;;;;;;;:41;;:80;;;;8535:19;:46;;;;;;;;;;;;;;;-1:-1:-1;;;;;;8535:46:0;;;;;;;-1:-1:-1;;;;7704:885:0:o;2693:209::-;-1:-1:-1;;;;;2644:23:0;;2754:7;2644:23;;;;;;;;;;:33;;;;2415:31;;;;;2794:18;;:58;;2415:31;2794:58;:::i;:::-;:100;;;;:::i;:::-;2774:120;2693:209;-1:-1:-1;;2693:209:0:o;375:127:2:-;436:10;431:3;427:20;424:1;417:31;467:4;464:1;457:15;491:4;488:1;481:15;507:380;586:1;582:12;;;;629;;;650:61;;704:4;696:6;692:17;682:27;;650:61;757:2;749:6;746:14;726:18;723:38;720:161;;803:10;798:3;794:20;791:1;784:31;838:4;835:1;828:15;866:4;863:1;856:15;720:161;;507:380;;;:::o;1018:545::-;1120:2;1115:3;1112:11;1109:448;;;1156:1;1181:5;1177:2;1170:17;1226:4;1222:2;1212:19;1296:2;1284:10;1280:19;1277:1;1273:27;1267:4;1263:38;1332:4;1320:10;1317:20;1314:47;;;-1:-1:-1;1355:4:2;1314:47;1410:2;1405:3;1401:12;1398:1;1394:20;1388:4;1384:31;1374:41;;1465:82;1483:2;1476:5;1473:13;1465:82;;;1528:17;;;1509:1;1498:13;1465:82;;;1469:3;;;1109:448;1018:545;;;:::o;1739:1352::-;1859:10;;-1:-1:-1;;;;;1881:30:2;;1878:56;;;1914:18;;:::i;:::-;1943:97;2033:6;1993:38;2025:4;2019:11;1993:38;:::i;:::-;1987:4;1943:97;:::i;:::-;2095:4;;2159:2;2148:14;;2176:1;2171:663;;;;2878:1;2895:6;2892:89;;;-1:-1:-1;2947:19:2;;;2941:26;2892:89;-1:-1:-1;;1696:1:2;1692:11;;;1688:24;1684:29;1674:40;1720:1;1716:11;;;1671:57;2994:81;;2141:944;;2171:663;965:1;958:14;;;1002:4;989:18;;-1:-1:-1;;2207:20:2;;;2325:236;2339:7;2336:1;2333:14;2325:236;;;2428:19;;;2422:26;2407:42;;2520:27;;;;2488:1;2476:14;;;;2355:19;;2325:236;;;2329:3;2589:6;2580:7;2577:19;2574:201;;;2650:19;;;2644:26;-1:-1:-1;;2733:1:2;2729:14;;;2745:3;2725:24;2721:37;2717:42;2702:58;2687:74;;2574:201;-1:-1:-1;;;;;2821:1:2;2805:14;;;2801:22;2788:36;;-1:-1:-1;1739:1352:2:o;3096:127::-;3157:10;3152:3;3148:20;3145:1;3138:31;3188:4;3185:1;3178:15;3212:4;3209:1;3202:15;3228:125;3293:9;;;3314:10;;;3311:36;;;3327:18;;:::i;3358:128::-;3425:9;;;3446:11;;;3443:37;;;3460:18;;:::i;3358:128::-;67:10537:0;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": { + "@admin_85": { + "entryPoint": null, + "id": 85, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@changeIsStakedPaid_173": { + "entryPoint": null, + "id": 173, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@checkIfDownvoted_261": { + "entryPoint": 1653, + "id": 261, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@checkIfUpvoted_239": { + "entryPoint": 3256, + "id": 239, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@checkVerificationStatus_778": { + "entryPoint": 2948, + "id": 778, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@countOfDownvotes_199": { + "entryPoint": null, + "id": 199, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@countOfUpvotes_186": { + "entryPoint": null, + "id": 186, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@countOfViews_217": { + "entryPoint": 3783, + "id": 217, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@downVote_754": { + "entryPoint": 3841, + "id": 754, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@emptyListOrganization_517": { + "entryPoint": 3025, + "id": 517, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@isStaked_161": { + "entryPoint": null, + "id": 161, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@isVerified_149": { + "entryPoint": null, + "id": 149, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@registerOrg_650": { + "entryPoint": 1698, + "id": 650, + "parameterSlots": 5, + "returnSlots": 0 + }, + "@totalOrganizations_90": { + "entryPoint": null, + "id": 90, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@unverifiedOrganizationsList_491": { + "entryPoint": 741, + "id": 491, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@upVote_703": { + "entryPoint": 3301, + "id": 703, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@verifiedOrganizationsList_380": { + "entryPoint": 2157, + "id": 380, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@votingDone_284": { + "entryPoint": 2104, + "id": 284, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_address": { + "entryPoint": 4819, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_decode_string": { + "entryPoint": 4903, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_address": { + "entryPoint": 4847, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_addresst_string_memory_ptrt_string_memory_ptrt_string_memory_ptrt_uint256": { + "entryPoint": 5044, + "id": null, + "parameterSlots": 2, + "returnSlots": 5 + }, + "abi_decode_tuple_t_addresst_uint256": { + "entryPoint": 5205, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_encode_address": { + "entryPoint": null, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_bool": { + "entryPoint": null, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_string": { + "entryPoint": 4511, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_address__to_t_address__fromStack_reversed": { + "entryPoint": null, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr__fromStack_reversed": { + "entryPoint": 4581, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed": { + "entryPoint": null, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": null, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_414be5daad95c532f9b7381e52ffca6776b0449e47c566018321a361a4b95d16__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 5889, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_53664b562d96b321f827bfb375320c905b5c20116fabd3735d276655e7a84701__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": null, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_a8c8730adc0a679cd4a5e2b2364d02c0d62620d7a5cf6d44281730f36a7832c1__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 5796, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_ddeb0b25a32bdbd6903219d580ec164d518abe435832e90b114c90315c52a2cf__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 5728, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed": { + "entryPoint": null, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_dataslot_string_storage": { + "entryPoint": null, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "checked_add_t_uint256": { + "entryPoint": 5368, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "checked_mul_t_uint256": { + "entryPoint": 5683, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "checked_sub_t_uint256": { + "entryPoint": 5269, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "clean_up_bytearray_end_slots_string_storage": { + "entryPoint": 5412, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage": { + "entryPoint": 5491, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "extract_byte_array_length": { + "entryPoint": 5310, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "extract_used_part_and_set_length_of_short_byte_array": { + "entryPoint": null, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "increment_t_uint256": { + "entryPoint": 5387, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "panic_error_0x11": { + "entryPoint": 5247, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x31": { + "entryPoint": 5706, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x32": { + "entryPoint": 5288, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x41": { + "entryPoint": 4881, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nodeType": "YulBlock", + "src": "0:11099:2", + "statements": [ + { + "nodeType": "YulBlock", + "src": "6:3:2", + "statements": [] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "58:60:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "75:3:2" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "84:5:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "99:3:2", + "type": "", + "value": "160" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "104:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "95:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "95:11:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "108:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "91:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "91:19:2" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "80:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "80:31:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "68:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "68:44:2" + }, + "nodeType": "YulExpressionStatement", + "src": "68:44:2" + } + ] + }, + "name": "abi_encode_address", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "42:5:2", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "49:3:2", + "type": "" + } + ], + "src": "14:104:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "173:373:2", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "183:26:2", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "203:5:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "197:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "197:12:2" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "187:6:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "225:3:2" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "230:6:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "218:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "218:19:2" + }, + "nodeType": "YulExpressionStatement", + "src": "218:19:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "246:10:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "255:1:2", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "250:1:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "317:110:2", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "331:14:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "341:4:2", + "type": "", + "value": "0x20" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "335:2:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "373:3:2" + }, + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "378:1:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "369:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "369:11:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "382:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "365:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "365:20:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "401:5:2" + }, + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "408:1:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "397:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "397:13:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "412:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "393:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "393:22:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "387:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "387:29:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "358:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "358:59:2" + }, + "nodeType": "YulExpressionStatement", + "src": "358:59:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "276:1:2" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "279:6:2" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "273:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "273:13:2" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "287:21:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "289:17:2", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "298:1:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "301:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "294:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "294:12:2" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "289:1:2" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "269:3:2", + "statements": [] + }, + "src": "265:162:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "451:3:2" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "456:6:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "447:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "447:16:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "465:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "443:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "443:27:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "472:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "436:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "436:38:2" + }, + "nodeType": "YulExpressionStatement", + "src": "436:38:2" + }, + { + "nodeType": "YulAssignment", + "src": "483:57:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "498:3:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "511:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "519:2:2", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "507:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "507:15:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "528:2:2", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "524:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "524:7:2" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "503:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "503:29:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "494:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "494:39:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "535:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "490:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "490:50:2" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "483:3:2" + } + ] + } + ] + }, + "name": "abi_encode_string", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "150:5:2", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "157:3:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "165:3:2", + "type": "" + } + ], + "src": "123:423:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "592:50:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "609:3:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "628:5:2" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "621:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "621:13:2" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "614:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "614:21:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "602:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "602:34:2" + }, + "nodeType": "YulExpressionStatement", + "src": "602:34:2" + } + ] + }, + "name": "abi_encode_bool", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "576:5:2", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "583:3:2", + "type": "" + } + ], + "src": "551:91:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "850:1761:2", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "860:12:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "870:2:2", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "864:2:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "881:32:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "899:9:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "910:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "895:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "895:18:2" + }, + "variables": [ + { + "name": "tail_1", + "nodeType": "YulTypedName", + "src": "885:6:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "929:9:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "940:2:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "922:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "922:21:2" + }, + "nodeType": "YulExpressionStatement", + "src": "922:21:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "952:17:2", + "value": { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "963:6:2" + }, + "variables": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "956:3:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "978:27:2", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "998:6:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "992:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "992:13:2" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "982:6:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "1021:6:2" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1029:6:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1014:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "1014:22:2" + }, + "nodeType": "YulExpressionStatement", + "src": "1014:22:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1045:12:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1055:2:2", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "_2", + "nodeType": "YulTypedName", + "src": "1049:2:2", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1066:25:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1077:9:2" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "1088:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1073:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1073:18:2" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "1066:3:2" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1100:53:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1122:9:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1137:1:2", + "type": "", + "value": "5" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1140:6:2" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "1133:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1133:14:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1118:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1118:30:2" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "1150:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1114:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1114:39:2" + }, + "variables": [ + { + "name": "tail_2", + "nodeType": "YulTypedName", + "src": "1104:6:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1162:29:2", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "1180:6:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1188:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1176:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1176:15:2" + }, + "variables": [ + { + "name": "srcPtr", + "nodeType": "YulTypedName", + "src": "1166:6:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1200:10:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1209:1:2", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "1204:1:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1268:1314:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "1289:3:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "1302:6:2" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1310:9:2" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "1298:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1298:22:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1326:2:2", + "type": "", + "value": "63" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "1322:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1322:7:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1294:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1294:36:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1282:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "1282:49:2" + }, + "nodeType": "YulExpressionStatement", + "src": "1282:49:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1344:23:2", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "1360:6:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "1354:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "1354:13:2" + }, + "variables": [ + { + "name": "_3", + "nodeType": "YulTypedName", + "src": "1348:2:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1380:16:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1390:6:2", + "type": "", + "value": "0x0120" + }, + "variables": [ + { + "name": "_4", + "nodeType": "YulTypedName", + "src": "1384:2:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "1434:2:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "1428:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "1428:9:2" + }, + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "1439:6:2" + } + ], + "functionName": { + "name": "abi_encode_address", + "nodeType": "YulIdentifier", + "src": "1409:18:2" + }, + "nodeType": "YulFunctionCall", + "src": "1409:37:2" + }, + "nodeType": "YulExpressionStatement", + "src": "1409:37:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1459:38:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "1489:2:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1493:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1485:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1485:11:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "1479:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "1479:18:2" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "1463:12:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "1521:6:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1529:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1517:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1517:15:2" + }, + { + "name": "_4", + "nodeType": "YulIdentifier", + "src": "1534:2:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1510:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "1510:27:2" + }, + "nodeType": "YulExpressionStatement", + "src": "1510:27:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1550:62:2", + "value": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "1582:12:2" + }, + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "1600:6:2" + }, + { + "name": "_4", + "nodeType": "YulIdentifier", + "src": "1608:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1596:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1596:15:2" + } + ], + "functionName": { + "name": "abi_encode_string", + "nodeType": "YulIdentifier", + "src": "1564:17:2" + }, + "nodeType": "YulFunctionCall", + "src": "1564:48:2" + }, + "variables": [ + { + "name": "tail_3", + "nodeType": "YulTypedName", + "src": "1554:6:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1625:40:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "1657:2:2" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "1661:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1653:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1653:11:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "1647:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "1647:18:2" + }, + "variables": [ + { + "name": "memberValue0_1", + "nodeType": "YulTypedName", + "src": "1629:14:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "1689:6:2" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "1697:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1685:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1685:15:2" + }, + { + "arguments": [ + { + "name": "tail_3", + "nodeType": "YulIdentifier", + "src": "1706:6:2" + }, + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "1714:6:2" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "1702:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1702:19:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1678:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "1678:44:2" + }, + "nodeType": "YulExpressionStatement", + "src": "1678:44:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1735:55:2", + "value": { + "arguments": [ + { + "name": "memberValue0_1", + "nodeType": "YulIdentifier", + "src": "1767:14:2" + }, + { + "name": "tail_3", + "nodeType": "YulIdentifier", + "src": "1783:6:2" + } + ], + "functionName": { + "name": "abi_encode_string", + "nodeType": "YulIdentifier", + "src": "1749:17:2" + }, + "nodeType": "YulFunctionCall", + "src": "1749:41:2" + }, + "variables": [ + { + "name": "tail_4", + "nodeType": "YulTypedName", + "src": "1739:6:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1803:14:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1813:4:2", + "type": "", + "value": "0x60" + }, + "variables": [ + { + "name": "_5", + "nodeType": "YulTypedName", + "src": "1807:2:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "1841:6:2" + }, + { + "name": "_5", + "nodeType": "YulIdentifier", + "src": "1849:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1837:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1837:15:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "1864:2:2" + }, + { + "name": "_5", + "nodeType": "YulIdentifier", + "src": "1868:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1860:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1860:11:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "1854:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "1854:18:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1830:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "1830:43:2" + }, + "nodeType": "YulExpressionStatement", + "src": "1830:43:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1886:14:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1896:4:2", + "type": "", + "value": "0x80" + }, + "variables": [ + { + "name": "_6", + "nodeType": "YulTypedName", + "src": "1890:2:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "1924:6:2" + }, + { + "name": "_6", + "nodeType": "YulIdentifier", + "src": "1932:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1920:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1920:15:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "1947:2:2" + }, + { + "name": "_6", + "nodeType": "YulIdentifier", + "src": "1951:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1943:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1943:11:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "1937:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "1937:18:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1913:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "1913:43:2" + }, + "nodeType": "YulExpressionStatement", + "src": "1913:43:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1969:14:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1979:4:2", + "type": "", + "value": "0xa0" + }, + "variables": [ + { + "name": "_7", + "nodeType": "YulTypedName", + "src": "1973:2:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "2007:6:2" + }, + { + "name": "_7", + "nodeType": "YulIdentifier", + "src": "2015:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2003:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2003:15:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "2030:2:2" + }, + { + "name": "_7", + "nodeType": "YulIdentifier", + "src": "2034:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2026:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2026:11:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "2020:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "2020:18:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1996:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "1996:43:2" + }, + "nodeType": "YulExpressionStatement", + "src": "1996:43:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2052:14:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2062:4:2", + "type": "", + "value": "0xc0" + }, + "variables": [ + { + "name": "_8", + "nodeType": "YulTypedName", + "src": "2056:2:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2079:40:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "2111:2:2" + }, + { + "name": "_8", + "nodeType": "YulIdentifier", + "src": "2115:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2107:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2107:11:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "2101:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "2101:18:2" + }, + "variables": [ + { + "name": "memberValue0_2", + "nodeType": "YulTypedName", + "src": "2083:14:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0_2", + "nodeType": "YulIdentifier", + "src": "2148:14:2" + }, + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "2168:6:2" + }, + { + "name": "_8", + "nodeType": "YulIdentifier", + "src": "2176:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2164:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2164:15:2" + } + ], + "functionName": { + "name": "abi_encode_bool", + "nodeType": "YulIdentifier", + "src": "2132:15:2" + }, + "nodeType": "YulFunctionCall", + "src": "2132:48:2" + }, + "nodeType": "YulExpressionStatement", + "src": "2132:48:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2193:14:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2203:4:2", + "type": "", + "value": "0xe0" + }, + "variables": [ + { + "name": "_9", + "nodeType": "YulTypedName", + "src": "2197:2:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2220:40:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "2252:2:2" + }, + { + "name": "_9", + "nodeType": "YulIdentifier", + "src": "2256:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2248:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2248:11:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "2242:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "2242:18:2" + }, + "variables": [ + { + "name": "memberValue0_3", + "nodeType": "YulTypedName", + "src": "2224:14:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "2284:6:2" + }, + { + "name": "_9", + "nodeType": "YulIdentifier", + "src": "2292:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2280:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2280:15:2" + }, + { + "arguments": [ + { + "name": "tail_4", + "nodeType": "YulIdentifier", + "src": "2301:6:2" + }, + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "2309:6:2" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "2297:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2297:19:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "2273:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "2273:44:2" + }, + "nodeType": "YulExpressionStatement", + "src": "2273:44:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2330:55:2", + "value": { + "arguments": [ + { + "name": "memberValue0_3", + "nodeType": "YulIdentifier", + "src": "2362:14:2" + }, + { + "name": "tail_4", + "nodeType": "YulIdentifier", + "src": "2378:6:2" + } + ], + "functionName": { + "name": "abi_encode_string", + "nodeType": "YulIdentifier", + "src": "2344:17:2" + }, + "nodeType": "YulFunctionCall", + "src": "2344:41:2" + }, + "variables": [ + { + "name": "tail_5", + "nodeType": "YulTypedName", + "src": "2334:6:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2398:17:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2409:6:2", + "type": "", + "value": "0x0100" + }, + "variables": [ + { + "name": "_10", + "nodeType": "YulTypedName", + "src": "2402:3:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "2439:6:2" + }, + { + "name": "_10", + "nodeType": "YulIdentifier", + "src": "2447:3:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2435:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2435:16:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "2463:2:2" + }, + { + "name": "_10", + "nodeType": "YulIdentifier", + "src": "2467:3:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2459:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2459:12:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "2453:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "2453:19:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "2428:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "2428:45:2" + }, + "nodeType": "YulExpressionStatement", + "src": "2428:45:2" + }, + { + "nodeType": "YulAssignment", + "src": "2486:16:2", + "value": { + "name": "tail_5", + "nodeType": "YulIdentifier", + "src": "2496:6:2" + }, + "variableNames": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "2486:6:2" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "2515:25:2", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "2529:6:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "2537:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2525:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2525:15:2" + }, + "variableNames": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "2515:6:2" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "2553:19:2", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "2564:3:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "2569:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2560:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2560:12:2" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "2553:3:2" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "1230:1:2" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1233:6:2" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "1227:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "1227:13:2" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "1241:18:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "1243:14:2", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "1252:1:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1255:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1248:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1248:9:2" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "1243:1:2" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "1223:3:2", + "statements": [] + }, + "src": "1219:1363:2" + }, + { + "nodeType": "YulAssignment", + "src": "2591:14:2", + "value": { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "2599:6:2" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "2591:4:2" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "819:9:2", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "830:6:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "841:4:2", + "type": "" + } + ], + "src": "647:1964:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2665:124:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "2675:29:2", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "2697:6:2" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "2684:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "2684:20:2" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "2675:5:2" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2767:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2776:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2779:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "2769:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "2769:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "2769:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "2726:5:2" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "2737:5:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2752:3:2", + "type": "", + "value": "160" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2757:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "2748:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2748:11:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2761:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "2744:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2744:19:2" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "2733:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2733:31:2" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "2723:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "2723:42:2" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "2716:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "2716:50:2" + }, + "nodeType": "YulIf", + "src": "2713:70:2" + } + ] + }, + "name": "abi_decode_address", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "2644:6:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "2655:5:2", + "type": "" + } + ], + "src": "2616:173:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2864:116:2", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "2910:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2919:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2922:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "2912:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "2912:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "2912:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "2885:7:2" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2894:9:2" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "2881:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2881:23:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2906:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "2877:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2877:32:2" + }, + "nodeType": "YulIf", + "src": "2874:52:2" + }, + { + "nodeType": "YulAssignment", + "src": "2935:39:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2964:9:2" + } + ], + "functionName": { + "name": "abi_decode_address", + "nodeType": "YulIdentifier", + "src": "2945:18:2" + }, + "nodeType": "YulFunctionCall", + "src": "2945:29:2" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "2935:6:2" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_address", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "2830:9:2", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "2841:7:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "2853:6:2", + "type": "" + } + ], + "src": "2794:186:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3080:92:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "3090:26:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3102:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3113:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3098:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3098:18:2" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "3090:4:2" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3132:9:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "3157:6:2" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "3150:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "3150:14:2" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "3143:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "3143:22:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "3125:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "3125:41:2" + }, + "nodeType": "YulExpressionStatement", + "src": "3125:41:2" + } + ] + }, + "name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "3049:9:2", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "3060:6:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "3071:4:2", + "type": "" + } + ], + "src": "2985:187:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3209:95:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3226:1:2", + "type": "", + "value": "0" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3233:3:2", + "type": "", + "value": "224" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3238:10:2", + "type": "", + "value": "0x4e487b71" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "3229:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3229:20:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "3219:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "3219:31:2" + }, + "nodeType": "YulExpressionStatement", + "src": "3219:31:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3266:1:2", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3269:4:2", + "type": "", + "value": "0x41" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "3259:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "3259:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "3259:15:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3290:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3293:4:2", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "3283:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "3283:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "3283:15:2" + } + ] + }, + "name": "panic_error_0x41", + "nodeType": "YulFunctionDefinition", + "src": "3177:127:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3362:666:2", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "3411:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3420:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3423:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "3413:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "3413:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "3413:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "3390:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3398:4:2", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3386:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3386:17:2" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "3405:3:2" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "3382:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3382:27:2" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "3375:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "3375:35:2" + }, + "nodeType": "YulIf", + "src": "3372:55:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3436:30:2", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "3459:6:2" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "3446:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "3446:20:2" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "3440:2:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3475:28:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3485:18:2", + "type": "", + "value": "0xffffffffffffffff" + }, + "variables": [ + { + "name": "_2", + "nodeType": "YulTypedName", + "src": "3479:2:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3526:22:2", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "3528:16:2" + }, + "nodeType": "YulFunctionCall", + "src": "3528:18:2" + }, + "nodeType": "YulExpressionStatement", + "src": "3528:18:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "3518:2:2" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "3522:2:2" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "3515:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "3515:10:2" + }, + "nodeType": "YulIf", + "src": "3512:36:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3557:17:2", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3571:2:2", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "3567:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3567:7:2" + }, + "variables": [ + { + "name": "_3", + "nodeType": "YulTypedName", + "src": "3561:2:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3583:23:2", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3603:2:2", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "3597:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "3597:9:2" + }, + "variables": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "3587:6:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3615:71:2", + "value": { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "3637:6:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "3661:2:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3665:4:2", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3657:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3657:13:2" + }, + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "3672:2:2" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "3653:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3653:22:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3677:2:2", + "type": "", + "value": "63" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3649:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3649:31:2" + }, + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "3682:2:2" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "3645:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3645:40:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3633:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3633:53:2" + }, + "variables": [ + { + "name": "newFreePtr", + "nodeType": "YulTypedName", + "src": "3619:10:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3745:22:2", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "3747:16:2" + }, + "nodeType": "YulFunctionCall", + "src": "3747:18:2" + }, + "nodeType": "YulExpressionStatement", + "src": "3747:18:2" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "3704:10:2" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "3716:2:2" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "3701:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "3701:18:2" + }, + { + "arguments": [ + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "3724:10:2" + }, + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "3736:6:2" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "3721:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "3721:22:2" + } + ], + "functionName": { + "name": "or", + "nodeType": "YulIdentifier", + "src": "3698:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "3698:46:2" + }, + "nodeType": "YulIf", + "src": "3695:72:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3783:2:2", + "type": "", + "value": "64" + }, + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "3787:10:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "3776:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "3776:22:2" + }, + "nodeType": "YulExpressionStatement", + "src": "3776:22:2" + }, + { + "expression": { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "3814:6:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "3822:2:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "3807:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "3807:18:2" + }, + "nodeType": "YulExpressionStatement", + "src": "3807:18:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3873:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3882:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3885:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "3875:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "3875:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "3875:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "3848:6:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "3856:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3844:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3844:15:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3861:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3840:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3840:26:2" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "3868:3:2" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "3837:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "3837:35:2" + }, + "nodeType": "YulIf", + "src": "3834:55:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "3915:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3923:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3911:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3911:17:2" + }, + { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "3934:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3942:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3930:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3930:17:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "3949:2:2" + } + ], + "functionName": { + "name": "calldatacopy", + "nodeType": "YulIdentifier", + "src": "3898:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "3898:54:2" + }, + "nodeType": "YulExpressionStatement", + "src": "3898:54:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "3976:6:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "3984:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3972:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3972:15:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3989:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3968:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3968:26:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3996:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "3961:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "3961:37:2" + }, + "nodeType": "YulExpressionStatement", + "src": "3961:37:2" + }, + { + "nodeType": "YulAssignment", + "src": "4007:15:2", + "value": { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "4016:6:2" + }, + "variableNames": [ + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "4007:5:2" + } + ] + } + ] + }, + "name": "abi_decode_string", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "3336:6:2", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "3344:3:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nodeType": "YulTypedName", + "src": "3352:5:2", + "type": "" + } + ], + "src": "3309:719:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4201:719:2", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "4248:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4257:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4260:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "4250:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "4250:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "4250:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "4222:7:2" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4231:9:2" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "4218:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "4218:23:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4243:3:2", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "4214:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "4214:33:2" + }, + "nodeType": "YulIf", + "src": "4211:53:2" + }, + { + "nodeType": "YulAssignment", + "src": "4273:39:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4302:9:2" + } + ], + "functionName": { + "name": "abi_decode_address", + "nodeType": "YulIdentifier", + "src": "4283:18:2" + }, + "nodeType": "YulFunctionCall", + "src": "4283:29:2" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "4273:6:2" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "4321:46:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4352:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4363:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4348:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "4348:18:2" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "4335:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "4335:32:2" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "4325:6:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "4376:28:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4386:18:2", + "type": "", + "value": "0xffffffffffffffff" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "4380:2:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4431:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4440:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4443:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "4433:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "4433:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "4433:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "4419:6:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "4427:2:2" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "4416:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "4416:14:2" + }, + "nodeType": "YulIf", + "src": "4413:34:2" + }, + { + "nodeType": "YulAssignment", + "src": "4456:60:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4488:9:2" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "4499:6:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4484:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "4484:22:2" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "4508:7:2" + } + ], + "functionName": { + "name": "abi_decode_string", + "nodeType": "YulIdentifier", + "src": "4466:17:2" + }, + "nodeType": "YulFunctionCall", + "src": "4466:50:2" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "4456:6:2" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "4525:48:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4558:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4569:2:2", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4554:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "4554:18:2" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "4541:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "4541:32:2" + }, + "variables": [ + { + "name": "offset_1", + "nodeType": "YulTypedName", + "src": "4529:8:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4602:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4611:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4614:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "4604:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "4604:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "4604:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "4588:8:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "4598:2:2" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "4585:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "4585:16:2" + }, + "nodeType": "YulIf", + "src": "4582:36:2" + }, + { + "nodeType": "YulAssignment", + "src": "4627:62:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4659:9:2" + }, + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "4670:8:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4655:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "4655:24:2" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "4681:7:2" + } + ], + "functionName": { + "name": "abi_decode_string", + "nodeType": "YulIdentifier", + "src": "4637:17:2" + }, + "nodeType": "YulFunctionCall", + "src": "4637:52:2" + }, + "variableNames": [ + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "4627:6:2" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "4698:48:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4731:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4742:2:2", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4727:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "4727:18:2" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "4714:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "4714:32:2" + }, + "variables": [ + { + "name": "offset_2", + "nodeType": "YulTypedName", + "src": "4702:8:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4775:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4784:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4787:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "4777:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "4777:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "4777:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset_2", + "nodeType": "YulIdentifier", + "src": "4761:8:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "4771:2:2" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "4758:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "4758:16:2" + }, + "nodeType": "YulIf", + "src": "4755:36:2" + }, + { + "nodeType": "YulAssignment", + "src": "4800:62:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4832:9:2" + }, + { + "name": "offset_2", + "nodeType": "YulIdentifier", + "src": "4843:8:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4828:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "4828:24:2" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "4854:7:2" + } + ], + "functionName": { + "name": "abi_decode_string", + "nodeType": "YulIdentifier", + "src": "4810:17:2" + }, + "nodeType": "YulFunctionCall", + "src": "4810:52:2" + }, + "variableNames": [ + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "4800:6:2" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "4871:43:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4898:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4909:3:2", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4894:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "4894:19:2" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "4881:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "4881:33:2" + }, + "variableNames": [ + { + "name": "value4", + "nodeType": "YulIdentifier", + "src": "4871:6:2" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_string_memory_ptrt_string_memory_ptrt_string_memory_ptrt_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "4135:9:2", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "4146:7:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "4158:6:2", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "4166:6:2", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "4174:6:2", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "4182:6:2", + "type": "" + }, + { + "name": "value4", + "nodeType": "YulTypedName", + "src": "4190:6:2", + "type": "" + } + ], + "src": "4033:887:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5012:167:2", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "5058:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5067:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5070:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "5060:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "5060:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "5060:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "5033:7:2" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5042:9:2" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "5029:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5029:23:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5054:2:2", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "5025:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5025:32:2" + }, + "nodeType": "YulIf", + "src": "5022:52:2" + }, + { + "nodeType": "YulAssignment", + "src": "5083:39:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5112:9:2" + } + ], + "functionName": { + "name": "abi_decode_address", + "nodeType": "YulIdentifier", + "src": "5093:18:2" + }, + "nodeType": "YulFunctionCall", + "src": "5093:29:2" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "5083:6:2" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "5131:42:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5158:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5169:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5154:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5154:18:2" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "5141:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "5141:32:2" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "5131:6:2" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "4970:9:2", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "4981:7:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "4993:6:2", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "5001:6:2", + "type": "" + } + ], + "src": "4925:254:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5285:76:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "5295:26:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5307:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5318:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5303:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5303:18:2" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "5295:4:2" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5337:9:2" + }, + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "5348:6:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5330:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "5330:25:2" + }, + "nodeType": "YulExpressionStatement", + "src": "5330:25:2" + } + ] + }, + "name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "5254:9:2", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "5265:6:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "5276:4:2", + "type": "" + } + ], + "src": "5184:177:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5467:102:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "5477:26:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5489:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5500:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5485:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5485:18:2" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "5477:4:2" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5519:9:2" + }, + { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "5534:6:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5550:3:2", + "type": "", + "value": "160" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5555:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "5546:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5546:11:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5559:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "5542:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5542:19:2" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "5530:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5530:32:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5512:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "5512:51:2" + }, + "nodeType": "YulExpressionStatement", + "src": "5512:51:2" + } + ] + }, + "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "5436:9:2", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "5447:6:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "5458:4:2", + "type": "" + } + ], + "src": "5366:203:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5606:95:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5623:1:2", + "type": "", + "value": "0" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5630:3:2", + "type": "", + "value": "224" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5635:10:2", + "type": "", + "value": "0x4e487b71" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "5626:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5626:20:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5616:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "5616:31:2" + }, + "nodeType": "YulExpressionStatement", + "src": "5616:31:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5663:1:2", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5666:4:2", + "type": "", + "value": "0x11" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5656:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "5656:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "5656:15:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5687:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5690:4:2", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "5680:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "5680:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "5680:15:2" + } + ] + }, + "name": "panic_error_0x11", + "nodeType": "YulFunctionDefinition", + "src": "5574:127:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5755:79:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "5765:17:2", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "5777:1:2" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "5780:1:2" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "5773:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5773:9:2" + }, + "variableNames": [ + { + "name": "diff", + "nodeType": "YulIdentifier", + "src": "5765:4:2" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5806:22:2", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nodeType": "YulIdentifier", + "src": "5808:16:2" + }, + "nodeType": "YulFunctionCall", + "src": "5808:18:2" + }, + "nodeType": "YulExpressionStatement", + "src": "5808:18:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "diff", + "nodeType": "YulIdentifier", + "src": "5797:4:2" + }, + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "5803:1:2" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "5794:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "5794:11:2" + }, + "nodeType": "YulIf", + "src": "5791:37:2" + } + ] + }, + "name": "checked_sub_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nodeType": "YulTypedName", + "src": "5737:1:2", + "type": "" + }, + { + "name": "y", + "nodeType": "YulTypedName", + "src": "5740:1:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "diff", + "nodeType": "YulTypedName", + "src": "5746:4:2", + "type": "" + } + ], + "src": "5706:128:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5871:95:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5888:1:2", + "type": "", + "value": "0" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5895:3:2", + "type": "", + "value": "224" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5900:10:2", + "type": "", + "value": "0x4e487b71" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "5891:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5891:20:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5881:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "5881:31:2" + }, + "nodeType": "YulExpressionStatement", + "src": "5881:31:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5928:1:2", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5931:4:2", + "type": "", + "value": "0x32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "5921:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "5921:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "5921:15:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5952:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5955:4:2", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "5945:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "5945:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "5945:15:2" + } + ] + }, + "name": "panic_error_0x32", + "nodeType": "YulFunctionDefinition", + "src": "5839:127:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6026:325:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "6036:22:2", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6050:1:2", + "type": "", + "value": "1" + }, + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "6053:4:2" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "6046:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "6046:12:2" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "6036:6:2" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "6067:38:2", + "value": { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "6097:4:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6103:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "6093:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "6093:12:2" + }, + "variables": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulTypedName", + "src": "6071:18:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6144:31:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "6146:27:2", + "value": { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "6160:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6168:4:2", + "type": "", + "value": "0x7f" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "6156:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "6156:17:2" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "6146:6:2" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulIdentifier", + "src": "6124:18:2" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "6117:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "6117:26:2" + }, + "nodeType": "YulIf", + "src": "6114:61:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6234:111:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6255:1:2", + "type": "", + "value": "0" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6262:3:2", + "type": "", + "value": "224" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6267:10:2", + "type": "", + "value": "0x4e487b71" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "6258:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "6258:20:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "6248:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "6248:31:2" + }, + "nodeType": "YulExpressionStatement", + "src": "6248:31:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6299:1:2", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6302:4:2", + "type": "", + "value": "0x22" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "6292:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "6292:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "6292:15:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6327:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6330:4:2", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "6320:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "6320:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "6320:15:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulIdentifier", + "src": "6190:18:2" + }, + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "6213:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6221:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "6210:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "6210:14:2" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "6187:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "6187:38:2" + }, + "nodeType": "YulIf", + "src": "6184:161:2" + } + ] + }, + "name": "extract_byte_array_length", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "6006:4:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "6015:6:2", + "type": "" + } + ], + "src": "5971:380:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6404:77:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "6414:16:2", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "6425:1:2" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "6428:1:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6421:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "6421:9:2" + }, + "variableNames": [ + { + "name": "sum", + "nodeType": "YulIdentifier", + "src": "6414:3:2" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6453:22:2", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nodeType": "YulIdentifier", + "src": "6455:16:2" + }, + "nodeType": "YulFunctionCall", + "src": "6455:18:2" + }, + "nodeType": "YulExpressionStatement", + "src": "6455:18:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "6445:1:2" + }, + { + "name": "sum", + "nodeType": "YulIdentifier", + "src": "6448:3:2" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "6442:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "6442:10:2" + }, + "nodeType": "YulIf", + "src": "6439:36:2" + } + ] + }, + "name": "checked_add_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nodeType": "YulTypedName", + "src": "6387:1:2", + "type": "" + }, + { + "name": "y", + "nodeType": "YulTypedName", + "src": "6390:1:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "sum", + "nodeType": "YulTypedName", + "src": "6396:3:2", + "type": "" + } + ], + "src": "6356:125:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6533:88:2", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "6564:22:2", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nodeType": "YulIdentifier", + "src": "6566:16:2" + }, + "nodeType": "YulFunctionCall", + "src": "6566:18:2" + }, + "nodeType": "YulExpressionStatement", + "src": "6566:18:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "6549:5:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6560:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "6556:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "6556:6:2" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "6546:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "6546:17:2" + }, + "nodeType": "YulIf", + "src": "6543:43:2" + }, + { + "nodeType": "YulAssignment", + "src": "6595:20:2", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "6606:5:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6613:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6602:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "6602:13:2" + }, + "variableNames": [ + { + "name": "ret", + "nodeType": "YulIdentifier", + "src": "6595:3:2" + } + ] + } + ] + }, + "name": "increment_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "6515:5:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nodeType": "YulTypedName", + "src": "6525:3:2", + "type": "" + } + ], + "src": "6486:135:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6800:182:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6817:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6828:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "6810:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "6810:21:2" + }, + "nodeType": "YulExpressionStatement", + "src": "6810:21:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6851:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6862:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6847:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "6847:18:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6867:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "6840:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "6840:30:2" + }, + "nodeType": "YulExpressionStatement", + "src": "6840:30:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6890:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6901:2:2", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6886:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "6886:18:2" + }, + { + "hexValue": "4f7267616e697a6174696f6e20616c7265616479207265676973746572656421", + "kind": "string", + "nodeType": "YulLiteral", + "src": "6906:34:2", + "type": "", + "value": "Organization already registered!" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "6879:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "6879:62:2" + }, + "nodeType": "YulExpressionStatement", + "src": "6879:62:2" + }, + { + "nodeType": "YulAssignment", + "src": "6950:26:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6962:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6973:2:2", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6958:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "6958:18:2" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "6950:4:2" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "6777:9:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "6791:4:2", + "type": "" + } + ], + "src": "6626:356:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7043:65:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7060:1:2", + "type": "", + "value": "0" + }, + { + "name": "ptr", + "nodeType": "YulIdentifier", + "src": "7063:3:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "7053:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "7053:14:2" + }, + "nodeType": "YulExpressionStatement", + "src": "7053:14:2" + }, + { + "nodeType": "YulAssignment", + "src": "7076:26:2", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7094:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7097:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "keccak256", + "nodeType": "YulIdentifier", + "src": "7084:9:2" + }, + "nodeType": "YulFunctionCall", + "src": "7084:18:2" + }, + "variableNames": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "7076:4:2" + } + ] + } + ] + }, + "name": "array_dataslot_string_storage", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nodeType": "YulTypedName", + "src": "7026:3:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "7034:4:2", + "type": "" + } + ], + "src": "6987:121:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7194:464:2", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "7227:425:2", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "7241:11:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7251:1:2", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "7245:2:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "7272:2:2" + }, + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "7276:5:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "7265:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "7265:17:2" + }, + "nodeType": "YulExpressionStatement", + "src": "7265:17:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "7295:31:2", + "value": { + "arguments": [ + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "7317:2:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7321:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "keccak256", + "nodeType": "YulIdentifier", + "src": "7307:9:2" + }, + "nodeType": "YulFunctionCall", + "src": "7307:19:2" + }, + "variables": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "7299:4:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "7339:57:2", + "value": { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "7362:4:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7372:1:2", + "type": "", + "value": "5" + }, + { + "arguments": [ + { + "name": "startIndex", + "nodeType": "YulIdentifier", + "src": "7379:10:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7391:2:2", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7375:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "7375:19:2" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "7368:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "7368:27:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7358:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "7358:38:2" + }, + "variables": [ + { + "name": "deleteStart", + "nodeType": "YulTypedName", + "src": "7343:11:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7433:23:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "7435:19:2", + "value": { + "name": "data", + "nodeType": "YulIdentifier", + "src": "7450:4:2" + }, + "variableNames": [ + { + "name": "deleteStart", + "nodeType": "YulIdentifier", + "src": "7435:11:2" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "startIndex", + "nodeType": "YulIdentifier", + "src": "7415:10:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7427:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "7412:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "7412:20:2" + }, + "nodeType": "YulIf", + "src": "7409:47:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "7469:41:2", + "value": { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "7483:4:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7493:1:2", + "type": "", + "value": "5" + }, + { + "arguments": [ + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "7500:3:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7505:2:2", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7496:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "7496:12:2" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "7489:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "7489:20:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7479:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "7479:31:2" + }, + "variables": [ + { + "name": "_2", + "nodeType": "YulTypedName", + "src": "7473:2:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "7523:24:2", + "value": { + "name": "deleteStart", + "nodeType": "YulIdentifier", + "src": "7536:11:2" + }, + "variables": [ + { + "name": "start", + "nodeType": "YulTypedName", + "src": "7527:5:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7621:21:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "7630:5:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "7637:2:2" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "7623:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "7623:17:2" + }, + "nodeType": "YulExpressionStatement", + "src": "7623:17:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "7571:5:2" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "7578:2:2" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "7568:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "7568:13:2" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "7582:26:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "7584:22:2", + "value": { + "arguments": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "7597:5:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7604:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7593:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "7593:13:2" + }, + "variableNames": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "7584:5:2" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "7564:3:2", + "statements": [] + }, + "src": "7560:82:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "7210:3:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7215:2:2", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "7207:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "7207:11:2" + }, + "nodeType": "YulIf", + "src": "7204:448:2" + } + ] + }, + "name": "clean_up_bytearray_end_slots_string_storage", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "array", + "nodeType": "YulTypedName", + "src": "7166:5:2", + "type": "" + }, + { + "name": "len", + "nodeType": "YulTypedName", + "src": "7173:3:2", + "type": "" + }, + { + "name": "startIndex", + "nodeType": "YulTypedName", + "src": "7178:10:2", + "type": "" + } + ], + "src": "7113:545:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7748:81:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "7758:65:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "7773:4:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7791:1:2", + "type": "", + "value": "3" + }, + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "7794:3:2" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "7787:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "7787:11:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7804:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "7800:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "7800:6:2" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "7783:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "7783:24:2" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "7779:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "7779:29:2" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "7769:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "7769:40:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7815:1:2", + "type": "", + "value": "1" + }, + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "7818:3:2" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "7811:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "7811:11:2" + } + ], + "functionName": { + "name": "or", + "nodeType": "YulIdentifier", + "src": "7766:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "7766:57:2" + }, + "variableNames": [ + { + "name": "used", + "nodeType": "YulIdentifier", + "src": "7758:4:2" + } + ] + } + ] + }, + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "7725:4:2", + "type": "" + }, + { + "name": "len", + "nodeType": "YulTypedName", + "src": "7731:3:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "used", + "nodeType": "YulTypedName", + "src": "7739:4:2", + "type": "" + } + ], + "src": "7663:166:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7930:1256:2", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "7940:24:2", + "value": { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "7960:3:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "7954:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "7954:10:2" + }, + "variables": [ + { + "name": "newLen", + "nodeType": "YulTypedName", + "src": "7944:6:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8007:22:2", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "8009:16:2" + }, + "nodeType": "YulFunctionCall", + "src": "8009:18:2" + }, + "nodeType": "YulExpressionStatement", + "src": "8009:18:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "7979:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7987:18:2", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "7976:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "7976:30:2" + }, + "nodeType": "YulIf", + "src": "7973:56:2" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "8082:4:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "8120:4:2" + } + ], + "functionName": { + "name": "sload", + "nodeType": "YulIdentifier", + "src": "8114:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "8114:11:2" + } + ], + "functionName": { + "name": "extract_byte_array_length", + "nodeType": "YulIdentifier", + "src": "8088:25:2" + }, + "nodeType": "YulFunctionCall", + "src": "8088:38:2" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "8128:6:2" + } + ], + "functionName": { + "name": "clean_up_bytearray_end_slots_string_storage", + "nodeType": "YulIdentifier", + "src": "8038:43:2" + }, + "nodeType": "YulFunctionCall", + "src": "8038:97:2" + }, + "nodeType": "YulExpressionStatement", + "src": "8038:97:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "8144:18:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8161:1:2", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "srcOffset", + "nodeType": "YulTypedName", + "src": "8148:9:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "8171:23:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8190:4:2", + "type": "", + "value": "0x20" + }, + "variables": [ + { + "name": "srcOffset_1", + "nodeType": "YulTypedName", + "src": "8175:11:2", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "8203:24:2", + "value": { + "name": "srcOffset_1", + "nodeType": "YulIdentifier", + "src": "8216:11:2" + }, + "variableNames": [ + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "8203:9:2" + } + ] + }, + { + "cases": [ + { + "body": { + "nodeType": "YulBlock", + "src": "8273:656:2", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "8287:35:2", + "value": { + "arguments": [ + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "8306:6:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8318:2:2", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "8314:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8314:7:2" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "8302:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8302:20:2" + }, + "variables": [ + { + "name": "loopEnd", + "nodeType": "YulTypedName", + "src": "8291:7:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "8335:49:2", + "value": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "8379:4:2" + } + ], + "functionName": { + "name": "array_dataslot_string_storage", + "nodeType": "YulIdentifier", + "src": "8349:29:2" + }, + "nodeType": "YulFunctionCall", + "src": "8349:35:2" + }, + "variables": [ + { + "name": "dstPtr", + "nodeType": "YulTypedName", + "src": "8339:6:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "8397:10:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8406:1:2", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "8401:1:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8484:172:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "8509:6:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "8527:3:2" + }, + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "8532:9:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8523:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8523:19:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "8517:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "8517:26:2" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "8502:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "8502:42:2" + }, + "nodeType": "YulExpressionStatement", + "src": "8502:42:2" + }, + { + "nodeType": "YulAssignment", + "src": "8561:24:2", + "value": { + "arguments": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "8575:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8583:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8571:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8571:14:2" + }, + "variableNames": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "8561:6:2" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "8602:40:2", + "value": { + "arguments": [ + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "8619:9:2" + }, + { + "name": "srcOffset_1", + "nodeType": "YulIdentifier", + "src": "8630:11:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8615:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8615:27:2" + }, + "variableNames": [ + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "8602:9:2" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "8431:1:2" + }, + { + "name": "loopEnd", + "nodeType": "YulIdentifier", + "src": "8434:7:2" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "8428:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "8428:14:2" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "8443:28:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "8445:24:2", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "8454:1:2" + }, + { + "name": "srcOffset_1", + "nodeType": "YulIdentifier", + "src": "8457:11:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8450:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8450:19:2" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "8445:1:2" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "8424:3:2", + "statements": [] + }, + "src": "8420:236:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8704:166:2", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "8722:43:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "8749:3:2" + }, + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "8754:9:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8745:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8745:19:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "8739:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "8739:26:2" + }, + "variables": [ + { + "name": "lastValue", + "nodeType": "YulTypedName", + "src": "8726:9:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "8789:6:2" + }, + { + "arguments": [ + { + "name": "lastValue", + "nodeType": "YulIdentifier", + "src": "8801:9:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8828:1:2", + "type": "", + "value": "3" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "8831:6:2" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "8824:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8824:14:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8840:3:2", + "type": "", + "value": "248" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "8820:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8820:24:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8850:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "8846:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8846:6:2" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "8816:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8816:37:2" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "8812:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8812:42:2" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "8797:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8797:58:2" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "8782:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "8782:74:2" + }, + "nodeType": "YulExpressionStatement", + "src": "8782:74:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "loopEnd", + "nodeType": "YulIdentifier", + "src": "8675:7:2" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "8684:6:2" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "8672:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "8672:19:2" + }, + "nodeType": "YulIf", + "src": "8669:201:2" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "8890:4:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8904:1:2", + "type": "", + "value": "1" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "8907:6:2" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "8900:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8900:14:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8916:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8896:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8896:22:2" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "8883:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "8883:36:2" + }, + "nodeType": "YulExpressionStatement", + "src": "8883:36:2" + } + ] + }, + "nodeType": "YulCase", + "src": "8266:663:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8271:1:2", + "type": "", + "value": "1" + } + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8946:234:2", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "8960:14:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8973:1:2", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "8964:5:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9009:67:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "9027:35:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "9046:3:2" + }, + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "9051:9:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9042:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "9042:19:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "9036:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "9036:26:2" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "9027:5:2" + } + ] + } + ] + }, + "condition": { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "8990:6:2" + }, + "nodeType": "YulIf", + "src": "8987:89:2" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "9096:4:2" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "9155:5:2" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "9162:6:2" + } + ], + "functionName": { + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nodeType": "YulIdentifier", + "src": "9102:52:2" + }, + "nodeType": "YulFunctionCall", + "src": "9102:67:2" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "9089:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "9089:81:2" + }, + "nodeType": "YulExpressionStatement", + "src": "9089:81:2" + } + ] + }, + "nodeType": "YulCase", + "src": "8938:242:2", + "value": "default" + } + ], + "expression": { + "arguments": [ + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "8246:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8254:2:2", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "8243:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "8243:14:2" + }, + "nodeType": "YulSwitch", + "src": "8236:944:2" + } + ] + }, + "name": "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nodeType": "YulTypedName", + "src": "7915:4:2", + "type": "" + }, + { + "name": "src", + "nodeType": "YulTypedName", + "src": "7921:3:2", + "type": "" + } + ], + "src": "7834:1352:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9243:116:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "9253:20:2", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "9268:1:2" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "9271:1:2" + } + ], + "functionName": { + "name": "mul", + "nodeType": "YulIdentifier", + "src": "9264:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "9264:9:2" + }, + "variableNames": [ + { + "name": "product", + "nodeType": "YulIdentifier", + "src": "9253:7:2" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9331:22:2", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nodeType": "YulIdentifier", + "src": "9333:16:2" + }, + "nodeType": "YulFunctionCall", + "src": "9333:18:2" + }, + "nodeType": "YulExpressionStatement", + "src": "9333:18:2" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "9302:1:2" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "9295:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "9295:9:2" + }, + { + "arguments": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "9309:1:2" + }, + { + "arguments": [ + { + "name": "product", + "nodeType": "YulIdentifier", + "src": "9316:7:2" + }, + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "9325:1:2" + } + ], + "functionName": { + "name": "div", + "nodeType": "YulIdentifier", + "src": "9312:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "9312:15:2" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "9306:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "9306:22:2" + } + ], + "functionName": { + "name": "or", + "nodeType": "YulIdentifier", + "src": "9292:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "9292:37:2" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "9285:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "9285:45:2" + }, + "nodeType": "YulIf", + "src": "9282:71:2" + } + ] + }, + "name": "checked_mul_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nodeType": "YulTypedName", + "src": "9222:1:2", + "type": "" + }, + { + "name": "y", + "nodeType": "YulTypedName", + "src": "9225:1:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "product", + "nodeType": "YulTypedName", + "src": "9231:7:2", + "type": "" + } + ], + "src": "9191:168:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9396:95:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9413:1:2", + "type": "", + "value": "0" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9420:3:2", + "type": "", + "value": "224" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9425:10:2", + "type": "", + "value": "0x4e487b71" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "9416:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "9416:20:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "9406:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "9406:31:2" + }, + "nodeType": "YulExpressionStatement", + "src": "9406:31:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9453:1:2", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9456:4:2", + "type": "", + "value": "0x31" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "9446:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "9446:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "9446:15:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9477:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9480:4:2", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "9470:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "9470:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "9470:15:2" + } + ] + }, + "name": "panic_error_0x31", + "nodeType": "YulFunctionDefinition", + "src": "9364:127:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9670:226:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9687:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9698:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "9680:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "9680:21:2" + }, + "nodeType": "YulExpressionStatement", + "src": "9680:21:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9721:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9732:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9717:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "9717:18:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9737:2:2", + "type": "", + "value": "36" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "9710:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "9710:30:2" + }, + "nodeType": "YulExpressionStatement", + "src": "9710:30:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9760:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9771:2:2", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9756:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "9756:18:2" + }, + { + "hexValue": "4f7267616e697a6174696f6e206164647265737320646f6573206e6f74206578", + "kind": "string", + "nodeType": "YulLiteral", + "src": "9776:34:2", + "type": "", + "value": "Organization address does not ex" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "9749:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "9749:62:2" + }, + "nodeType": "YulExpressionStatement", + "src": "9749:62:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9831:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9842:2:2", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9827:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "9827:18:2" + }, + { + "hexValue": "69737421", + "kind": "string", + "nodeType": "YulLiteral", + "src": "9847:6:2", + "type": "", + "value": "ist!" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "9820:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "9820:34:2" + }, + "nodeType": "YulExpressionStatement", + "src": "9820:34:2" + }, + { + "nodeType": "YulAssignment", + "src": "9863:27:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9875:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9886:3:2", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9871:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "9871:19:2" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "9863:4:2" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_ddeb0b25a32bdbd6903219d580ec164d518abe435832e90b114c90315c52a2cf__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "9647:9:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "9661:4:2", + "type": "" + } + ], + "src": "9496:400:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10075:180:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10092:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10103:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "10085:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "10085:21:2" + }, + "nodeType": "YulExpressionStatement", + "src": "10085:21:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10126:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10137:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10122:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "10122:18:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10142:2:2", + "type": "", + "value": "30" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "10115:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "10115:30:2" + }, + "nodeType": "YulExpressionStatement", + "src": "10115:30:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10165:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10176:2:2", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10161:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "10161:18:2" + }, + { + "hexValue": "4f7267616e697a6174696f6e20616c726561647920766572696669656421", + "kind": "string", + "nodeType": "YulLiteral", + "src": "10181:32:2", + "type": "", + "value": "Organization already verified!" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "10154:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "10154:60:2" + }, + "nodeType": "YulExpressionStatement", + "src": "10154:60:2" + }, + { + "nodeType": "YulAssignment", + "src": "10223:26:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10235:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10246:2:2", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10231:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "10231:18:2" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "10223:4:2" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_53664b562d96b321f827bfb375320c905b5c20116fabd3735d276655e7a84701__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "10052:9:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "10066:4:2", + "type": "" + } + ], + "src": "9901:354:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10434:248:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10451:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10462:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "10444:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "10444:21:2" + }, + "nodeType": "YulExpressionStatement", + "src": "10444:21:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10485:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10496:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10481:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "10481:18:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10501:2:2", + "type": "", + "value": "58" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "10474:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "10474:30:2" + }, + "nodeType": "YulExpressionStatement", + "src": "10474:30:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10524:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10535:2:2", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10520:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "10520:18:2" + }, + { + "hexValue": "566f746572206f7267616e697a6174696f6e206973206e6f7420766572696669", + "kind": "string", + "nodeType": "YulLiteral", + "src": "10540:34:2", + "type": "", + "value": "Voter organization is not verifi" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "10513:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "10513:62:2" + }, + "nodeType": "YulExpressionStatement", + "src": "10513:62:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10595:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10606:2:2", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10591:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "10591:18:2" + }, + { + "hexValue": "65642c206e6f74207065726d697474656420746f20766f746521", + "kind": "string", + "nodeType": "YulLiteral", + "src": "10611:28:2", + "type": "", + "value": "ed, not permitted to vote!" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "10584:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "10584:56:2" + }, + "nodeType": "YulExpressionStatement", + "src": "10584:56:2" + }, + { + "nodeType": "YulAssignment", + "src": "10649:27:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10661:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10672:3:2", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10657:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "10657:19:2" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "10649:4:2" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_a8c8730adc0a679cd4a5e2b2364d02c0d62620d7a5cf6d44281730f36a7832c1__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "10411:9:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "10425:4:2", + "type": "" + } + ], + "src": "10260:422:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10861:236:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10878:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10889:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "10871:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "10871:21:2" + }, + "nodeType": "YulExpressionStatement", + "src": "10871:21:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10912:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10923:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10908:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "10908:18:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10928:2:2", + "type": "", + "value": "46" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "10901:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "10901:30:2" + }, + "nodeType": "YulExpressionStatement", + "src": "10901:30:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "10951:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10962:2:2", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10947:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "10947:18:2" + }, + { + "hexValue": "566f746572206f7267616e697a6174696f6e2063616e6e6f7420766f7465206d", + "kind": "string", + "nodeType": "YulLiteral", + "src": "10967:34:2", + "type": "", + "value": "Voter organization cannot vote m" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "10940:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "10940:62:2" + }, + "nodeType": "YulExpressionStatement", + "src": "10940:62:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "11022:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11033:2:2", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11018:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "11018:18:2" + }, + { + "hexValue": "6f7265207468616e206f6e636521", + "kind": "string", + "nodeType": "YulLiteral", + "src": "11038:16:2", + "type": "", + "value": "ore than once!" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "11011:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "11011:44:2" + }, + "nodeType": "YulExpressionStatement", + "src": "11011:44:2" + }, + { + "nodeType": "YulAssignment", + "src": "11064:27:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "11076:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11087:3:2", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11072:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "11072:19:2" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "11064:4:2" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_414be5daad95c532f9b7381e52ffca6776b0449e47c566018321a361a4b95d16__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "10838:9:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "10852:4:2", + "type": "" + } + ], + "src": "10687:410:2" + } + ] + }, + "contents": "{\n { }\n function abi_encode_address(value, pos)\n {\n mstore(pos, and(value, sub(shl(160, 1), 1)))\n }\n function abi_encode_string(value, pos) -> end\n {\n let length := mload(value)\n mstore(pos, length)\n let i := 0\n for { } lt(i, length) { i := add(i, 0x20) }\n {\n let _1 := 0x20\n mstore(add(add(pos, i), _1), mload(add(add(value, i), _1)))\n }\n mstore(add(add(pos, length), 0x20), 0)\n end := add(add(pos, and(add(length, 31), not(31))), 0x20)\n }\n function abi_encode_bool(value, pos)\n {\n mstore(pos, iszero(iszero(value)))\n }\n function abi_encode_tuple_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n let _1 := 32\n let tail_1 := add(headStart, _1)\n mstore(headStart, _1)\n let pos := tail_1\n let length := mload(value0)\n mstore(tail_1, length)\n let _2 := 64\n pos := add(headStart, _2)\n let tail_2 := add(add(headStart, shl(5, length)), _2)\n let srcPtr := add(value0, _1)\n let i := 0\n for { } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, add(sub(tail_2, headStart), not(63)))\n let _3 := mload(srcPtr)\n let _4 := 0x0120\n abi_encode_address(mload(_3), tail_2)\n let memberValue0 := mload(add(_3, _1))\n mstore(add(tail_2, _1), _4)\n let tail_3 := abi_encode_string(memberValue0, add(tail_2, _4))\n let memberValue0_1 := mload(add(_3, _2))\n mstore(add(tail_2, _2), sub(tail_3, tail_2))\n let tail_4 := abi_encode_string(memberValue0_1, tail_3)\n let _5 := 0x60\n mstore(add(tail_2, _5), mload(add(_3, _5)))\n let _6 := 0x80\n mstore(add(tail_2, _6), mload(add(_3, _6)))\n let _7 := 0xa0\n mstore(add(tail_2, _7), mload(add(_3, _7)))\n let _8 := 0xc0\n let memberValue0_2 := mload(add(_3, _8))\n abi_encode_bool(memberValue0_2, add(tail_2, _8))\n let _9 := 0xe0\n let memberValue0_3 := mload(add(_3, _9))\n mstore(add(tail_2, _9), sub(tail_4, tail_2))\n let tail_5 := abi_encode_string(memberValue0_3, tail_4)\n let _10 := 0x0100\n mstore(add(tail_2, _10), mload(add(_3, _10)))\n tail_2 := tail_5\n srcPtr := add(srcPtr, _1)\n pos := add(pos, _1)\n }\n tail := tail_2\n }\n function abi_decode_address(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := abi_decode_address(headStart)\n }\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, iszero(iszero(value0)))\n }\n function panic_error_0x41()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function abi_decode_string(offset, end) -> array\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let _1 := calldataload(offset)\n let _2 := 0xffffffffffffffff\n if gt(_1, _2) { panic_error_0x41() }\n let _3 := not(31)\n let memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(and(add(_1, 0x1f), _3), 63), _3))\n if or(gt(newFreePtr, _2), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n mstore(memPtr, _1)\n if gt(add(add(offset, _1), 0x20), end) { revert(0, 0) }\n calldatacopy(add(memPtr, 0x20), add(offset, 0x20), _1)\n mstore(add(add(memPtr, _1), 0x20), 0)\n array := memPtr\n }\n function abi_decode_tuple_t_addresst_string_memory_ptrt_string_memory_ptrt_string_memory_ptrt_uint256(headStart, dataEnd) -> value0, value1, value2, value3, value4\n {\n if slt(sub(dataEnd, headStart), 160) { revert(0, 0) }\n value0 := abi_decode_address(headStart)\n let offset := calldataload(add(headStart, 32))\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n value1 := abi_decode_string(add(headStart, offset), dataEnd)\n let offset_1 := calldataload(add(headStart, 64))\n if gt(offset_1, _1) { revert(0, 0) }\n value2 := abi_decode_string(add(headStart, offset_1), dataEnd)\n let offset_2 := calldataload(add(headStart, 96))\n if gt(offset_2, _1) { revert(0, 0) }\n value3 := abi_decode_string(add(headStart, offset_2), dataEnd)\n value4 := calldataload(add(headStart, 128))\n }\n function abi_decode_tuple_t_addresst_uint256(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n value0 := abi_decode_address(headStart)\n value1 := calldataload(add(headStart, 32))\n }\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n }\n function panic_error_0x11()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n function checked_sub_t_uint256(x, y) -> diff\n {\n diff := sub(x, y)\n if gt(diff, x) { panic_error_0x11() }\n }\n function panic_error_0x32()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n function extract_byte_array_length(data) -> length\n {\n length := shr(1, data)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) { length := and(length, 0x7f) }\n if eq(outOfPlaceEncoding, lt(length, 32))\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n }\n function checked_add_t_uint256(x, y) -> sum\n {\n sum := add(x, y)\n if gt(x, sum) { panic_error_0x11() }\n }\n function increment_t_uint256(value) -> ret\n {\n if eq(value, not(0)) { panic_error_0x11() }\n ret := add(value, 1)\n }\n function abi_encode_tuple_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 32)\n mstore(add(headStart, 64), \"Organization already registered!\")\n tail := add(headStart, 96)\n }\n function array_dataslot_string_storage(ptr) -> data\n {\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n }\n function clean_up_bytearray_end_slots_string_storage(array, len, startIndex)\n {\n if gt(len, 31)\n {\n let _1 := 0\n mstore(_1, array)\n let data := keccak256(_1, 0x20)\n let deleteStart := add(data, shr(5, add(startIndex, 31)))\n if lt(startIndex, 0x20) { deleteStart := data }\n let _2 := add(data, shr(5, add(len, 31)))\n let start := deleteStart\n for { } lt(start, _2) { start := add(start, 1) }\n { sstore(start, _1) }\n }\n }\n function extract_used_part_and_set_length_of_short_byte_array(data, len) -> used\n {\n used := or(and(data, not(shr(shl(3, len), not(0)))), shl(1, len))\n }\n function copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage(slot, src)\n {\n let newLen := mload(src)\n if gt(newLen, 0xffffffffffffffff) { panic_error_0x41() }\n clean_up_bytearray_end_slots_string_storage(slot, extract_byte_array_length(sload(slot)), newLen)\n let srcOffset := 0\n let srcOffset_1 := 0x20\n srcOffset := srcOffset_1\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(31))\n let dstPtr := array_dataslot_string_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, srcOffset_1) }\n {\n sstore(dstPtr, mload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, srcOffset_1)\n }\n if lt(loopEnd, newLen)\n {\n let lastValue := mload(add(src, srcOffset))\n sstore(dstPtr, and(lastValue, not(shr(and(shl(3, newLen), 248), not(0)))))\n }\n sstore(slot, add(shl(1, newLen), 1))\n }\n default {\n let value := 0\n if newLen\n {\n value := mload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n function checked_mul_t_uint256(x, y) -> product\n {\n product := mul(x, y)\n if iszero(or(iszero(x), eq(y, div(product, x)))) { panic_error_0x11() }\n }\n function panic_error_0x31()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x31)\n revert(0, 0x24)\n }\n function abi_encode_tuple_t_stringliteral_ddeb0b25a32bdbd6903219d580ec164d518abe435832e90b114c90315c52a2cf__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 36)\n mstore(add(headStart, 64), \"Organization address does not ex\")\n mstore(add(headStart, 96), \"ist!\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_stringliteral_53664b562d96b321f827bfb375320c905b5c20116fabd3735d276655e7a84701__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 30)\n mstore(add(headStart, 64), \"Organization already verified!\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_a8c8730adc0a679cd4a5e2b2364d02c0d62620d7a5cf6d44281730f36a7832c1__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 58)\n mstore(add(headStart, 64), \"Voter organization is not verifi\")\n mstore(add(headStart, 96), \"ed, not permitted to vote!\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_stringliteral_414be5daad95c532f9b7381e52ffca6776b0449e47c566018321a361a4b95d16__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 46)\n mstore(add(headStart, 64), \"Voter organization cannot vote m\")\n mstore(add(headStart, 96), \"ore than once!\")\n tail := add(headStart, 128)\n }\n}", + "id": 2, + "language": "Yul", + "name": "#utility.yul" + } + ], + "immutableReferences": {}, + "linkReferences": {}, + "object": "608060405234801561001057600080fd5b50600436106101165760003560e01c80638fc0ed2f116100a2578063e257911411610071578063e257911414610266578063e3323aba14610279578063e75176b514610294578063f15c01dd146102a7578063f851a440146102ba57600080fd5b80638fc0ed2f146101fd578063a1b0ffe014610205578063b7627e4114610227578063c9dfca101461025357600080fd5b80634cf5d552116100e95780634cf5d552146101845780635cf9303f1461019b5780635d0161f1146101c75780636fc3911c146101cf57806380007e83146101e257600080fd5b80632d80468d1461011b5780633e85747e14610139578063440370fe1461015c5780634648df2a14610171575b600080fd5b6101236102e5565b60405161013091906111e5565b60405180910390f35b61014c6101473660046112ef565b610675565b6040519015158152602001610130565b61016f61016a3660046113b4565b6106a2565b005b61014c61017f366004611455565b610838565b61018d60095481565b604051908152602001610130565b61018d6101a93660046112ef565b6001600160a01b031660009081526020819052604090206003015490565b61012361086d565b61014c6101dd3660046112ef565b610b84565b3360009081526020819052604090206006015460ff1661014c565b61016f610bd1565b61016f336000908152602081905260409020600e01805460ff19166001179055565b61018d6102353660046112ef565b6001600160a01b031660009081526020819052604090206004015490565b61014c6102613660046112ef565b610cb8565b61014c610274366004611455565b610ce5565b336000908152602081905260409020600e015460ff1661014c565b61018d6102a23660046112ef565b610ec7565b61014c6102b5366004611455565b610f01565b6007546102cd906001600160a01b031681565b6040516001600160a01b039091168152602001610130565b6004546008546060919060009081906102fe9084611495565b67ffffffffffffffff81111561031657610316611311565b60405190808252806020026020018201604052801561034f57816020015b61033c6110d8565b8152602001906001900390816103345790505b50905060005b8381101561066d57600060048281548110610372576103726114a8565b60009182526020808320909101546001600160a01b03168083529082905260409091206006015490915060ff1661065a5760408051610120810182526001600160a01b0380841660008181526020818152948120805490931684529081528084526001909101805491938301916103e8906114be565b80601f0160208091040260200160405190810160405280929190818152602001828054610414906114be565b80156104615780601f1061043657610100808354040283529160200191610461565b820191906000526020600020905b81548152906001019060200180831161044457829003601f168201915b50505050508152602001600080856001600160a01b03166001600160a01b03168152602001908152602001600020600201805461049d906114be565b80601f01602080910402602001604051908101604052809291908181526020018280546104c9906114be565b80156105165780601f106104eb57610100808354040283529160200191610516565b820191906000526020600020905b8154815290600101906020018083116104f957829003601f168201915b50505091835250506001600160a01b03841660008181526020818152604080832060038101548387015260048101549186019190915260058101546060860152600681015460ff161515608086015292825252600b01805460a09092019161057d906114be565b80601f01602080910402602001604051908101604052809291908181526020018280546105a9906114be565b80156105f65780601f106105cb576101008083540402835291602001916105f6565b820191906000526020600020905b8154815290600101906020018083116105d957829003601f168201915b50505050508152602001600080856001600160a01b03166001600160a01b03168152602001908152602001600020600d0154815250905080848681518110610640576106406114a8565b60209081029190910101526106566001866114f8565b9450505b50806106658161150b565b915050610355565b509392505050565b6001600160a01b031660009081526020818152604080832033845260090190915290205460ff1660011490565b6001600160a01b0385166000908152602081905260409020600d0154156107105760405162461bcd60e51b815260206004820181905260248201527f4f7267616e697a6174696f6e20616c726561647920726567697374657265642160448201526064015b60405180910390fd5b6001600160a01b038516600081815260208190526040902080546001600160a01b03191690911781556001016107468582611573565b506001600160a01b038516600090815260208190526040902060020161076c8482611573565b506001600160a01b0385166000908152602081905260409020600b016107928382611573565b506107a0816202a3006114f8565b6001600160a01b0386166000908152602081905260409020600d01556107c585610ec7565b6107d09060016114f8565b6001600160a01b039095166000818152602081905260408120600501969096556004805460018101825596527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b90950180546001600160a01b03191690951790945550505050565b6001600160a01b0382166000908152602081905260408120600d015482111561086357506001610867565b5060005b92915050565b60045460085460609190600090819067ffffffffffffffff81111561089457610894611311565b6040519080825280602002602001820160405280156108cd57816020015b6108ba6110d8565b8152602001906001900390816108b25790505b50905060005b8381101561066d576000600482815481106108f0576108f06114a8565b60009182526020808320909101546001600160a01b03168083529082905260409091206006015490915060ff1615610b71576001600160a01b0380821660009081526020818152604080832081516101208101909252805490941681526001840180549192830191610961906114be565b80601f016020809104026020016040519081016040528092919081815260200182805461098d906114be565b80156109da5780601f106109af576101008083540402835291602001916109da565b820191906000526020600020905b8154815290600101906020018083116109bd57829003601f168201915b505050505081526020018360020180546109f3906114be565b80601f0160208091040260200160405190810160405280929190818152602001828054610a1f906114be565b8015610a6c5780601f10610a4157610100808354040283529160200191610a6c565b820191906000526020600020905b815481529060010190602001808311610a4f57829003601f168201915b5050509183525050600384015460208201526004840154604082015260058401546060820152600684015460ff1615156080820152600b8401805460a090920191610ab6906114be565b80601f0160208091040260200160405190810160405280929190818152602001828054610ae2906114be565b8015610b2f5780601f10610b0457610100808354040283529160200191610b2f565b820191906000526020600020905b815481529060010190602001808311610b1257829003601f168201915b5050505050815260200183600d0154815250905080858781518110610b5657610b566114a8565b6020908102919091010152610b6c6001876114f8565b955050505b5080610b7c8161150b565b9150506108d3565b60006009546033610b959190611633565b6001600160a01b038316600090815260208190526040902060030154610bbc906064611633565b10610bc957506001919050565b506000919050565b600c5460005b81811015610cb457600c805480610bf057610bf061164a565b600082815260208120600f6000199093019283020180546001600160a01b031916815590610c21600183018261112f565b610c2f60028301600061112f565b600060038301819055600483018190556005830181905560068301805460ff19169055610c6090600784019061116c565b610c6e60088301600061116c565b600a820160009055600b82016000610c86919061112f565b506000600c8201819055600d820155600e01805460ff19169055905580610cac8161150b565b915050610bd7565b5050565b6001600160a01b031660009081526020818152604080832033845260090190915290205460ff1660021490565b6001600160a01b0382166000908152602081905260408120600d015483908203610d215760405162461bcd60e51b815260040161070790611660565b6001600160a01b03811660009081526020819052604090206006015460ff1615610d8d5760405162461bcd60e51b815260206004820152601e60248201527f4f7267616e697a6174696f6e20616c72656164792076657269666965642100006044820152606401610707565b336000908152602081905260409020600d015415801590610dc057503360009081526020819052604090206006015460ff165b610ddc5760405162461bcd60e51b8152600401610707906116a4565b610de581610cb8565b158015610df85750610df681610675565b155b610e145760405162461bcd60e51b815260040161070790611701565b6001600160a01b0384166000908152602081905260408120600301805460019290610e409084906114f8565b90915550506001600160a01b0384166000908152602081815260408083206007810180546001810182559085528385200180546001600160a01b0319163390811790915584526009019091529020805460ff19166002179055610ea38484610838565b15610ebb57610eb184610b84565b5060019150610ec0565b600091505b5092915050565b6001600160a01b03811660009081526020819052604081206004810154600390910154600954610ef79190611495565b6108679190611495565b6001600160a01b0382166000908152602081905260408120600d015483908203610f3d5760405162461bcd60e51b815260040161070790611660565b6001600160a01b03811660009081526020819052604090206006015460ff1615610fa95760405162461bcd60e51b815260206004820152601e60248201527f4f7267616e697a6174696f6e20616c72656164792076657269666965642100006044820152606401610707565b336000908152602081905260409020600d015415801590610fdc57503360009081526020819052604090206006015460ff165b610ff85760405162461bcd60e51b8152600401610707906116a4565b61100181610cb8565b158015611014575061101281610675565b155b6110305760405162461bcd60e51b815260040161070790611701565b6001600160a01b038416600090815260208190526040812060040180546001929061105c9084906114f8565b90915550506001600160a01b038416600090815260208181526040808320600881018054600181810183559186528486200180546001600160a01b0319163390811790915585526009909101909252909120805460ff191690911790556110c38484610838565b15610ebb576110d184610b84565b9150610ec0565b60405180610120016040528060006001600160a01b03168152602001606081526020016060815260200160008152602001600081526020016000815260200160001515815260200160608152602001600081525090565b50805461113b906114be565b6000825580601f1061114b575050565b601f0160209004906000526020600020908101906111699190611186565b50565b508054600082559060005260206000209081019061116991905b5b8082111561119b5760008155600101611187565b5090565b6000815180845260005b818110156111c5576020818501810151868301820152016111a9565b506000602082860101526020601f19601f83011685010191505092915050565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b838110156112c557888303603f19018552815180516001600160a01b0316845261012088820151818a8701526112448287018261119f565b915050878201518582038987015261125c828261119f565b606084810151908801526080808501519088015260a0808501519088015260c08085015115159088015260e080850151888303828a015291935091506112a2838261119f565b61010094850151979094019690965250509487019492509086019060010161120c565b509098975050505050505050565b80356001600160a01b03811681146112ea57600080fd5b919050565b60006020828403121561130157600080fd5b61130a826112d3565b9392505050565b634e487b7160e01b600052604160045260246000fd5b600082601f83011261133857600080fd5b813567ffffffffffffffff8082111561135357611353611311565b604051601f8301601f19908116603f0116810190828211818310171561137b5761137b611311565b8160405283815286602085880101111561139457600080fd5b836020870160208301376000602085830101528094505050505092915050565b600080600080600060a086880312156113cc57600080fd5b6113d5866112d3565b9450602086013567ffffffffffffffff808211156113f257600080fd5b6113fe89838a01611327565b9550604088013591508082111561141457600080fd5b61142089838a01611327565b9450606088013591508082111561143657600080fd5b5061144388828901611327565b95989497509295608001359392505050565b6000806040838503121561146857600080fd5b611471836112d3565b946020939093013593505050565b634e487b7160e01b600052601160045260246000fd5b818103818111156108675761086761147f565b634e487b7160e01b600052603260045260246000fd5b600181811c908216806114d257607f821691505b6020821081036114f257634e487b7160e01b600052602260045260246000fd5b50919050565b808201808211156108675761086761147f565b60006001820161151d5761151d61147f565b5060010190565b601f82111561156e57600081815260208120601f850160051c8101602086101561154b5750805b601f850160051c820191505b8181101561156a57828155600101611557565b5050505b505050565b815167ffffffffffffffff81111561158d5761158d611311565b6115a18161159b84546114be565b84611524565b602080601f8311600181146115d657600084156115be5750858301515b600019600386901b1c1916600185901b17855561156a565b600085815260208120601f198616915b82811015611605578886015182559484019460019091019084016115e6565b50858210156116235787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b80820281158282048414176108675761086761147f565b634e487b7160e01b600052603160045260246000fd5b60208082526024908201527f4f7267616e697a6174696f6e206164647265737320646f6573206e6f742065786040820152636973742160e01b606082015260800190565b6020808252603a908201527f566f746572206f7267616e697a6174696f6e206973206e6f742076657269666960408201527f65642c206e6f74207065726d697474656420746f20766f746521000000000000606082015260800190565b6020808252602e908201527f566f746572206f7267616e697a6174696f6e2063616e6e6f7420766f7465206d60408201526d6f7265207468616e206f6e63652160901b60608201526080019056fea264697066735822122007f1ee91f43c26e5c1c6b7b758bd5caf86619d3d2b38a2792e365c32c8ab823364736f6c63430008110033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE CALLVALUE DUP1 ISZERO PUSH2 0x10 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x4 CALLDATASIZE LT PUSH2 0x116 JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x8FC0ED2F GT PUSH2 0xA2 JUMPI DUP1 PUSH4 0xE2579114 GT PUSH2 0x71 JUMPI DUP1 PUSH4 0xE2579114 EQ PUSH2 0x266 JUMPI DUP1 PUSH4 0xE3323ABA EQ PUSH2 0x279 JUMPI DUP1 PUSH4 0xE75176B5 EQ PUSH2 0x294 JUMPI DUP1 PUSH4 0xF15C01DD EQ PUSH2 0x2A7 JUMPI DUP1 PUSH4 0xF851A440 EQ PUSH2 0x2BA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 PUSH4 0x8FC0ED2F EQ PUSH2 0x1FD JUMPI DUP1 PUSH4 0xA1B0FFE0 EQ PUSH2 0x205 JUMPI DUP1 PUSH4 0xB7627E41 EQ PUSH2 0x227 JUMPI DUP1 PUSH4 0xC9DFCA10 EQ PUSH2 0x253 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 PUSH4 0x4CF5D552 GT PUSH2 0xE9 JUMPI DUP1 PUSH4 0x4CF5D552 EQ PUSH2 0x184 JUMPI DUP1 PUSH4 0x5CF9303F EQ PUSH2 0x19B JUMPI DUP1 PUSH4 0x5D0161F1 EQ PUSH2 0x1C7 JUMPI DUP1 PUSH4 0x6FC3911C EQ PUSH2 0x1CF JUMPI DUP1 PUSH4 0x80007E83 EQ PUSH2 0x1E2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 PUSH4 0x2D80468D EQ PUSH2 0x11B JUMPI DUP1 PUSH4 0x3E85747E EQ PUSH2 0x139 JUMPI DUP1 PUSH4 0x440370FE EQ PUSH2 0x15C JUMPI DUP1 PUSH4 0x4648DF2A EQ PUSH2 0x171 JUMPI JUMPDEST PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x123 PUSH2 0x2E5 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x130 SWAP2 SWAP1 PUSH2 0x11E5 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST PUSH2 0x14C PUSH2 0x147 CALLDATASIZE PUSH1 0x4 PUSH2 0x12EF JUMP JUMPDEST PUSH2 0x675 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x130 JUMP JUMPDEST PUSH2 0x16F PUSH2 0x16A CALLDATASIZE PUSH1 0x4 PUSH2 0x13B4 JUMP JUMPDEST PUSH2 0x6A2 JUMP JUMPDEST STOP JUMPDEST PUSH2 0x14C PUSH2 0x17F CALLDATASIZE PUSH1 0x4 PUSH2 0x1455 JUMP JUMPDEST PUSH2 0x838 JUMP JUMPDEST PUSH2 0x18D PUSH1 0x9 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x130 JUMP JUMPDEST PUSH2 0x18D PUSH2 0x1A9 CALLDATASIZE PUSH1 0x4 PUSH2 0x12EF JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x3 ADD SLOAD SWAP1 JUMP JUMPDEST PUSH2 0x123 PUSH2 0x86D JUMP JUMPDEST PUSH2 0x14C PUSH2 0x1DD CALLDATASIZE PUSH1 0x4 PUSH2 0x12EF JUMP JUMPDEST PUSH2 0xB84 JUMP JUMPDEST CALLER PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x6 ADD SLOAD PUSH1 0xFF AND PUSH2 0x14C JUMP JUMPDEST PUSH2 0x16F PUSH2 0xBD1 JUMP JUMPDEST PUSH2 0x16F CALLER PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xE ADD DUP1 SLOAD PUSH1 0xFF NOT AND PUSH1 0x1 OR SWAP1 SSTORE JUMP JUMPDEST PUSH2 0x18D PUSH2 0x235 CALLDATASIZE PUSH1 0x4 PUSH2 0x12EF JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x4 ADD SLOAD SWAP1 JUMP JUMPDEST PUSH2 0x14C PUSH2 0x261 CALLDATASIZE PUSH1 0x4 PUSH2 0x12EF JUMP JUMPDEST PUSH2 0xCB8 JUMP JUMPDEST PUSH2 0x14C PUSH2 0x274 CALLDATASIZE PUSH1 0x4 PUSH2 0x1455 JUMP JUMPDEST PUSH2 0xCE5 JUMP JUMPDEST CALLER PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xE ADD SLOAD PUSH1 0xFF AND PUSH2 0x14C JUMP JUMPDEST PUSH2 0x18D PUSH2 0x2A2 CALLDATASIZE PUSH1 0x4 PUSH2 0x12EF JUMP JUMPDEST PUSH2 0xEC7 JUMP JUMPDEST PUSH2 0x14C PUSH2 0x2B5 CALLDATASIZE PUSH1 0x4 PUSH2 0x1455 JUMP JUMPDEST PUSH2 0xF01 JUMP JUMPDEST PUSH1 0x7 SLOAD PUSH2 0x2CD SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x130 JUMP JUMPDEST PUSH1 0x4 SLOAD PUSH1 0x8 SLOAD PUSH1 0x60 SWAP2 SWAP1 PUSH1 0x0 SWAP1 DUP2 SWAP1 PUSH2 0x2FE SWAP1 DUP5 PUSH2 0x1495 JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x316 JUMPI PUSH2 0x316 PUSH2 0x1311 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x34F JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH2 0x33C PUSH2 0x10D8 JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x334 JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x66D JUMPI PUSH1 0x0 PUSH1 0x4 DUP3 DUP2 SLOAD DUP2 LT PUSH2 0x372 JUMPI PUSH2 0x372 PUSH2 0x14A8 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP1 DUP4 MSTORE SWAP1 DUP3 SWAP1 MSTORE PUSH1 0x40 SWAP1 SWAP2 KECCAK256 PUSH1 0x6 ADD SLOAD SWAP1 SWAP2 POP PUSH1 0xFF AND PUSH2 0x65A JUMPI PUSH1 0x40 DUP1 MLOAD PUSH2 0x120 DUP2 ADD DUP3 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP1 DUP5 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 DUP2 MSTORE SWAP5 DUP2 KECCAK256 DUP1 SLOAD SWAP1 SWAP4 AND DUP5 MSTORE SWAP1 DUP2 MSTORE DUP1 DUP5 MSTORE PUSH1 0x1 SWAP1 SWAP2 ADD DUP1 SLOAD SWAP2 SWAP4 DUP4 ADD SWAP2 PUSH2 0x3E8 SWAP1 PUSH2 0x14BE JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x414 SWAP1 PUSH2 0x14BE JUMP JUMPDEST DUP1 ISZERO PUSH2 0x461 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x436 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x461 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x444 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 DUP6 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD DUP1 SLOAD PUSH2 0x49D SWAP1 PUSH2 0x14BE JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x4C9 SWAP1 PUSH2 0x14BE JUMP JUMPDEST DUP1 ISZERO PUSH2 0x516 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x4EB JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x516 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x4F9 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP SWAP2 DUP4 MSTORE POP POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 PUSH1 0x3 DUP2 ADD SLOAD DUP4 DUP8 ADD MSTORE PUSH1 0x4 DUP2 ADD SLOAD SWAP2 DUP7 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0x5 DUP2 ADD SLOAD PUSH1 0x60 DUP7 ADD MSTORE PUSH1 0x6 DUP2 ADD SLOAD PUSH1 0xFF AND ISZERO ISZERO PUSH1 0x80 DUP7 ADD MSTORE SWAP3 DUP3 MSTORE MSTORE PUSH1 0xB ADD DUP1 SLOAD PUSH1 0xA0 SWAP1 SWAP3 ADD SWAP2 PUSH2 0x57D SWAP1 PUSH2 0x14BE JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x5A9 SWAP1 PUSH2 0x14BE JUMP JUMPDEST DUP1 ISZERO PUSH2 0x5F6 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x5CB JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x5F6 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x5D9 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 DUP6 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xD ADD SLOAD DUP2 MSTORE POP SWAP1 POP DUP1 DUP5 DUP7 DUP2 MLOAD DUP2 LT PUSH2 0x640 JUMPI PUSH2 0x640 PUSH2 0x14A8 JUMP JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MSTORE PUSH2 0x656 PUSH1 0x1 DUP7 PUSH2 0x14F8 JUMP JUMPDEST SWAP5 POP POP JUMPDEST POP DUP1 PUSH2 0x665 DUP2 PUSH2 0x150B JUMP JUMPDEST SWAP2 POP POP PUSH2 0x355 JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 CALLER DUP5 MSTORE PUSH1 0x9 ADD SWAP1 SWAP2 MSTORE SWAP1 KECCAK256 SLOAD PUSH1 0xFF AND PUSH1 0x1 EQ SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xD ADD SLOAD ISZERO PUSH2 0x710 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD DUP2 SWAP1 MSTORE PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x4F7267616E697A6174696F6E20616C7265616479207265676973746572656421 PUSH1 0x44 DUP3 ADD MSTORE PUSH1 0x64 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND SWAP1 SWAP2 OR DUP2 SSTORE PUSH1 0x1 ADD PUSH2 0x746 DUP6 DUP3 PUSH2 0x1573 JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x2 ADD PUSH2 0x76C DUP5 DUP3 PUSH2 0x1573 JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xB ADD PUSH2 0x792 DUP4 DUP3 PUSH2 0x1573 JUMP JUMPDEST POP PUSH2 0x7A0 DUP2 PUSH3 0x2A300 PUSH2 0x14F8 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP7 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xD ADD SSTORE PUSH2 0x7C5 DUP6 PUSH2 0xEC7 JUMP JUMPDEST PUSH2 0x7D0 SWAP1 PUSH1 0x1 PUSH2 0x14F8 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP6 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x5 ADD SWAP7 SWAP1 SWAP7 SSTORE PUSH1 0x4 DUP1 SLOAD PUSH1 0x1 DUP2 ADD DUP3 SSTORE SWAP7 MSTORE PUSH32 0x8A35ACFBC15FF81A39AE7D344FD709F28E8600B4AA8C65C6B64BFE7FE36BD19B SWAP1 SWAP6 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND SWAP1 SWAP6 OR SWAP1 SWAP5 SSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0xD ADD SLOAD DUP3 GT ISZERO PUSH2 0x863 JUMPI POP PUSH1 0x1 PUSH2 0x867 JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x4 SLOAD PUSH1 0x8 SLOAD PUSH1 0x60 SWAP2 SWAP1 PUSH1 0x0 SWAP1 DUP2 SWAP1 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x894 JUMPI PUSH2 0x894 PUSH2 0x1311 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x8CD JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH2 0x8BA PUSH2 0x10D8 JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x8B2 JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x66D JUMPI PUSH1 0x0 PUSH1 0x4 DUP3 DUP2 SLOAD DUP2 LT PUSH2 0x8F0 JUMPI PUSH2 0x8F0 PUSH2 0x14A8 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP1 DUP4 MSTORE SWAP1 DUP3 SWAP1 MSTORE PUSH1 0x40 SWAP1 SWAP2 KECCAK256 PUSH1 0x6 ADD SLOAD SWAP1 SWAP2 POP PUSH1 0xFF AND ISZERO PUSH2 0xB71 JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP1 DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 DUP2 MLOAD PUSH2 0x120 DUP2 ADD SWAP1 SWAP3 MSTORE DUP1 SLOAD SWAP1 SWAP5 AND DUP2 MSTORE PUSH1 0x1 DUP5 ADD DUP1 SLOAD SWAP2 SWAP3 DUP4 ADD SWAP2 PUSH2 0x961 SWAP1 PUSH2 0x14BE JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x98D SWAP1 PUSH2 0x14BE JUMP JUMPDEST DUP1 ISZERO PUSH2 0x9DA JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x9AF JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x9DA JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x9BD JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD DUP4 PUSH1 0x2 ADD DUP1 SLOAD PUSH2 0x9F3 SWAP1 PUSH2 0x14BE JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0xA1F SWAP1 PUSH2 0x14BE JUMP JUMPDEST DUP1 ISZERO PUSH2 0xA6C JUMPI DUP1 PUSH1 0x1F LT PUSH2 0xA41 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0xA6C JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0xA4F JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP SWAP2 DUP4 MSTORE POP POP PUSH1 0x3 DUP5 ADD SLOAD PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x4 DUP5 ADD SLOAD PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x5 DUP5 ADD SLOAD PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x6 DUP5 ADD SLOAD PUSH1 0xFF AND ISZERO ISZERO PUSH1 0x80 DUP3 ADD MSTORE PUSH1 0xB DUP5 ADD DUP1 SLOAD PUSH1 0xA0 SWAP1 SWAP3 ADD SWAP2 PUSH2 0xAB6 SWAP1 PUSH2 0x14BE JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0xAE2 SWAP1 PUSH2 0x14BE JUMP JUMPDEST DUP1 ISZERO PUSH2 0xB2F JUMPI DUP1 PUSH1 0x1F LT PUSH2 0xB04 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0xB2F JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0xB12 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD DUP4 PUSH1 0xD ADD SLOAD DUP2 MSTORE POP SWAP1 POP DUP1 DUP6 DUP8 DUP2 MLOAD DUP2 LT PUSH2 0xB56 JUMPI PUSH2 0xB56 PUSH2 0x14A8 JUMP JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MSTORE PUSH2 0xB6C PUSH1 0x1 DUP8 PUSH2 0x14F8 JUMP JUMPDEST SWAP6 POP POP POP JUMPDEST POP DUP1 PUSH2 0xB7C DUP2 PUSH2 0x150B JUMP JUMPDEST SWAP2 POP POP PUSH2 0x8D3 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x9 SLOAD PUSH1 0x33 PUSH2 0xB95 SWAP2 SWAP1 PUSH2 0x1633 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x3 ADD SLOAD PUSH2 0xBBC SWAP1 PUSH1 0x64 PUSH2 0x1633 JUMP JUMPDEST LT PUSH2 0xBC9 JUMPI POP PUSH1 0x1 SWAP2 SWAP1 POP JUMP JUMPDEST POP PUSH1 0x0 SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0xC SLOAD PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0xCB4 JUMPI PUSH1 0xC DUP1 SLOAD DUP1 PUSH2 0xBF0 JUMPI PUSH2 0xBF0 PUSH2 0x164A JUMP JUMPDEST PUSH1 0x0 DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0xF PUSH1 0x0 NOT SWAP1 SWAP4 ADD SWAP3 DUP4 MUL ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND DUP2 SSTORE SWAP1 PUSH2 0xC21 PUSH1 0x1 DUP4 ADD DUP3 PUSH2 0x112F JUMP JUMPDEST PUSH2 0xC2F PUSH1 0x2 DUP4 ADD PUSH1 0x0 PUSH2 0x112F JUMP JUMPDEST PUSH1 0x0 PUSH1 0x3 DUP4 ADD DUP2 SWAP1 SSTORE PUSH1 0x4 DUP4 ADD DUP2 SWAP1 SSTORE PUSH1 0x5 DUP4 ADD DUP2 SWAP1 SSTORE PUSH1 0x6 DUP4 ADD DUP1 SLOAD PUSH1 0xFF NOT AND SWAP1 SSTORE PUSH2 0xC60 SWAP1 PUSH1 0x7 DUP5 ADD SWAP1 PUSH2 0x116C JUMP JUMPDEST PUSH2 0xC6E PUSH1 0x8 DUP4 ADD PUSH1 0x0 PUSH2 0x116C JUMP JUMPDEST PUSH1 0xA DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0xB DUP3 ADD PUSH1 0x0 PUSH2 0xC86 SWAP2 SWAP1 PUSH2 0x112F JUMP JUMPDEST POP PUSH1 0x0 PUSH1 0xC DUP3 ADD DUP2 SWAP1 SSTORE PUSH1 0xD DUP3 ADD SSTORE PUSH1 0xE ADD DUP1 SLOAD PUSH1 0xFF NOT AND SWAP1 SSTORE SWAP1 SSTORE DUP1 PUSH2 0xCAC DUP2 PUSH2 0x150B JUMP JUMPDEST SWAP2 POP POP PUSH2 0xBD7 JUMP JUMPDEST POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 CALLER DUP5 MSTORE PUSH1 0x9 ADD SWAP1 SWAP2 MSTORE SWAP1 KECCAK256 SLOAD PUSH1 0xFF AND PUSH1 0x2 EQ SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0xD ADD SLOAD DUP4 SWAP1 DUP3 SUB PUSH2 0xD21 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x707 SWAP1 PUSH2 0x1660 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x6 ADD SLOAD PUSH1 0xFF AND ISZERO PUSH2 0xD8D JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x1E PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x4F7267616E697A6174696F6E20616C7265616479207665726966696564210000 PUSH1 0x44 DUP3 ADD MSTORE PUSH1 0x64 ADD PUSH2 0x707 JUMP JUMPDEST CALLER PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xD ADD SLOAD ISZERO DUP1 ISZERO SWAP1 PUSH2 0xDC0 JUMPI POP CALLER PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x6 ADD SLOAD PUSH1 0xFF AND JUMPDEST PUSH2 0xDDC JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x707 SWAP1 PUSH2 0x16A4 JUMP JUMPDEST PUSH2 0xDE5 DUP2 PUSH2 0xCB8 JUMP JUMPDEST ISZERO DUP1 ISZERO PUSH2 0xDF8 JUMPI POP PUSH2 0xDF6 DUP2 PUSH2 0x675 JUMP JUMPDEST ISZERO JUMPDEST PUSH2 0xE14 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x707 SWAP1 PUSH2 0x1701 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x3 ADD DUP1 SLOAD PUSH1 0x1 SWAP3 SWAP1 PUSH2 0xE40 SWAP1 DUP5 SWAP1 PUSH2 0x14F8 JUMP JUMPDEST SWAP1 SWAP2 SSTORE POP POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 PUSH1 0x7 DUP2 ADD DUP1 SLOAD PUSH1 0x1 DUP2 ADD DUP3 SSTORE SWAP1 DUP6 MSTORE DUP4 DUP6 KECCAK256 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND CALLER SWAP1 DUP2 OR SWAP1 SWAP2 SSTORE DUP5 MSTORE PUSH1 0x9 ADD SWAP1 SWAP2 MSTORE SWAP1 KECCAK256 DUP1 SLOAD PUSH1 0xFF NOT AND PUSH1 0x2 OR SWAP1 SSTORE PUSH2 0xEA3 DUP5 DUP5 PUSH2 0x838 JUMP JUMPDEST ISZERO PUSH2 0xEBB JUMPI PUSH2 0xEB1 DUP5 PUSH2 0xB84 JUMP JUMPDEST POP PUSH1 0x1 SWAP2 POP PUSH2 0xEC0 JUMP JUMPDEST PUSH1 0x0 SWAP2 POP JUMPDEST POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x4 DUP2 ADD SLOAD PUSH1 0x3 SWAP1 SWAP2 ADD SLOAD PUSH1 0x9 SLOAD PUSH2 0xEF7 SWAP2 SWAP1 PUSH2 0x1495 JUMP JUMPDEST PUSH2 0x867 SWAP2 SWAP1 PUSH2 0x1495 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0xD ADD SLOAD DUP4 SWAP1 DUP3 SUB PUSH2 0xF3D JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x707 SWAP1 PUSH2 0x1660 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x6 ADD SLOAD PUSH1 0xFF AND ISZERO PUSH2 0xFA9 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x1E PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x4F7267616E697A6174696F6E20616C7265616479207665726966696564210000 PUSH1 0x44 DUP3 ADD MSTORE PUSH1 0x64 ADD PUSH2 0x707 JUMP JUMPDEST CALLER PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xD ADD SLOAD ISZERO DUP1 ISZERO SWAP1 PUSH2 0xFDC JUMPI POP CALLER PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x6 ADD SLOAD PUSH1 0xFF AND JUMPDEST PUSH2 0xFF8 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x707 SWAP1 PUSH2 0x16A4 JUMP JUMPDEST PUSH2 0x1001 DUP2 PUSH2 0xCB8 JUMP JUMPDEST ISZERO DUP1 ISZERO PUSH2 0x1014 JUMPI POP PUSH2 0x1012 DUP2 PUSH2 0x675 JUMP JUMPDEST ISZERO JUMPDEST PUSH2 0x1030 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x707 SWAP1 PUSH2 0x1701 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x4 ADD DUP1 SLOAD PUSH1 0x1 SWAP3 SWAP1 PUSH2 0x105C SWAP1 DUP5 SWAP1 PUSH2 0x14F8 JUMP JUMPDEST SWAP1 SWAP2 SSTORE POP POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 PUSH1 0x8 DUP2 ADD DUP1 SLOAD PUSH1 0x1 DUP2 DUP2 ADD DUP4 SSTORE SWAP2 DUP7 MSTORE DUP5 DUP7 KECCAK256 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND CALLER SWAP1 DUP2 OR SWAP1 SWAP2 SSTORE DUP6 MSTORE PUSH1 0x9 SWAP1 SWAP2 ADD SWAP1 SWAP3 MSTORE SWAP1 SWAP2 KECCAK256 DUP1 SLOAD PUSH1 0xFF NOT AND SWAP1 SWAP2 OR SWAP1 SSTORE PUSH2 0x10C3 DUP5 DUP5 PUSH2 0x838 JUMP JUMPDEST ISZERO PUSH2 0xEBB JUMPI PUSH2 0x10D1 DUP5 PUSH2 0xB84 JUMP JUMPDEST SWAP2 POP PUSH2 0xEC0 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH2 0x120 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE POP SWAP1 JUMP JUMPDEST POP DUP1 SLOAD PUSH2 0x113B SWAP1 PUSH2 0x14BE JUMP JUMPDEST PUSH1 0x0 DUP3 SSTORE DUP1 PUSH1 0x1F LT PUSH2 0x114B JUMPI POP POP JUMP JUMPDEST PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 DUP2 ADD SWAP1 PUSH2 0x1169 SWAP2 SWAP1 PUSH2 0x1186 JUMP JUMPDEST POP JUMP JUMPDEST POP DUP1 SLOAD PUSH1 0x0 DUP3 SSTORE SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 DUP2 ADD SWAP1 PUSH2 0x1169 SWAP2 SWAP1 JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0x119B JUMPI PUSH1 0x0 DUP2 SSTORE PUSH1 0x1 ADD PUSH2 0x1187 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD DUP1 DUP5 MSTORE PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x11C5 JUMPI PUSH1 0x20 DUP2 DUP6 ADD DUP2 ADD MLOAD DUP7 DUP4 ADD DUP3 ADD MSTORE ADD PUSH2 0x11A9 JUMP JUMPDEST POP PUSH1 0x0 PUSH1 0x20 DUP3 DUP7 ADD ADD MSTORE PUSH1 0x20 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND DUP6 ADD ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 ADD DUP2 DUP5 MSTORE DUP1 DUP6 MLOAD DUP1 DUP4 MSTORE PUSH1 0x40 SWAP3 POP DUP3 DUP7 ADD SWAP2 POP DUP3 DUP2 PUSH1 0x5 SHL DUP8 ADD ADD DUP5 DUP9 ADD PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x12C5 JUMPI DUP9 DUP4 SUB PUSH1 0x3F NOT ADD DUP6 MSTORE DUP2 MLOAD DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP5 MSTORE PUSH2 0x120 DUP9 DUP3 ADD MLOAD DUP2 DUP11 DUP8 ADD MSTORE PUSH2 0x1244 DUP3 DUP8 ADD DUP3 PUSH2 0x119F JUMP JUMPDEST SWAP2 POP POP DUP8 DUP3 ADD MLOAD DUP6 DUP3 SUB DUP10 DUP8 ADD MSTORE PUSH2 0x125C DUP3 DUP3 PUSH2 0x119F JUMP JUMPDEST PUSH1 0x60 DUP5 DUP2 ADD MLOAD SWAP1 DUP9 ADD MSTORE PUSH1 0x80 DUP1 DUP6 ADD MLOAD SWAP1 DUP9 ADD MSTORE PUSH1 0xA0 DUP1 DUP6 ADD MLOAD SWAP1 DUP9 ADD MSTORE PUSH1 0xC0 DUP1 DUP6 ADD MLOAD ISZERO ISZERO SWAP1 DUP9 ADD MSTORE PUSH1 0xE0 DUP1 DUP6 ADD MLOAD DUP9 DUP4 SUB DUP3 DUP11 ADD MSTORE SWAP2 SWAP4 POP SWAP2 POP PUSH2 0x12A2 DUP4 DUP3 PUSH2 0x119F JUMP JUMPDEST PUSH2 0x100 SWAP5 DUP6 ADD MLOAD SWAP8 SWAP1 SWAP5 ADD SWAP7 SWAP1 SWAP7 MSTORE POP POP SWAP5 DUP8 ADD SWAP5 SWAP3 POP SWAP1 DUP7 ADD SWAP1 PUSH1 0x1 ADD PUSH2 0x120C JUMP JUMPDEST POP SWAP1 SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST DUP1 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH2 0x12EA JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x1301 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x130A DUP3 PUSH2 0x12D3 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x1338 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x1353 JUMPI PUSH2 0x1353 PUSH2 0x1311 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP4 ADD PUSH1 0x1F NOT SWAP1 DUP2 AND PUSH1 0x3F ADD AND DUP2 ADD SWAP1 DUP3 DUP3 GT DUP2 DUP4 LT OR ISZERO PUSH2 0x137B JUMPI PUSH2 0x137B PUSH2 0x1311 JUMP JUMPDEST DUP2 PUSH1 0x40 MSTORE DUP4 DUP2 MSTORE DUP7 PUSH1 0x20 DUP6 DUP9 ADD ADD GT ISZERO PUSH2 0x1394 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 PUSH1 0x20 DUP8 ADD PUSH1 0x20 DUP4 ADD CALLDATACOPY PUSH1 0x0 PUSH1 0x20 DUP6 DUP4 ADD ADD MSTORE DUP1 SWAP5 POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0xA0 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x13CC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x13D5 DUP7 PUSH2 0x12D3 JUMP JUMPDEST SWAP5 POP PUSH1 0x20 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x13F2 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x13FE DUP10 DUP4 DUP11 ADD PUSH2 0x1327 JUMP JUMPDEST SWAP6 POP PUSH1 0x40 DUP9 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x1414 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1420 DUP10 DUP4 DUP11 ADD PUSH2 0x1327 JUMP JUMPDEST SWAP5 POP PUSH1 0x60 DUP9 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x1436 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1443 DUP9 DUP3 DUP10 ADD PUSH2 0x1327 JUMP JUMPDEST SWAP6 SWAP9 SWAP5 SWAP8 POP SWAP3 SWAP6 PUSH1 0x80 ADD CALLDATALOAD SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x1468 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x1471 DUP4 PUSH2 0x12D3 JUMP JUMPDEST SWAP5 PUSH1 0x20 SWAP4 SWAP1 SWAP4 ADD CALLDATALOAD SWAP4 POP POP POP JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST DUP2 DUP2 SUB DUP2 DUP2 GT ISZERO PUSH2 0x867 JUMPI PUSH2 0x867 PUSH2 0x147F JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH2 0x14D2 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x14F2 JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST DUP1 DUP3 ADD DUP1 DUP3 GT ISZERO PUSH2 0x867 JUMPI PUSH2 0x867 PUSH2 0x147F JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 DUP3 ADD PUSH2 0x151D JUMPI PUSH2 0x151D PUSH2 0x147F JUMP JUMPDEST POP PUSH1 0x1 ADD SWAP1 JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0x156E JUMPI PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP2 ADD PUSH1 0x20 DUP7 LT ISZERO PUSH2 0x154B JUMPI POP DUP1 JUMPDEST PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP3 ADD SWAP2 POP JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x156A JUMPI DUP3 DUP2 SSTORE PUSH1 0x1 ADD PUSH2 0x1557 JUMP JUMPDEST POP POP POP JUMPDEST POP POP POP JUMP JUMPDEST DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x158D JUMPI PUSH2 0x158D PUSH2 0x1311 JUMP JUMPDEST PUSH2 0x15A1 DUP2 PUSH2 0x159B DUP5 SLOAD PUSH2 0x14BE JUMP JUMPDEST DUP5 PUSH2 0x1524 JUMP JUMPDEST PUSH1 0x20 DUP1 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0x15D6 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0x15BE JUMPI POP DUP6 DUP4 ADD MLOAD JUMPDEST PUSH1 0x0 NOT PUSH1 0x3 DUP7 SWAP1 SHL SHR NOT AND PUSH1 0x1 DUP6 SWAP1 SHL OR DUP6 SSTORE PUSH2 0x156A JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F NOT DUP7 AND SWAP2 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x1605 JUMPI DUP9 DUP7 ADD MLOAD DUP3 SSTORE SWAP5 DUP5 ADD SWAP5 PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 DUP5 ADD PUSH2 0x15E6 JUMP JUMPDEST POP DUP6 DUP3 LT ISZERO PUSH2 0x1623 JUMPI DUP8 DUP6 ADD MLOAD PUSH1 0x0 NOT PUSH1 0x3 DUP9 SWAP1 SHL PUSH1 0xF8 AND SHR NOT AND DUP2 SSTORE JUMPDEST POP POP POP POP POP PUSH1 0x1 SWAP1 DUP2 SHL ADD SWAP1 SSTORE POP JUMP JUMPDEST DUP1 DUP3 MUL DUP2 ISZERO DUP3 DUP3 DIV DUP5 EQ OR PUSH2 0x867 JUMPI PUSH2 0x867 PUSH2 0x147F JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x31 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x24 SWAP1 DUP3 ADD MSTORE PUSH32 0x4F7267616E697A6174696F6E206164647265737320646F6573206E6F74206578 PUSH1 0x40 DUP3 ADD MSTORE PUSH4 0x69737421 PUSH1 0xE0 SHL PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x3A SWAP1 DUP3 ADD MSTORE PUSH32 0x566F746572206F7267616E697A6174696F6E206973206E6F7420766572696669 PUSH1 0x40 DUP3 ADD MSTORE PUSH32 0x65642C206E6F74207065726D697474656420746F20766F746521000000000000 PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x2E SWAP1 DUP3 ADD MSTORE PUSH32 0x566F746572206F7267616E697A6174696F6E2063616E6E6F7420766F7465206D PUSH1 0x40 DUP3 ADD MSTORE PUSH14 0x6F7265207468616E206F6E636521 PUSH1 0x90 SHL PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 SMOD CALL 0xEE SWAP2 DELEGATECALL EXTCODECOPY 0x26 0xE5 0xC1 0xC6 0xB7 0xB7 PC 0xBD 0x5C 0xAF DUP7 PUSH2 0x9D3D 0x2B CODESIZE LOG2 PUSH26 0x2E365C32C8AB823364736F6C6343000811003300000000000000 ", + "sourceMap": "67:10537:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5206:1314;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3240:192;;;;;;:::i;:::-;;:::i;:::-;;;3150:14:2;;3143:22;3125:41;;3113:2;3098:18;3240:192:0;2985:187:2;7704:885:0;;;;;;:::i;:::-;;:::i;:::-;;3543:274;;;;;;:::i;:::-;;:::i;1202:33::-;;;;;;;;;5330:25:2;;;5318:2;5303:18;1202:33:0;5184:177:2;2325:129:0;;;;;;:::i;:::-;-1:-1:-1;;;;;2415:23:0;2388:7;2415:23;;;;;;;;;;:31;;;;2325:129;3917:1189;;;:::i;9689:289::-;;;;;;:::i;:::-;;:::i;1749:120::-;1830:10;1792:4;1816:25;;;;;;;;;;:45;;;;;1749:120;;6600:201;;;:::i;2130:100::-;;2192:10;2178:13;:25;;;;;;;;;;:37;;:44;;-1:-1:-1;;2178:44:0;2218:4;2178:44;;;2130:100;2552:133;;;;;;:::i;:::-;-1:-1:-1;;;;;2644:23:0;2617:7;2644:23;;;;;;;;;;:33;;;;2552:133;2975:190;;;;;;:::i;:::-;;:::i;8642:456::-;;;;;;:::i;:::-;;:::i;1958:110::-;2037:10;1999:4;2023:25;;;;;;;;;;:37;;;;;1958:110;;2693:209;;;;;;:::i;:::-;;:::i;9153:457::-;;;;;;:::i;:::-;;:::i;1140:20::-;;;;;-1:-1:-1;;;;;1140:20:0;;;;;;-1:-1:-1;;;;;5530:32:2;;;5512:51;;5500:2;5485:18;1140:20:0;5366:203:2;5206:1314:0;5344:19;:26;5504:16;;5293:19;;5344:26;5330:11;;;;5475:45;;5344:26;5475:45;:::i;:::-;5444:87;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;5407:124;;5547:9;5542:939;5566:3;5562:1;:7;5542:939;;;5591:16;5610:19;5630:1;5610:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;5610:22:0;5652:23;;;;;;;;;;;:43;;;5610:22;;-1:-1:-1;5652:43:0;;5647:823;;5744:635;;;;;;;;-1:-1:-1;;;;;5791:23:0;;;5716:25;5791:23;;;;;;;;;;:35;;;;;5744:635;;5855:23;;;;;;5791:35;5855:28;;;5744:635;;5716:25;;5744:635;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5915:13;:23;5929:8;-1:-1:-1;;;;;5915:23:0;-1:-1:-1;;;;;5915:23:0;;;;;;;;;;;;:31;;5744:635;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;5744:635:0;;;-1:-1:-1;;;;;;;5978:23:0;;:13;:23;;;5744:635;5978:23;;;;;;;:31;;;;5744:635;;;;6043:33;;;;5744:635;;;;;;;6105:29;;;;5744:635;;;;6178:43;;;;;;5744:635;;;;;;6250:23;;;;:28;;5744:635;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6319:13;:23;6333:8;-1:-1:-1;;;;;6319:23:0;-1:-1:-1;;;;;6319:23:0;;;;;;;;;;;;:40;;;5744:635;;;5716:663;;6420:7;6398:14;6413:3;6398:19;;;;;;;;:::i;:::-;;;;;;;;;;:29;6446:8;6453:1;6446:8;;:::i;:::-;;;5697:773;5647:823;-1:-1:-1;5571:3:0;;;;:::i;:::-;;;;5542:939;;;-1:-1:-1;6498:14:0;5206:1314;-1:-1:-1;;;5206:1314:0:o;3240:192::-;-1:-1:-1;;;;;3374:26:0;3308:4;3374:26;;;;;;;;;;;3346:10;3374:45;;:33;;:45;;;;;;;;;:50;;3240:192::o;7704:885::-;-1:-1:-1;;;;;7949:35:0;;:13;:35;;;;;;;;;;:52;;;:57;7927:139;;;;-1:-1:-1;;;7927:139:0;;6828:2:2;7927:139:0;;;6810:21:2;;;6847:18;;;6840:30;6906:34;6886:18;;;6879:62;6958:18;;7927:139:0;;;;;;;;;-1:-1:-1;;;;;8079:35:0;;:13;:35;;;;;;;;;;:70;;-1:-1:-1;;;;;;8079:70:0;;;;;;;8160:40;:60;8203:17;8160:40;:60;:::i;:::-;-1:-1:-1;;;;;;8231:35:0;;:13;:35;;;;;;;;;;:43;;:58;8277:12;8231:43;:58;:::i;:::-;-1:-1:-1;;;;;;8300:35:0;;:13;:35;;;;;;;;;;:40;;:54;8343:11;8300:40;:54;:::i;:::-;-1:-1:-1;8420:13:0;:4;8427:6;8420:13;:::i;:::-;-1:-1:-1;;;;;8365:35:0;;:13;:35;;;;;;;;;;:52;;:68;8488:34;8379:20;8488:12;:34::i;:::-;:36;;8523:1;8488:36;:::i;:::-;-1:-1:-1;;;;;8444:35:0;;;:13;:35;;;;;;;;;;:41;;:80;;;;8535:19;:46;;;;;;;;;;;;;;;-1:-1:-1;;;;;;8535:46:0;;;;;;;-1:-1:-1;;;;7704:885:0:o;3543:274::-;-1:-1:-1;;;;;3670:23:0;;3649:4;3670:23;;;;;;;;;;:40;;;:55;-1:-1:-1;3666:144:0;;;-1:-1:-1;3749:4:0;3742:11;;3666:144;-1:-1:-1;3793:5:0;3666:144;3543:274;;;;:::o;3917:1189::-;4053:19;:26;4168:16;;4002:19;;4053:26;4039:11;;;;4151:34;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;4116:69;;4201:9;4196:873;4220:3;4216:1;:7;4196:873;;;4245:16;4264:19;4284:1;4264:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;4264:22:0;4305:23;;;;;;;;;;;:43;;;4264:22;;-1:-1:-1;4305:43:0;;4301:757;;;-1:-1:-1;;;;;4400:23:0;;;4369:28;4400:23;;;;;;;;;;;4474:491;;;;;;;;4521:19;;;;;4474:491;;4521:19;4569:12;;4474:491;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4613:7;:15;;4474:491;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;4474:491:0;;;-1:-1:-1;;4660:15:0;;;;4474:491;;;;4709:17;;;;4474:491;;;;4755:13;;;;4474:491;;;;4812:27;;;;;;4474:491;;;;;;4868:12;;;4474:491;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4921:7;:24;;;4474:491;;;4442:523;;5004:11;4984:12;4997:3;4984:17;;;;;;;;:::i;:::-;;;;;;;;;;:31;5034:8;5041:1;5034:8;;:::i;:::-;;;4350:708;;4301:757;-1:-1:-1;4225:3:0;;;;:::i;:::-;;;;4196:873;;9689:289;9791:4;9875:18;;9896:2;9875:23;;;;:::i;:::-;-1:-1:-1;;;;;9831:26:0;;:13;:26;;;;;;;;;;:34;;;:40;;9868:3;9831:40;:::i;:::-;:67;9813:135;;-1:-1:-1;9932:4:0;;9689:289;-1:-1:-1;9689:289:0:o;9813:135::-;-1:-1:-1;9965:5:0;;9689:289;-1:-1:-1;9689:289:0:o;6600:201::-;6670:17;:24;6651:16;6705:89;6729:8;6725:1;:12;6705:89;;;6759:17;:23;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;6759:23:0;;;;;;;;;-1:-1:-1;;;;;;6759:23:0;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;6759:23:0;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;6759:23:0;;;;;;;;;;;;;;;-1:-1:-1;;6759:23:0;;;;;6739:3;;;;:::i;:::-;;;;6705:89;;;;6640:161;6600:201::o;2975:190::-;-1:-1:-1;;;;;3107:26:0;3041:4;3107:26;;;;;;;;;;;3079:10;3107:45;;:33;;:45;;;;;;;;3156:1;3107:50;;2975:190::o;8642:456::-;-1:-1:-1;;;;;6886:23:0;;8762:4;6886:23;;;;;;;;;;:40;;;8742:8;;6886:45;;6864:131;;;;-1:-1:-1;;;6864:131:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;7029:23:0;;:13;:23;;;;;;;;;;:43;;;;;7028:44;7006:124;;;;-1:-1:-1;;;7006:124:0;;10103:2:2;7006:124:0;;;10085:21:2;10142:2;10122:18;;;10115:30;10181:32;10161:18;;;10154:60;10231:18;;7006:124:0;9901:354:2;7006:124:0;7177:10;7163:13;:25;;;;;;;;;;:42;;;:47;;;;:113;;-1:-1:-1;7245:10:0;7231:13;:25;;;;;;;;;;:45;;;;;7163:113;7141:221;;;;-1:-1:-1;;;7141:221:0;;;;;;;:::i;:::-;7396:24;7411:8;7396:14;:24::i;:::-;7395:25;:56;;;;;7425:26;7442:8;7425:16;:26::i;:::-;7424:27;7395:56;7373:152;;;;-1:-1:-1;;;7373:152:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;8778:23:0;::::1;:13;:23:::0;;;::::1;::::0;;;;;;:31:::1;;:36:::0;;8813:1:::1;::::0;8778:13;:36:::1;::::0;8813:1;;8778:36:::1;:::i;:::-;::::0;;;-1:-1:-1;;;;;;;8825:23:0;::::1;:13;:23:::0;;;::::1;::::0;;;;;;;:32:::1;::::0;::::1;:49:::0;;::::1;::::0;::::1;::::0;;;;;;;;::::1;::::0;;-1:-1:-1;;;;;;8825:49:0::1;8863:10;8825:49:::0;;::::1;::::0;;;8885:42;;:30:::1;;:42:::0;;;;;:46;;-1:-1:-1;;8885:46:0::1;8930:1;8885:46;::::0;;8946:34:::1;8839:8:::0;8967:12;8946:10:::1;:34::i;:::-;8942:126;;;8997:33;9021:8;8997:23;:33::i;:::-;;9052:4;9045:11;;;;8942:126;9085:5;9078:12;;7536:1;8642:456:::0;;;;;:::o;2693:209::-;-1:-1:-1;;;;;2644:23:0;;2754:7;2644:23;;;;;;;;;;:33;;;;2415:31;;;;;2794:18;;:58;;2415:31;2794:58;:::i;:::-;:100;;;;:::i;9153:457::-;-1:-1:-1;;;;;6886:23:0;;9275:4;6886:23;;;;;;;;;;:40;;;9256:8;;6886:45;;6864:131;;;;-1:-1:-1;;;6864:131:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;7029:23:0;;:13;:23;;;;;;;;;;:43;;;;;7028:44;7006:124;;;;-1:-1:-1;;;7006:124:0;;10103:2:2;7006:124:0;;;10085:21:2;10142:2;10122:18;;;10115:30;10181:32;10161:18;;;10154:60;10231:18;;7006:124:0;9901:354:2;7006:124:0;7177:10;7163:13;:25;;;;;;;;;;:42;;;:47;;;;:113;;-1:-1:-1;7245:10:0;7231:13;:25;;;;;;;;;;:45;;;;;7163:113;7141:221;;;;-1:-1:-1;;;7141:221:0;;;;;;;:::i;:::-;7396:24;7411:8;7396:14;:24::i;:::-;7395:25;:56;;;;;7425:26;7442:8;7425:16;:26::i;:::-;7424:27;7395:56;7373:152;;;;-1:-1:-1;;;7373:152:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;9292:23:0;::::1;:13;:23:::0;;;::::1;::::0;;;;;;:33:::1;;:38:::0;;9329:1:::1;::::0;9292:13;:38:::1;::::0;9329:1;;9292:38:::1;:::i;:::-;::::0;;;-1:-1:-1;;;;;;;9341:23:0;::::1;:13;:23:::0;;;::::1;::::0;;;;;;;:34:::1;::::0;::::1;:51:::0;;::::1;::::0;;::::1;::::0;;;;;;;;::::1;::::0;;-1:-1:-1;;;;;;9341:51:0::1;9381:10;9341:51:::0;;::::1;::::0;;;9403:42;;:30:::1;::::0;;::::1;:42:::0;;;;;;:46;;-1:-1:-1;;9403:46:0::1;::::0;;::::1;::::0;;9464:34:::1;9355:8:::0;9485:12;9464:10:::1;:34::i;:::-;9460:120;;;9522:33;9546:8;9522:23;:33::i;:::-;9515:40;;;;-1:-1:-1::0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;123:423:2:-;165:3;203:5;197:12;230:6;225:3;218:19;255:1;265:162;279:6;276:1;273:13;265:162;;;341:4;397:13;;;393:22;;387:29;369:11;;;365:20;;358:59;294:12;265:162;;;269:3;472:1;465:4;456:6;451:3;447:16;443:27;436:38;535:4;528:2;524:7;519:2;511:6;507:15;503:29;498:3;494:39;490:50;483:57;;;123:423;;;;:::o;647:1964::-;841:4;870:2;910;899:9;895:18;940:2;929:9;922:21;963:6;998;992:13;1029:6;1021;1014:22;1055:2;1045:12;;1088:2;1077:9;1073:18;1066:25;;1150:2;1140:6;1137:1;1133:14;1122:9;1118:30;1114:39;1188:2;1180:6;1176:15;1209:1;1219:1363;1233:6;1230:1;1227:13;1219:1363;;;1298:22;;;-1:-1:-1;;1294:36:2;1282:49;;1354:13;;1428:9;;-1:-1:-1;;;;;80:31:2;68:44;;1390:6;1493:2;1489;1485:11;1479:18;1534:2;1529;1521:6;1517:15;1510:27;1564:48;1608:2;1600:6;1596:15;1582:12;1564:48;:::i;:::-;1550:62;;;1661:2;1657;1653:11;1647:18;1714:6;1706;1702:19;1697:2;1689:6;1685:15;1678:44;1749:41;1783:6;1767:14;1749:41;:::i;:::-;1813:4;1860:11;;;1854:18;1837:15;;;1830:43;1896:4;1943:11;;;1937:18;1920:15;;;1913:43;1979:4;2026:11;;;2020:18;2003:15;;;1996:43;2062:4;2107:11;;;2101:18;621:13;614:21;2164:15;;;602:34;2203:4;2248:11;;;2242:18;2297:19;;;2280:15;;;2273:44;1735:55;;-1:-1:-1;2203:4:2;-1:-1:-1;2344:41:2;1735:55;2242:18;2344:41;:::i;:::-;2409:6;2459:12;;;2453:19;2435:16;;;;2428:45;;;;-1:-1:-1;;2560:12:2;;;;2330:55;-1:-1:-1;2525:15:2;;;;1255:1;1248:9;1219:1363;;;-1:-1:-1;2599:6:2;;647:1964;-1:-1:-1;;;;;;;;647:1964:2:o;2616:173::-;2684:20;;-1:-1:-1;;;;;2733:31:2;;2723:42;;2713:70;;2779:1;2776;2769:12;2713:70;2616:173;;;:::o;2794:186::-;2853:6;2906:2;2894:9;2885:7;2881:23;2877:32;2874:52;;;2922:1;2919;2912:12;2874:52;2945:29;2964:9;2945:29;:::i;:::-;2935:39;2794:186;-1:-1:-1;;;2794:186:2:o;3177:127::-;3238:10;3233:3;3229:20;3226:1;3219:31;3269:4;3266:1;3259:15;3293:4;3290:1;3283:15;3309:719;3352:5;3405:3;3398:4;3390:6;3386:17;3382:27;3372:55;;3423:1;3420;3413:12;3372:55;3459:6;3446:20;3485:18;3522:2;3518;3515:10;3512:36;;;3528:18;;:::i;:::-;3603:2;3597:9;3571:2;3657:13;;-1:-1:-1;;3653:22:2;;;3677:2;3649:31;3645:40;3633:53;;;3701:18;;;3721:22;;;3698:46;3695:72;;;3747:18;;:::i;:::-;3787:10;3783:2;3776:22;3822:2;3814:6;3807:18;3868:3;3861:4;3856:2;3848:6;3844:15;3840:26;3837:35;3834:55;;;3885:1;3882;3875:12;3834:55;3949:2;3942:4;3934:6;3930:17;3923:4;3915:6;3911:17;3898:54;3996:1;3989:4;3984:2;3976:6;3972:15;3968:26;3961:37;4016:6;4007:15;;;;;;3309:719;;;;:::o;4033:887::-;4158:6;4166;4174;4182;4190;4243:3;4231:9;4222:7;4218:23;4214:33;4211:53;;;4260:1;4257;4250:12;4211:53;4283:29;4302:9;4283:29;:::i;:::-;4273:39;;4363:2;4352:9;4348:18;4335:32;4386:18;4427:2;4419:6;4416:14;4413:34;;;4443:1;4440;4433:12;4413:34;4466:50;4508:7;4499:6;4488:9;4484:22;4466:50;:::i;:::-;4456:60;;4569:2;4558:9;4554:18;4541:32;4525:48;;4598:2;4588:8;4585:16;4582:36;;;4614:1;4611;4604:12;4582:36;4637:52;4681:7;4670:8;4659:9;4655:24;4637:52;:::i;:::-;4627:62;;4742:2;4731:9;4727:18;4714:32;4698:48;;4771:2;4761:8;4758:16;4755:36;;;4787:1;4784;4777:12;4755:36;;4810:52;4854:7;4843:8;4832:9;4828:24;4810:52;:::i;:::-;4033:887;;;;-1:-1:-1;4033:887:2;;4909:3;4894:19;4881:33;;4033:887;-1:-1:-1;;;4033:887:2:o;4925:254::-;4993:6;5001;5054:2;5042:9;5033:7;5029:23;5025:32;5022:52;;;5070:1;5067;5060:12;5022:52;5093:29;5112:9;5093:29;:::i;:::-;5083:39;5169:2;5154:18;;;;5141:32;;-1:-1:-1;;;4925:254:2:o;5574:127::-;5635:10;5630:3;5626:20;5623:1;5616:31;5666:4;5663:1;5656:15;5690:4;5687:1;5680:15;5706:128;5773:9;;;5794:11;;;5791:37;;;5808:18;;:::i;5839:127::-;5900:10;5895:3;5891:20;5888:1;5881:31;5931:4;5928:1;5921:15;5955:4;5952:1;5945:15;5971:380;6050:1;6046:12;;;;6093;;;6114:61;;6168:4;6160:6;6156:17;6146:27;;6114:61;6221:2;6213:6;6210:14;6190:18;6187:38;6184:161;;6267:10;6262:3;6258:20;6255:1;6248:31;6302:4;6299:1;6292:15;6330:4;6327:1;6320:15;6184:161;;5971:380;;;:::o;6356:125::-;6421:9;;;6442:10;;;6439:36;;;6455:18;;:::i;6486:135::-;6525:3;6546:17;;;6543:43;;6566:18;;:::i;:::-;-1:-1:-1;6613:1:2;6602:13;;6486:135::o;7113:545::-;7215:2;7210:3;7207:11;7204:448;;;7251:1;7276:5;7272:2;7265:17;7321:4;7317:2;7307:19;7391:2;7379:10;7375:19;7372:1;7368:27;7362:4;7358:38;7427:4;7415:10;7412:20;7409:47;;;-1:-1:-1;7450:4:2;7409:47;7505:2;7500:3;7496:12;7493:1;7489:20;7483:4;7479:31;7469:41;;7560:82;7578:2;7571:5;7568:13;7560:82;;;7623:17;;;7604:1;7593:13;7560:82;;;7564:3;;;7204:448;7113:545;;;:::o;7834:1352::-;7960:3;7954:10;7987:18;7979:6;7976:30;7973:56;;;8009:18;;:::i;:::-;8038:97;8128:6;8088:38;8120:4;8114:11;8088:38;:::i;:::-;8082:4;8038:97;:::i;:::-;8190:4;;8254:2;8243:14;;8271:1;8266:663;;;;8973:1;8990:6;8987:89;;;-1:-1:-1;9042:19:2;;;9036:26;8987:89;-1:-1:-1;;7791:1:2;7787:11;;;7783:24;7779:29;7769:40;7815:1;7811:11;;;7766:57;9089:81;;8236:944;;8266:663;7060:1;7053:14;;;7097:4;7084:18;;-1:-1:-1;;8302:20:2;;;8420:236;8434:7;8431:1;8428:14;8420:236;;;8523:19;;;8517:26;8502:42;;8615:27;;;;8583:1;8571:14;;;;8450:19;;8420:236;;;8424:3;8684:6;8675:7;8672:19;8669:201;;;8745:19;;;8739:26;-1:-1:-1;;8828:1:2;8824:14;;;8840:3;8820:24;8816:37;8812:42;8797:58;8782:74;;8669:201;-1:-1:-1;;;;;8916:1:2;8900:14;;;8896:22;8883:36;;-1:-1:-1;7834:1352:2:o;9191:168::-;9264:9;;;9295;;9312:15;;;9306:22;;9292:37;9282:71;;9333:18;;:::i;9364:127::-;9425:10;9420:3;9416:20;9413:1;9406:31;9456:4;9453:1;9446:15;9480:4;9477:1;9470:15;9496:400;9698:2;9680:21;;;9737:2;9717:18;;;9710:30;9776:34;9771:2;9756:18;;9749:62;-1:-1:-1;;;9842:2:2;9827:18;;9820:34;9886:3;9871:19;;9496:400::o;10260:422::-;10462:2;10444:21;;;10501:2;10481:18;;;10474:30;10540:34;10535:2;10520:18;;10513:62;10611:28;10606:2;10591:18;;10584:56;10672:3;10657:19;;10260:422::o;10687:410::-;10889:2;10871:21;;;10928:2;10908:18;;;10901:30;10967:34;10962:2;10947:18;;10940:62;-1:-1:-1;;;11033:2:2;11018:18;;11011:44;11087:3;11072:19;;10687:410::o" + }, + "gasEstimates": { + "creation": { + "codeDepositCost": "1204200", + "executionCost": "infinite", + "totalCost": "infinite" + }, + "external": { + "admin()": "2447", + "changeIsStakedPaid()": "24478", + "checkIfDownvoted(address)": "2687", + "checkIfUpvoted(address)": "2730", + "checkVerificationStatus(address)": "infinite", + "countOfDownvotes(address)": "2613", + "countOfUpvotes(address)": "2591", + "countOfViews(address)": "infinite", + "downVote(address,uint256)": "infinite", + "emptyListOrganization()": "infinite", + "isStaked()": "2425", + "isVerified()": "2492", + "registerOrg(address,string,string,string,uint256)": "infinite", + "totalOrganizations()": "2318", + "unverifiedOrganizationsList()": "infinite", + "upVote(address,uint256)": "infinite", + "verifiedOrganizationsList()": "infinite", + "votingDone(address,uint256)": "2724" + } + }, + "methodIdentifiers": { + "admin()": "f851a440", + "changeIsStakedPaid()": "a1b0ffe0", + "checkIfDownvoted(address)": "3e85747e", + "checkIfUpvoted(address)": "c9dfca10", + "checkVerificationStatus(address)": "6fc3911c", + "countOfDownvotes(address)": "b7627e41", + "countOfUpvotes(address)": "5cf9303f", + "countOfViews(address)": "e75176b5", + "downVote(address,uint256)": "f15c01dd", + "emptyListOrganization()": "8fc0ed2f", + "isStaked()": "e3323aba", + "isVerified()": "80007e83", + "registerOrg(address,string,string,string,uint256)": "440370fe", + "totalOrganizations()": "4cf5d552", + "unverifiedOrganizationsList()": "2d80468d", + "upVote(address,uint256)": "e2579114", + "verifiedOrganizationsList()": "5d0161f1", + "votingDone(address,uint256)": "4648df2a" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"inputs\":[],\"name\":\"admin\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"changeIsStakedPaid\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"checkIfDownvoted\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"checkIfUpvoted\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"checkVerificationStatus\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_addr\",\"type\":\"address\"}],\"name\":\"countOfDownvotes\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_addr\",\"type\":\"address\"}],\"name\":\"countOfUpvotes\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_addr\",\"type\":\"address\"}],\"name\":\"countOfViews\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_addr\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"current_time\",\"type\":\"uint256\"}],\"name\":\"downVote\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"emptyListOrganization\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isStaked\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isVerified\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"organization_address\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"organization_name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"document_cid\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"description\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"time\",\"type\":\"uint256\"}],\"name\":\"registerOrg\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalOrganizations\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"unverifiedOrganizationsList\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"doc_cid\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"upvotes\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"downvotes\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"views\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"verification_status\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"desc\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"application_time\",\"type\":\"uint256\"}],\"internalType\":\"struct OrgCreation.OrgDetails[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_addr\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"current_time\",\"type\":\"uint256\"}],\"name\":\"upVote\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"verifiedOrganizationsList\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"doc_cid\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"upvotes\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"downvotes\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"views\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"verification_status\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"desc\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"application_time\",\"type\":\"uint256\"}],\"internalType\":\"struct OrgCreation.OrgDetails[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_addr\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"current_time\",\"type\":\"uint256\"}],\"name\":\"votingDone\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol\":\"OrgCreation\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol\":{\"keccak256\":\"0xdcf694b024d1a1255aacfa75604c32dd739639437ac64a3f894d050574d09e3c\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://1dc8b0de720c0d4666c6194d912b2db2afb0d94b26bc96e2fc61c03378fb4863\",\"dweb:/ipfs/QmXr9bM4FCXd6CxWyw3Jhxv7kugvK1hfMZpiG1HP3JYjeq\"]}},\"version\":1}", + "storageLayout": { + "storage": [ + { + "astId": 60, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol:OrgCreation", + "label": "orgIdentifier", + "offset": 0, + "slot": "0", + "type": "t_mapping(t_address,t_struct(Organization)36_storage)" + }, + { + "astId": 66, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol:OrgCreation", + "label": "voters", + "offset": 0, + "slot": "1", + "type": "t_mapping(t_address,t_mapping(t_address,t_uint256))" + }, + { + "astId": 70, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol:OrgCreation", + "label": "verifiedOrgMap", + "offset": 0, + "slot": "2", + "type": "t_mapping(t_address,t_bool)" + }, + { + "astId": 74, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol:OrgCreation", + "label": "temp", + "offset": 0, + "slot": "3", + "type": "t_mapping(t_address,t_bool)" + }, + { + "astId": 77, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol:OrgCreation", + "label": "organizationAddress", + "offset": 0, + "slot": "4", + "type": "t_array(t_address)dyn_storage" + }, + { + "astId": 80, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol:OrgCreation", + "label": "notVotedAddress", + "offset": 0, + "slot": "5", + "type": "t_array(t_address)dyn_storage" + }, + { + "astId": 83, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol:OrgCreation", + "label": "maxPointAddress", + "offset": 0, + "slot": "6", + "type": "t_array(t_address)dyn_storage" + }, + { + "astId": 85, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol:OrgCreation", + "label": "admin", + "offset": 0, + "slot": "7", + "type": "t_address" + }, + { + "astId": 88, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol:OrgCreation", + "label": "verified_org_cnt", + "offset": 0, + "slot": "8", + "type": "t_uint256" + }, + { + "astId": 90, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol:OrgCreation", + "label": "totalOrganizations", + "offset": 0, + "slot": "9", + "type": "t_uint256" + }, + { + "astId": 92, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol:OrgCreation", + "label": "stakeToBeDistributed", + "offset": 0, + "slot": "10", + "type": "t_uint256" + }, + { + "astId": 94, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol:OrgCreation", + "label": "registeredViolations", + "offset": 0, + "slot": "11", + "type": "t_uint256" + }, + { + "astId": 98, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol:OrgCreation", + "label": "listOrganizations", + "offset": 0, + "slot": "12", + "type": "t_array(t_struct(Organization)36_storage)dyn_storage" + } + ], + "types": { + "t_address": { + "encoding": "inplace", + "label": "address", + "numberOfBytes": "20" + }, + "t_array(t_address)dyn_storage": { + "base": "t_address", + "encoding": "dynamic_array", + "label": "address[]", + "numberOfBytes": "32" + }, + "t_array(t_struct(Organization)36_storage)dyn_storage": { + "base": "t_struct(Organization)36_storage", + "encoding": "dynamic_array", + "label": "struct OrgCreation.Organization[]", + "numberOfBytes": "32" + }, + "t_bool": { + "encoding": "inplace", + "label": "bool", + "numberOfBytes": "1" + }, + "t_mapping(t_address,t_bool)": { + "encoding": "mapping", + "key": "t_address", + "label": "mapping(address => bool)", + "numberOfBytes": "32", + "value": "t_bool" + }, + "t_mapping(t_address,t_mapping(t_address,t_uint256))": { + "encoding": "mapping", + "key": "t_address", + "label": "mapping(address => mapping(address => uint256))", + "numberOfBytes": "32", + "value": "t_mapping(t_address,t_uint256)" + }, + "t_mapping(t_address,t_struct(Organization)36_storage)": { + "encoding": "mapping", + "key": "t_address", + "label": "mapping(address => struct OrgCreation.Organization)", + "numberOfBytes": "32", + "value": "t_struct(Organization)36_storage" + }, + "t_mapping(t_address,t_uint256)": { + "encoding": "mapping", + "key": "t_address", + "label": "mapping(address => uint256)", + "numberOfBytes": "32", + "value": "t_uint256" + }, + "t_mapping(t_address,t_uint8)": { + "encoding": "mapping", + "key": "t_address", + "label": "mapping(address => uint8)", + "numberOfBytes": "32", + "value": "t_uint8" + }, + "t_string_storage": { + "encoding": "bytes", + "label": "string", + "numberOfBytes": "32" + }, + "t_struct(Organization)36_storage": { + "encoding": "inplace", + "label": "struct OrgCreation.Organization", + "members": [ + { + "astId": 3, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol:OrgCreation", + "label": "org_address", + "offset": 0, + "slot": "0", + "type": "t_address" + }, + { + "astId": 5, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol:OrgCreation", + "label": "name", + "offset": 0, + "slot": "1", + "type": "t_string_storage" + }, + { + "astId": 7, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol:OrgCreation", + "label": "doc_cid", + "offset": 0, + "slot": "2", + "type": "t_string_storage" + }, + { + "astId": 9, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol:OrgCreation", + "label": "upvotes", + "offset": 0, + "slot": "3", + "type": "t_uint256" + }, + { + "astId": 11, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol:OrgCreation", + "label": "downvotes", + "offset": 0, + "slot": "4", + "type": "t_uint256" + }, + { + "astId": 13, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol:OrgCreation", + "label": "views", + "offset": 0, + "slot": "5", + "type": "t_uint256" + }, + { + "astId": 15, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol:OrgCreation", + "label": "verification_status", + "offset": 0, + "slot": "6", + "type": "t_bool" + }, + { + "astId": 18, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol:OrgCreation", + "label": "upvoters", + "offset": 0, + "slot": "7", + "type": "t_array(t_address)dyn_storage" + }, + { + "astId": 21, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol:OrgCreation", + "label": "downvoters", + "offset": 0, + "slot": "8", + "type": "t_array(t_address)dyn_storage" + }, + { + "astId": 25, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol:OrgCreation", + "label": "voters", + "offset": 0, + "slot": "9", + "type": "t_mapping(t_address,t_uint8)" + }, + { + "astId": 27, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol:OrgCreation", + "label": "stake", + "offset": 0, + "slot": "10", + "type": "t_uint256" + }, + { + "astId": 29, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol:OrgCreation", + "label": "desc", + "offset": 0, + "slot": "11", + "type": "t_string_storage" + }, + { + "astId": 31, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol:OrgCreation", + "label": "points", + "offset": 0, + "slot": "12", + "type": "t_uint256" + }, + { + "astId": 33, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol:OrgCreation", + "label": "application_time", + "offset": 0, + "slot": "13", + "type": "t_uint256" + }, + { + "astId": 35, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol:OrgCreation", + "label": "isStakePaid", + "offset": 0, + "slot": "14", + "type": "t_bool" + } + ], + "numberOfBytes": "480" + }, + "t_uint256": { + "encoding": "inplace", + "label": "uint256", + "numberOfBytes": "32" + }, + "t_uint8": { + "encoding": "inplace", + "label": "uint8", + "numberOfBytes": "1" + } + } + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + } + }, + "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol": { + "OrgOperation": { + "abi": [ + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "stateMutability": "payable", + "type": "fallback" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "RemoveCharityIfFinancialReportFraud", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "RemoveCharityIfFraud", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "admin", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "changeIsStakedPaid", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "checkFinancialReportStatus", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "checkIfDownvoted", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "checkIfUpvoted", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "checkVerificationStatus", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "checkViolationStatus", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + } + ], + "name": "countOfDownvotes", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + } + ], + "name": "countOfUpvotes", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + } + ], + "name": "countOfViews", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "cutStakeOfNotVoted", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + }, + { + "internalType": "bool", + "name": "category", + "type": "bool" + } + ], + "name": "distributeStake", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + }, + { + "internalType": "uint256", + "name": "current_time", + "type": "uint256" + } + ], + "name": "downVote", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "emptyListOrganization", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "emptyNotVotedArray", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "isStaked", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "isVerified", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "markAsVerified", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "notVoted", + "outputs": [ + { + "internalType": "address[]", + "name": "", + "type": "address[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + }, + { + "internalType": "string", + "name": "cid", + "type": "string" + }, + { + "internalType": "uint256", + "name": "registration_time", + "type": "uint256" + } + ], + "name": "registerFinancialReport", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "organization_address", + "type": "address" + }, + { + "internalType": "string", + "name": "organization_name", + "type": "string" + }, + { + "internalType": "string", + "name": "document_cid", + "type": "string" + }, + { + "internalType": "string", + "name": "description", + "type": "string" + }, + { + "internalType": "uint256", + "name": "time", + "type": "uint256" + } + ], + "name": "registerOrg", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "organization_address", + "type": "address" + }, + { + "internalType": "string", + "name": "document_cid", + "type": "string" + }, + { + "internalType": "string", + "name": "description", + "type": "string" + }, + { + "internalType": "uint256", + "name": "registration_time", + "type": "uint256" + } + ], + "name": "registerViolation", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "reportUpVote", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "reportsDownVote", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "totalOrganizations", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "unverifiedOrganizationsList", + "outputs": [ + { + "components": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + }, + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "doc_cid", + "type": "string" + }, + { + "internalType": "uint256", + "name": "upvotes", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "downvotes", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "views", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "verification_status", + "type": "bool" + }, + { + "internalType": "string", + "name": "desc", + "type": "string" + }, + { + "internalType": "uint256", + "name": "application_time", + "type": "uint256" + } + ], + "internalType": "struct OrgCreation.OrgDetails[]", + "name": "", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + }, + { + "internalType": "uint256", + "name": "current_time", + "type": "uint256" + } + ], + "name": "upVote", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "upvotedOnFinancialReport", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "upvotedOnVerify", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "verifiedOrganizationsList", + "outputs": [ + { + "components": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + }, + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "doc_cid", + "type": "string" + }, + { + "internalType": "uint256", + "name": "upvotes", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "downvotes", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "views", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "verification_status", + "type": "bool" + }, + { + "internalType": "string", + "name": "desc", + "type": "string" + }, + { + "internalType": "uint256", + "name": "application_time", + "type": "uint256" + } + ], + "internalType": "struct OrgCreation.OrgDetails[]", + "name": "", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "violationDownVote", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "violationUpVote", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + }, + { + "internalType": "uint256", + "name": "current_time", + "type": "uint256" + } + ], + "name": "votingDone", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "devdoc": { + "kind": "dev", + "methods": {}, + "version": 1 + }, + "evm": { + "bytecode": { + "functionDebugData": { + "@_137": { + "entryPoint": null, + "id": 137, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@_851": { + "entryPoint": null, + "id": 851, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@countOfDownvotes_199": { + "entryPoint": null, + "id": 199, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@countOfUpvotes_186": { + "entryPoint": null, + "id": 186, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@countOfViews_217": { + "entryPoint": 615, + "id": 217, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@registerOrg_650": { + "entryPoint": 197, + "id": 650, + "parameterSlots": 5, + "returnSlots": 0 + }, + "abi_encode_tuple_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": null, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "array_dataslot_string_storage": { + "entryPoint": null, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "checked_add_t_uint256": { + "entryPoint": 1074, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "checked_sub_t_uint256": { + "entryPoint": 1096, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "clean_up_bytearray_end_slots_string_storage": { + "entryPoint": 765, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage": { + "entryPoint": 848, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "extract_byte_array_length": { + "entryPoint": 705, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "extract_used_part_and_set_length_of_short_byte_array": { + "entryPoint": null, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "panic_error_0x11": { + "entryPoint": 1052, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x41": { + "entryPoint": 683, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nodeType": "YulBlock", + "src": "0:3488:2", + "statements": [ + { + "nodeType": "YulBlock", + "src": "6:3:2", + "statements": [] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "188:182:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "205:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "216:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "198:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "198:21:2" + }, + "nodeType": "YulExpressionStatement", + "src": "198:21:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "239:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "250:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "235:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "235:18:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "255:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "228:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "228:30:2" + }, + "nodeType": "YulExpressionStatement", + "src": "228:30:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "278:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "289:2:2", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "274:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "274:18:2" + }, + { + "hexValue": "4f7267616e697a6174696f6e20616c7265616479207265676973746572656421", + "kind": "string", + "nodeType": "YulLiteral", + "src": "294:34:2", + "type": "", + "value": "Organization already registered!" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "267:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "267:62:2" + }, + "nodeType": "YulExpressionStatement", + "src": "267:62:2" + }, + { + "nodeType": "YulAssignment", + "src": "338:26:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "350:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "361:2:2", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "346:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "346:18:2" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "338:4:2" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "165:9:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "179:4:2", + "type": "" + } + ], + "src": "14:356:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "407:95:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "424:1:2", + "type": "", + "value": "0" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "431:3:2", + "type": "", + "value": "224" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "436:10:2", + "type": "", + "value": "0x4e487b71" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "427:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "427:20:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "417:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "417:31:2" + }, + "nodeType": "YulExpressionStatement", + "src": "417:31:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "464:1:2", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "467:4:2", + "type": "", + "value": "0x41" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "457:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "457:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "457:15:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "488:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "491:4:2", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "481:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "481:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "481:15:2" + } + ] + }, + "name": "panic_error_0x41", + "nodeType": "YulFunctionDefinition", + "src": "375:127:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "562:325:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "572:22:2", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "586:1:2", + "type": "", + "value": "1" + }, + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "589:4:2" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "582:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "582:12:2" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "572:6:2" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "603:38:2", + "value": { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "633:4:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "639:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "629:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "629:12:2" + }, + "variables": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulTypedName", + "src": "607:18:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "680:31:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "682:27:2", + "value": { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "696:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "704:4:2", + "type": "", + "value": "0x7f" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "692:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "692:17:2" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "682:6:2" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulIdentifier", + "src": "660:18:2" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "653:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "653:26:2" + }, + "nodeType": "YulIf", + "src": "650:61:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "770:111:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "791:1:2", + "type": "", + "value": "0" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "798:3:2", + "type": "", + "value": "224" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "803:10:2", + "type": "", + "value": "0x4e487b71" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "794:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "794:20:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "784:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "784:31:2" + }, + "nodeType": "YulExpressionStatement", + "src": "784:31:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "835:1:2", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "838:4:2", + "type": "", + "value": "0x22" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "828:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "828:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "828:15:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "863:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "866:4:2", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "856:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "856:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "856:15:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulIdentifier", + "src": "726:18:2" + }, + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "749:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "757:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "746:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "746:14:2" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "723:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "723:38:2" + }, + "nodeType": "YulIf", + "src": "720:161:2" + } + ] + }, + "name": "extract_byte_array_length", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "542:4:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "551:6:2", + "type": "" + } + ], + "src": "507:380:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "948:65:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "965:1:2", + "type": "", + "value": "0" + }, + { + "name": "ptr", + "nodeType": "YulIdentifier", + "src": "968:3:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "958:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "958:14:2" + }, + "nodeType": "YulExpressionStatement", + "src": "958:14:2" + }, + { + "nodeType": "YulAssignment", + "src": "981:26:2", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "999:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1002:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "keccak256", + "nodeType": "YulIdentifier", + "src": "989:9:2" + }, + "nodeType": "YulFunctionCall", + "src": "989:18:2" + }, + "variableNames": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "981:4:2" + } + ] + } + ] + }, + "name": "array_dataslot_string_storage", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nodeType": "YulTypedName", + "src": "931:3:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "939:4:2", + "type": "" + } + ], + "src": "892:121:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1099:464:2", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "1132:425:2", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "1146:11:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1156:1:2", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "1150:2:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1177:2:2" + }, + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "1181:5:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1170:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "1170:17:2" + }, + "nodeType": "YulExpressionStatement", + "src": "1170:17:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1200:31:2", + "value": { + "arguments": [ + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1222:2:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1226:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "keccak256", + "nodeType": "YulIdentifier", + "src": "1212:9:2" + }, + "nodeType": "YulFunctionCall", + "src": "1212:19:2" + }, + "variables": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "1204:4:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1244:57:2", + "value": { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "1267:4:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1277:1:2", + "type": "", + "value": "5" + }, + { + "arguments": [ + { + "name": "startIndex", + "nodeType": "YulIdentifier", + "src": "1284:10:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1296:2:2", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1280:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1280:19:2" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "1273:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1273:27:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1263:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1263:38:2" + }, + "variables": [ + { + "name": "deleteStart", + "nodeType": "YulTypedName", + "src": "1248:11:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1338:23:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "1340:19:2", + "value": { + "name": "data", + "nodeType": "YulIdentifier", + "src": "1355:4:2" + }, + "variableNames": [ + { + "name": "deleteStart", + "nodeType": "YulIdentifier", + "src": "1340:11:2" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "startIndex", + "nodeType": "YulIdentifier", + "src": "1320:10:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1332:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "1317:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "1317:20:2" + }, + "nodeType": "YulIf", + "src": "1314:47:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1374:41:2", + "value": { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "1388:4:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1398:1:2", + "type": "", + "value": "5" + }, + { + "arguments": [ + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "1405:3:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1410:2:2", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1401:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1401:12:2" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "1394:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1394:20:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1384:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1384:31:2" + }, + "variables": [ + { + "name": "_2", + "nodeType": "YulTypedName", + "src": "1378:2:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1428:24:2", + "value": { + "name": "deleteStart", + "nodeType": "YulIdentifier", + "src": "1441:11:2" + }, + "variables": [ + { + "name": "start", + "nodeType": "YulTypedName", + "src": "1432:5:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1526:21:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "1535:5:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1542:2:2" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "1528:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "1528:17:2" + }, + "nodeType": "YulExpressionStatement", + "src": "1528:17:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "1476:5:2" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "1483:2:2" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "1473:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "1473:13:2" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "1487:26:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "1489:22:2", + "value": { + "arguments": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "1502:5:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1509:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1498:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1498:13:2" + }, + "variableNames": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "1489:5:2" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "1469:3:2", + "statements": [] + }, + "src": "1465:82:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "1115:3:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1120:2:2", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "1112:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "1112:11:2" + }, + "nodeType": "YulIf", + "src": "1109:448:2" + } + ] + }, + "name": "clean_up_bytearray_end_slots_string_storage", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "array", + "nodeType": "YulTypedName", + "src": "1071:5:2", + "type": "" + }, + { + "name": "len", + "nodeType": "YulTypedName", + "src": "1078:3:2", + "type": "" + }, + { + "name": "startIndex", + "nodeType": "YulTypedName", + "src": "1083:10:2", + "type": "" + } + ], + "src": "1018:545:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1653:81:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "1663:65:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "1678:4:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1696:1:2", + "type": "", + "value": "3" + }, + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "1699:3:2" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "1692:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1692:11:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1709:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "1705:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1705:6:2" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "1688:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1688:24:2" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "1684:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1684:29:2" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "1674:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1674:40:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1720:1:2", + "type": "", + "value": "1" + }, + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "1723:3:2" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "1716:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1716:11:2" + } + ], + "functionName": { + "name": "or", + "nodeType": "YulIdentifier", + "src": "1671:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "1671:57:2" + }, + "variableNames": [ + { + "name": "used", + "nodeType": "YulIdentifier", + "src": "1663:4:2" + } + ] + } + ] + }, + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "1630:4:2", + "type": "" + }, + { + "name": "len", + "nodeType": "YulTypedName", + "src": "1636:3:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "used", + "nodeType": "YulTypedName", + "src": "1644:4:2", + "type": "" + } + ], + "src": "1568:166:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1835:1256:2", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "1845:24:2", + "value": { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "1865:3:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "1859:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "1859:10:2" + }, + "variables": [ + { + "name": "newLen", + "nodeType": "YulTypedName", + "src": "1849:6:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1912:22:2", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "1914:16:2" + }, + "nodeType": "YulFunctionCall", + "src": "1914:18:2" + }, + "nodeType": "YulExpressionStatement", + "src": "1914:18:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "1884:6:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1900:2:2", + "type": "", + "value": "64" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1904:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "1896:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1896:10:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1908:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "1892:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1892:18:2" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "1881:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "1881:30:2" + }, + "nodeType": "YulIf", + "src": "1878:56:2" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "1987:4:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "2025:4:2" + } + ], + "functionName": { + "name": "sload", + "nodeType": "YulIdentifier", + "src": "2019:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "2019:11:2" + } + ], + "functionName": { + "name": "extract_byte_array_length", + "nodeType": "YulIdentifier", + "src": "1993:25:2" + }, + "nodeType": "YulFunctionCall", + "src": "1993:38:2" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "2033:6:2" + } + ], + "functionName": { + "name": "clean_up_bytearray_end_slots_string_storage", + "nodeType": "YulIdentifier", + "src": "1943:43:2" + }, + "nodeType": "YulFunctionCall", + "src": "1943:97:2" + }, + "nodeType": "YulExpressionStatement", + "src": "1943:97:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2049:18:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2066:1:2", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "srcOffset", + "nodeType": "YulTypedName", + "src": "2053:9:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2076:23:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2095:4:2", + "type": "", + "value": "0x20" + }, + "variables": [ + { + "name": "srcOffset_1", + "nodeType": "YulTypedName", + "src": "2080:11:2", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "2108:24:2", + "value": { + "name": "srcOffset_1", + "nodeType": "YulIdentifier", + "src": "2121:11:2" + }, + "variableNames": [ + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "2108:9:2" + } + ] + }, + { + "cases": [ + { + "body": { + "nodeType": "YulBlock", + "src": "2178:656:2", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "2192:35:2", + "value": { + "arguments": [ + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "2211:6:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2223:2:2", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "2219:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2219:7:2" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "2207:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2207:20:2" + }, + "variables": [ + { + "name": "loopEnd", + "nodeType": "YulTypedName", + "src": "2196:7:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2240:49:2", + "value": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "2284:4:2" + } + ], + "functionName": { + "name": "array_dataslot_string_storage", + "nodeType": "YulIdentifier", + "src": "2254:29:2" + }, + "nodeType": "YulFunctionCall", + "src": "2254:35:2" + }, + "variables": [ + { + "name": "dstPtr", + "nodeType": "YulTypedName", + "src": "2244:6:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2302:10:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2311:1:2", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "2306:1:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2389:172:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "2414:6:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "2432:3:2" + }, + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "2437:9:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2428:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2428:19:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "2422:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "2422:26:2" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "2407:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "2407:42:2" + }, + "nodeType": "YulExpressionStatement", + "src": "2407:42:2" + }, + { + "nodeType": "YulAssignment", + "src": "2466:24:2", + "value": { + "arguments": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "2480:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2488:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2476:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2476:14:2" + }, + "variableNames": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "2466:6:2" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "2507:40:2", + "value": { + "arguments": [ + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "2524:9:2" + }, + { + "name": "srcOffset_1", + "nodeType": "YulIdentifier", + "src": "2535:11:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2520:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2520:27:2" + }, + "variableNames": [ + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "2507:9:2" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "2336:1:2" + }, + { + "name": "loopEnd", + "nodeType": "YulIdentifier", + "src": "2339:7:2" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "2333:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "2333:14:2" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "2348:28:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "2350:24:2", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "2359:1:2" + }, + { + "name": "srcOffset_1", + "nodeType": "YulIdentifier", + "src": "2362:11:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2355:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2355:19:2" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "2350:1:2" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "2329:3:2", + "statements": [] + }, + "src": "2325:236:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2609:166:2", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "2627:43:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "2654:3:2" + }, + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "2659:9:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2650:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2650:19:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "2644:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "2644:26:2" + }, + "variables": [ + { + "name": "lastValue", + "nodeType": "YulTypedName", + "src": "2631:9:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "2694:6:2" + }, + { + "arguments": [ + { + "name": "lastValue", + "nodeType": "YulIdentifier", + "src": "2706:9:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2733:1:2", + "type": "", + "value": "3" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "2736:6:2" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "2729:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2729:14:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2745:3:2", + "type": "", + "value": "248" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "2725:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2725:24:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2755:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "2751:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2751:6:2" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "2721:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2721:37:2" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "2717:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2717:42:2" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "2702:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2702:58:2" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "2687:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "2687:74:2" + }, + "nodeType": "YulExpressionStatement", + "src": "2687:74:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "loopEnd", + "nodeType": "YulIdentifier", + "src": "2580:7:2" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "2589:6:2" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "2577:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "2577:19:2" + }, + "nodeType": "YulIf", + "src": "2574:201:2" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "2795:4:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2809:1:2", + "type": "", + "value": "1" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "2812:6:2" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "2805:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2805:14:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2821:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2801:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2801:22:2" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "2788:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "2788:36:2" + }, + "nodeType": "YulExpressionStatement", + "src": "2788:36:2" + } + ] + }, + "nodeType": "YulCase", + "src": "2171:663:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2176:1:2", + "type": "", + "value": "1" + } + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2851:234:2", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "2865:14:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2878:1:2", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "2869:5:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "2914:67:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "2932:35:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "2951:3:2" + }, + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "2956:9:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2947:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2947:19:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "2941:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "2941:26:2" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "2932:5:2" + } + ] + } + ] + }, + "condition": { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "2895:6:2" + }, + "nodeType": "YulIf", + "src": "2892:89:2" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "3001:4:2" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "3060:5:2" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "3067:6:2" + } + ], + "functionName": { + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nodeType": "YulIdentifier", + "src": "3007:52:2" + }, + "nodeType": "YulFunctionCall", + "src": "3007:67:2" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "2994:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "2994:81:2" + }, + "nodeType": "YulExpressionStatement", + "src": "2994:81:2" + } + ] + }, + "nodeType": "YulCase", + "src": "2843:242:2", + "value": "default" + } + ], + "expression": { + "arguments": [ + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "2151:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2159:2:2", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "2148:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "2148:14:2" + }, + "nodeType": "YulSwitch", + "src": "2141:944:2" + } + ] + }, + "name": "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nodeType": "YulTypedName", + "src": "1820:4:2", + "type": "" + }, + { + "name": "src", + "nodeType": "YulTypedName", + "src": "1826:3:2", + "type": "" + } + ], + "src": "1739:1352:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3128:95:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3145:1:2", + "type": "", + "value": "0" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3152:3:2", + "type": "", + "value": "224" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3157:10:2", + "type": "", + "value": "0x4e487b71" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "3148:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3148:20:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "3138:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "3138:31:2" + }, + "nodeType": "YulExpressionStatement", + "src": "3138:31:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3185:1:2", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3188:4:2", + "type": "", + "value": "0x11" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "3178:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "3178:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "3178:15:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3209:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3212:4:2", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "3202:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "3202:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "3202:15:2" + } + ] + }, + "name": "panic_error_0x11", + "nodeType": "YulFunctionDefinition", + "src": "3096:127:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3276:77:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "3286:16:2", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "3297:1:2" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "3300:1:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3293:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3293:9:2" + }, + "variableNames": [ + { + "name": "sum", + "nodeType": "YulIdentifier", + "src": "3286:3:2" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3325:22:2", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nodeType": "YulIdentifier", + "src": "3327:16:2" + }, + "nodeType": "YulFunctionCall", + "src": "3327:18:2" + }, + "nodeType": "YulExpressionStatement", + "src": "3327:18:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "3317:1:2" + }, + { + "name": "sum", + "nodeType": "YulIdentifier", + "src": "3320:3:2" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "3314:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "3314:10:2" + }, + "nodeType": "YulIf", + "src": "3311:36:2" + } + ] + }, + "name": "checked_add_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nodeType": "YulTypedName", + "src": "3259:1:2", + "type": "" + }, + { + "name": "y", + "nodeType": "YulTypedName", + "src": "3262:1:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "sum", + "nodeType": "YulTypedName", + "src": "3268:3:2", + "type": "" + } + ], + "src": "3228:125:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3407:79:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "3417:17:2", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "3429:1:2" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "3432:1:2" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "3425:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3425:9:2" + }, + "variableNames": [ + { + "name": "diff", + "nodeType": "YulIdentifier", + "src": "3417:4:2" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3458:22:2", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nodeType": "YulIdentifier", + "src": "3460:16:2" + }, + "nodeType": "YulFunctionCall", + "src": "3460:18:2" + }, + "nodeType": "YulExpressionStatement", + "src": "3460:18:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "diff", + "nodeType": "YulIdentifier", + "src": "3449:4:2" + }, + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "3455:1:2" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "3446:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "3446:11:2" + }, + "nodeType": "YulIf", + "src": "3443:37:2" + } + ] + }, + "name": "checked_sub_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nodeType": "YulTypedName", + "src": "3389:1:2", + "type": "" + }, + { + "name": "y", + "nodeType": "YulTypedName", + "src": "3392:1:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "diff", + "nodeType": "YulTypedName", + "src": "3398:4:2", + "type": "" + } + ], + "src": "3358:128:2" + } + ] + }, + "contents": "{\n { }\n function abi_encode_tuple_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 32)\n mstore(add(headStart, 64), \"Organization already registered!\")\n tail := add(headStart, 96)\n }\n function panic_error_0x41()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function extract_byte_array_length(data) -> length\n {\n length := shr(1, data)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) { length := and(length, 0x7f) }\n if eq(outOfPlaceEncoding, lt(length, 32))\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n }\n function array_dataslot_string_storage(ptr) -> data\n {\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n }\n function clean_up_bytearray_end_slots_string_storage(array, len, startIndex)\n {\n if gt(len, 31)\n {\n let _1 := 0\n mstore(_1, array)\n let data := keccak256(_1, 0x20)\n let deleteStart := add(data, shr(5, add(startIndex, 31)))\n if lt(startIndex, 0x20) { deleteStart := data }\n let _2 := add(data, shr(5, add(len, 31)))\n let start := deleteStart\n for { } lt(start, _2) { start := add(start, 1) }\n { sstore(start, _1) }\n }\n }\n function extract_used_part_and_set_length_of_short_byte_array(data, len) -> used\n {\n used := or(and(data, not(shr(shl(3, len), not(0)))), shl(1, len))\n }\n function copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage(slot, src)\n {\n let newLen := mload(src)\n if gt(newLen, sub(shl(64, 1), 1)) { panic_error_0x41() }\n clean_up_bytearray_end_slots_string_storage(slot, extract_byte_array_length(sload(slot)), newLen)\n let srcOffset := 0\n let srcOffset_1 := 0x20\n srcOffset := srcOffset_1\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(31))\n let dstPtr := array_dataslot_string_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, srcOffset_1) }\n {\n sstore(dstPtr, mload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, srcOffset_1)\n }\n if lt(loopEnd, newLen)\n {\n let lastValue := mload(add(src, srcOffset))\n sstore(dstPtr, and(lastValue, not(shr(and(shl(3, newLen), 248), not(0)))))\n }\n sstore(slot, add(shl(1, newLen), 1))\n }\n default {\n let value := 0\n if newLen\n {\n value := mload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n function panic_error_0x11()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n function checked_add_t_uint256(x, y) -> sum\n {\n sum := add(x, y)\n if gt(x, sum) { panic_error_0x11() }\n }\n function checked_sub_t_uint256(x, y) -> diff\n {\n diff := sub(x, y)\n if gt(diff, x) { panic_error_0x11() }\n }\n}", + "id": 2, + "language": "Yul", + "name": "#utility.yul" + } + ], + "linkReferences": {}, + "object": "608060405260016008553480156200001657600080fd5b50600780546001600160a01b031916339081179091556706f05b59d3b20000600a556000600b908155604080518082018252600581526427bbb732b960d91b6020808301919091528251808401845260048152634e6f6e6560e01b8183015283518085019094529383526a2232b9b1b934b83a34b7b760a91b90830152620000a29392909142620000c5565b336000908152602081905260409020600601805460ff191660011790556200045e565b6001600160a01b0385166000908152602081905260409020600d015415620001335760405162461bcd60e51b815260206004820181905260248201527f4f7267616e697a6174696f6e20616c7265616479207265676973746572656421604482015260640160405180910390fd5b6001600160a01b038516600081815260208190526040902080546001600160a01b03191690911781556001016200016b858262000350565b506001600160a01b038516600090815260208190526040902060020162000193848262000350565b506001600160a01b0385166000908152602081905260409020600b01620001bb838262000350565b50620001cb816202a30062000432565b6001600160a01b0386166000908152602081905260409020600d0155620001f28562000267565b620001ff90600162000432565b6001600160a01b039095166000818152602081905260408120600501969096556004805460018101825596527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b90950180546001600160a01b03191690951790945550505050565b6001600160a01b0381166000908152602081905260408120600481015460039091015460095462000299919062000448565b620002a5919062000448565b92915050565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620002d657607f821691505b602082108103620002f757634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200034b57600081815260208120601f850160051c81016020861015620003265750805b601f850160051c820191505b81811015620003475782815560010162000332565b5050505b505050565b81516001600160401b038111156200036c576200036c620002ab565b62000384816200037d8454620002c1565b84620002fd565b602080601f831160018114620003bc5760008415620003a35750858301515b600019600386901b1c1916600185901b17855562000347565b600085815260208120601f198616915b82811015620003ed57888601518255948401946001909101908401620003cc565b50858210156200040c5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b80820180821115620002a557620002a56200041c565b81810381811115620002a557620002a56200041c565b613501806200046e6000396000f3fe6080604052600436106101ef5760003560e01c806380007e831161010c578063b7627e411161009a578063e3323aba1161006c578063e3323aba1461060c578063e75176b514610634578063ef2d584714610654578063f15c01dd14610674578063f851a4401461069457005b8063b7627e411461057e578063bc489aa9146105b7578063c9dfca10146105cc578063e2579114146105ec57005b8063a1b0ffe0116100de578063a1b0ffe0146104c2578063a52da85d146104f1578063ac64fcde1461051e578063ae51c2bc1461053e578063b5e801d51461055e57005b806380007e831461044557806380e179e91461046d5780638e3495191461048d5780638fc0ed2f146104ad57005b80634648df2a116101895780635cf9303f1161015b5780635cf9303f146103975780635d0161f1146103d057806362ae7ac7146103e55780636fc3911c14610405578063712062741461042557005b80634648df2a14610313578063482bd55b146103335780634cf5d5521461035357806355779b651461037757005b80632d80468d116101c25780632d80468d146102785780633e85747e146102a3578063440370fe146102d35780634438d4b0146102f357005b806237556e146101f85780630a54ecbf1461021857806314cb11e8146102385780631e4771801461025857005b366101f657005b005b34801561020457600080fd5b506101f6610213366004612ddc565b6106cc565b34801561022457600080fd5b506101f6610233366004612ddc565b61073c565b34801561024457600080fd5b506101f6610253366004612ddc565b610950565b34801561026457600080fd5b506101f6610273366004612dfe565b6109c0565b34801561028457600080fd5b5061028d610fdd565b60405161029a9190612e80565b60405180910390f35b3480156102af57600080fd5b506102c36102be366004612ddc565b61136d565b604051901515815260200161029a565b3480156102df57600080fd5b506101f66102ee366004613011565b61139a565b3480156102ff57600080fd5b506101f661030e366004612ddc565b611530565b34801561031f57600080fd5b506102c361032e3660046130b2565b611766565b34801561033f57600080fd5b506101f661034e3660046130dc565b61179b565b34801561035f57600080fd5b5061036960095481565b60405190815260200161029a565b34801561038357600080fd5b506101f6610392366004612ddc565b611834565b3480156103a357600080fd5b506103696103b2366004612ddc565b6001600160a01b031660009081526020819052604090206003015490565b3480156103dc57600080fd5b5061028d6118a4565b3480156103f157600080fd5b506101f6610400366004612ddc565b611bbb565b34801561041157600080fd5b506102c3610420366004612ddc565b611c20565b34801561043157600080fd5b506101f6610440366004612ddc565b611c6d565b34801561045157600080fd5b503360009081526020819052604090206006015460ff166102c3565b34801561047957600080fd5b506101f6610488366004612ddc565b611d23565b34801561049957600080fd5b506101f66104a8366004612ddc565b611dd9565b3480156104b957600080fd5b506101f6611f6f565b3480156104ce57600080fd5b506101f6336000908152602081905260409020600e01805460ff19166001179055565b3480156104fd57600080fd5b5061051161050c366004612ddc565b612052565b60405161029a9190613133565b34801561052a57600080fd5b506101f6610539366004613180565b6122c4565b34801561054a57600080fd5b506101f6610559366004612ddc565b61237f565b34801561056a57600080fd5b506101f6610579366004612ddc565b6125b6565b34801561058a57600080fd5b50610369610599366004612ddc565b6001600160a01b031660009081526020819052604090206004015490565b3480156105c357600080fd5b506101f6612622565b3480156105d857600080fd5b506102c36105e7366004612ddc565b6126ca565b3480156105f857600080fd5b506102c36106073660046130b2565b6126f7565b34801561061857600080fd5b50336000908152602081905260409020600e015460ff166102c3565b34801561064057600080fd5b5061036961064f366004612ddc565b6128d9565b34801561066057600080fd5b506101f661066f366004612ddc565b612913565b34801561068057600080fd5b506102c361068f3660046130b2565b612b25565b3480156106a057600080fd5b506007546106b4906001600160a01b031681565b6040516001600160a01b03909116815260200161029a565b6001600160a01b0381166000908152600d60205260409020600401546106f3906001613212565b6001600160a01b039091166000908152600d6020908152604082206004810193909355600690920180546001810182559082529190200180546001600160a01b03191633179055565b6001600160a01b0381166000908152600d60205260409020600b015460ff161561094d5760005b6001600160a01b03821660009081526020819052604090206007015481101561085557600a546001600160a01b03831660009081526020819052604081206007018054829190859081106107b9576107b9613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a01546107eb919061323b565b6001600160a01b038316600090815260208190526040812060070180548291908590811061081b5761081b613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a01558061084d8161324e565b915050610763565b5060005b6001600160a01b03821660009081526020819052604090206008015481101561094b57600a546001600160a01b03831660009081526020819052604081206008018054829190859081106108af576108af613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a01546108e19190613212565b6001600160a01b038316600090815260208190526040812060080180548291908590811061091157610911613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a0155806109438161324e565b915050610859565b505b50565b6001600160a01b0381166000908152600e6020526040902060020154610977906001613212565b6001600160a01b039091166000908152600e6020908152604082206002810193909355600490920180546001810182559082529190200180546001600160a01b03191633179055565b8015610cd2576000805b6001600160a01b038416600090815260208190526040902060030154811015610b91576001600160a01b0384166000908152602081905260408120600701805482919084908110610a1d57610a1d613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c0154610a50906001613212565b6001600160a01b0385166000908152602081905260408120600701805482919085908110610a8057610a80613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c0155600a54610ab59083613212565b9150600a54600080806000886001600160a01b03166001600160a01b031681526020019081526020016000206007018481548110610af557610af5613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a0154610b279190613212565b6001600160a01b0385166000908152602081905260408120600701805482919085908110610b5757610b57613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a015580610b898161324e565b9150506109ca565b506001600160a01b0383166000908152602081905260409020600a0154610bb990829061323b565b6001600160a01b0384166000908152602081905260408120600a01919091555b6001600160a01b038416600090815260208190526040902060040154811015610ccb576001600160a01b0384166000908152602081905260408120600801805460019291829185908110610c2f57610c2f613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c0154610c61919061323b565b6001600160a01b0385166000908152602081905260408120600801805482919085908110610c9157610c91613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c015580610cc38161324e565b915050610bd9565b505061094b565b6000805b6001600160a01b038416600090815260208190526040902060040154811015610e9d576001600160a01b0384166000908152602081905260408120600801805482919084908110610d2957610d29613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c0154610d5c906001613212565b6001600160a01b0385166000908152602081905260408120600801805482919085908110610d8c57610d8c613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c0155600a54610dc19083613212565b9150600a54600080806000886001600160a01b03166001600160a01b031681526020019081526020016000206008018481548110610e0157610e01613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a0154610e339190613212565b6001600160a01b0385166000908152602081905260408120600801805482919085908110610e6357610e63613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a015580610e958161324e565b915050610cd6565b506001600160a01b0383166000908152602081905260409020600a0154610ec590829061323b565b6001600160a01b0384166000908152602081905260408120600a01919091555b6001600160a01b038416600090815260208190526040902060030154811015610fd7576001600160a01b0384166000908152602081905260408120600701805460019291829185908110610f3b57610f3b613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c0154610f6d919061323b565b6001600160a01b0385166000908152602081905260408120600701805482919085908110610f9d57610f9d613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c015580610fcf8161324e565b915050610ee5565b50505050565b600454600854606091906000908190610ff6908461323b565b67ffffffffffffffff81111561100e5761100e612f6e565b60405190808252806020026020018201604052801561104757816020015b611034612cfc565b81526020019060019003908161102c5790505b50905060005b838110156113655760006004828154811061106a5761106a613225565b60009182526020808320909101546001600160a01b03168083529082905260409091206006015490915060ff166113525760408051610120810182526001600160a01b0380841660008181526020818152948120805490931684529081528084526001909101805491938301916110e090613267565b80601f016020809104026020016040519081016040528092919081815260200182805461110c90613267565b80156111595780601f1061112e57610100808354040283529160200191611159565b820191906000526020600020905b81548152906001019060200180831161113c57829003601f168201915b50505050508152602001600080856001600160a01b03166001600160a01b03168152602001908152602001600020600201805461119590613267565b80601f01602080910402602001604051908101604052809291908181526020018280546111c190613267565b801561120e5780601f106111e35761010080835404028352916020019161120e565b820191906000526020600020905b8154815290600101906020018083116111f157829003601f168201915b50505091835250506001600160a01b03841660008181526020818152604080832060038101548387015260048101549186019190915260058101546060860152600681015460ff161515608086015292825252600b01805460a09092019161127590613267565b80601f01602080910402602001604051908101604052809291908181526020018280546112a190613267565b80156112ee5780601f106112c3576101008083540402835291602001916112ee565b820191906000526020600020905b8154815290600101906020018083116112d157829003601f168201915b50505050508152602001600080856001600160a01b03166001600160a01b03168152602001908152602001600020600d015481525090508084868151811061133857611338613225565b602090810291909101015261134e600186613212565b9450505b508061135d8161324e565b91505061104d565b509392505050565b6001600160a01b031660009081526020818152604080832033845260090190915290205460ff1660011490565b6001600160a01b0385166000908152602081905260409020600d0154156114085760405162461bcd60e51b815260206004820181905260248201527f4f7267616e697a6174696f6e20616c726561647920726567697374657265642160448201526064015b60405180910390fd5b6001600160a01b038516600081815260208190526040902080546001600160a01b031916909117815560010161143e85826132ef565b506001600160a01b038516600090815260208190526040902060020161146484826132ef565b506001600160a01b0385166000908152602081905260409020600b0161148a83826132ef565b50611498816202a300613212565b6001600160a01b0386166000908152602081905260409020600d01556114bd856128d9565b6114c8906001613212565b6001600160a01b039095166000818152602081905260408120600501969096556004805460018101825596527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b90950180546001600160a01b03191690951790945550505050565b6001600160a01b0381166000908152600e602052604081206007015460ff161515900361094d576001600160a01b0381166000908152602081905260408120600601805460ff19169055600980546001929061158d90849061323b565b90915550506001600160a01b0381166000908152600260205260408120805460ff19169055805b6004548110156116f257600080600483815481106115d4576115d4613225565b60009182526020808320909101546001600160a01b0316835282019290925260400190206006015460ff16801561164757506000806004838154811061161c5761161c613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c015482105b156116e0576000806004838154811061166257611662613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c015460048054919350600691839081106116a4576116a4613225565b60009182526020808320909101548354600181018555938352912090910180546001600160a01b0319166001600160a01b039092169190911790555b806116ea8161324e565b9150506115b4565b5060005b600654811015611712578061170a8161324e565b9150506116f6565b5060065460005b81811015610fd7576006805480611732576117326133af565b600082815260209020810160001990810180546001600160a01b03191690550190558061175e8161324e565b915050611719565b6001600160a01b0382166000908152602081905260408120600d015482111561179157506001611795565b5060005b92915050565b6001600160a01b0383166000818152600e60209081526040822080546001600160a01b031916909317835560089092018054600181018255908252919020016117e483826132ef565b506001600160a01b0383166000908152600e602052604090206005018190556118108162069780613212565b6001600160a01b039093166000908152600e60205260409020600601929092555050565b6001600160a01b0381166000908152600d602052604090206003015461185b906001613212565b6001600160a01b039091166000908152600d6020908152604082206003810193909355600590920180546001810182559082529190200180546001600160a01b03191633179055565b60045460085460609190600090819067ffffffffffffffff8111156118cb576118cb612f6e565b60405190808252806020026020018201604052801561190457816020015b6118f1612cfc565b8152602001906001900390816118e95790505b50905060005b838110156113655760006004828154811061192757611927613225565b60009182526020808320909101546001600160a01b03168083529082905260409091206006015490915060ff1615611ba8576001600160a01b038082166000908152602081815260408083208151610120810190925280549094168152600184018054919283019161199890613267565b80601f01602080910402602001604051908101604052809291908181526020018280546119c490613267565b8015611a115780601f106119e657610100808354040283529160200191611a11565b820191906000526020600020905b8154815290600101906020018083116119f457829003601f168201915b50505050508152602001836002018054611a2a90613267565b80601f0160208091040260200160405190810160405280929190818152602001828054611a5690613267565b8015611aa35780601f10611a7857610100808354040283529160200191611aa3565b820191906000526020600020905b815481529060010190602001808311611a8657829003601f168201915b5050509183525050600384015460208201526004840154604082015260058401546060820152600684015460ff1615156080820152600b8401805460a090920191611aed90613267565b80601f0160208091040260200160405190810160405280929190818152602001828054611b1990613267565b8015611b665780601f10611b3b57610100808354040283529160200191611b66565b820191906000526020600020905b815481529060010190602001808311611b4957829003601f168201915b5050505050815260200183600d0154815250905080858781518110611b8d57611b8d613225565b6020908102919091010152611ba3600187613212565b955050505b5080611bb38161324e565b91505061190a565b6001600160a01b0381166000908152602081905260408120600601805460ff191660019081179091556009805491929091611bf7908490613212565b90915550506001600160a01b03166000908152600260205260409020805460ff19166001179055565b60006009546033611c3191906133c5565b6001600160a01b038316600090815260208190526040902060030154611c589060646133c5565b10611c6557506001919050565b506000919050565b6001600160a01b0381166000908152600d602052604081206004810154600390910154611c9a9190613212565b9050611ca78160336133c5565b6001600160a01b0383166000908152600d6020526040902060030154611cce9060646133c5565b10611cfe576001600160a01b0382166000908152600d60205260409020600b01805460ff1916600117905561094b565b506001600160a01b03166000908152600d60205260409020600b01805460ff19169055565b6001600160a01b0381166000908152600e602052604081206002810154600190910154611d509190613212565b9050611d5d8160336133c5565b6001600160a01b0383166000908152600e6020526040902060010154611d849060646133c5565b10611db4576001600160a01b0382166000908152600e60205260409020600701805460ff1916600117905561094b565b506001600160a01b03166000908152600e60205260409020600701805460ff19169055565b60055460005b81811015611e2c576005805480611df857611df86133af565b600082815260209020810160001990810180546001600160a01b031916905501905580611e248161324e565b915050611ddf565b5060005b6001600160a01b038316600090815260208190526040902060070154811015611ecb576001600160a01b03831660009081526020819052604081206007018054600391839185908110611e8557611e85613225565b6000918252602080832091909101546001600160a01b031683528201929092526040019020805460ff191691151591909117905580611ec38161324e565b915050611e30565b5060005b6001600160a01b038316600090815260208190526040902060080154811015611f6a576001600160a01b03831660009081526020819052604081206008018054600391839185908110611f2457611f24613225565b6000918252602080832091909101546001600160a01b031683528201929092526040019020805460ff191691151591909117905580611f628161324e565b915050611ecf565b505050565b600c5460005b8181101561094b57600c805480611f8e57611f8e6133af565b600082815260208120600f6000199093019283020180546001600160a01b031916815590611fbf6001830182612d53565b611fcd600283016000612d53565b600060038301819055600483018190556005830181905560068301805460ff19169055611ffe906007840190612d8d565b61200c600883016000612d8d565b600a820160009055600b820160006120249190612d53565b506000600c8201819055600d820155600e01805460ff1916905590558061204a8161324e565b915050611f75565b606060005b6001600160a01b0383166000908152602081905260409020600701548110156120fe57600160036000806000876001600160a01b03166001600160a01b0316815260200190815260200160002060070184815481106120b8576120b8613225565b6000918252602080832091909101546001600160a01b031683528201929092526040019020805460ff1916911515919091179055806120f68161324e565b915050612057565b5060005b6001600160a01b0383166000908152602081905260409020600801548110156121a957600160036000806000876001600160a01b03166001600160a01b03168152602001908152602001600020600801848154811061216357612163613225565b6000918252602080832091909101546001600160a01b031683528201929092526040019020805460ff1916911515919091179055806121a18161324e565b915050612102565b5060005b6004548110156122615760036000600483815481106121ce576121ce613225565b60009182526020808320909101546001600160a01b0316835282019290925260400181205460ff161515900361224f5760056004828154811061221357612213613225565b60009182526020808320909101548354600181018555938352912090910180546001600160a01b0319166001600160a01b039092169190911790555b806122598161324e565b9150506121ad565b5060058054806020026020016040519081016040528092919081815260200182805480156122b857602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831161229a575b50505050509050919050565b6001600160a01b0384166000818152600d6020526040902080546001600160a01b03191690911781556001016122fa84826132ef565b506001600160a01b0384166000908152600d6020526040902060020161232083826132ef565b506001600160a01b0384166000908152600d6020526040902060090181905561234c8162069780613212565b6001600160a01b0385166000908152600d60205260409020600a0155600b54612376906001613212565b600b5550505050565b6001600160a01b0381166000908152600d60205260409020600b015460ff16151560010361094d576001600160a01b0381166000908152602081905260408120600601805460ff1916905560098054600192906123dd90849061323b565b90915550506001600160a01b0381166000908152600260205260408120805460ff19169055805b600454811015612542576000806004838154811061242457612424613225565b60009182526020808320909101546001600160a01b0316835282019290925260400190206006015460ff16801561249757506000806004838154811061246c5761246c613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c015482105b1561253057600080600483815481106124b2576124b2613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c015460048054919350600691839081106124f4576124f4613225565b60009182526020808320909101548354600181018555938352912090910180546001600160a01b0319166001600160a01b039092169190911790555b8061253a8161324e565b915050612404565b5060005b600654811015612562578061255a8161324e565b915050612546565b5060065460005b81811015610fd7576006805480612582576125826133af565b600082815260209020810160001990810180546001600160a01b0319169055019055806125ae8161324e565b915050612569565b6001600160a01b0381166000908152600e602052604090206001908101546125dd91613212565b6001600160a01b039091166000908152600e60209081526040822060018082019490945560030180549384018155825290200180546001600160a01b03191633179055565b60005b60055481101561094d57600a546000806005848154811061264857612648613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a015461267a919061323b565b6000806005848154811061269057612690613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a0155806126c28161324e565b915050612625565b6001600160a01b031660009081526020818152604080832033845260090190915290205460ff1660021490565b6001600160a01b0382166000908152602081905260408120600d0154839082036127335760405162461bcd60e51b81526004016113ff906133dc565b6001600160a01b03811660009081526020819052604090206006015460ff161561279f5760405162461bcd60e51b815260206004820152601e60248201527f4f7267616e697a6174696f6e20616c726561647920766572696669656421000060448201526064016113ff565b336000908152602081905260409020600d0154158015906127d257503360009081526020819052604090206006015460ff165b6127ee5760405162461bcd60e51b81526004016113ff90613420565b6127f7816126ca565b15801561280a57506128088161136d565b155b6128265760405162461bcd60e51b81526004016113ff9061347d565b6001600160a01b0384166000908152602081905260408120600301805460019290612852908490613212565b90915550506001600160a01b0384166000908152602081815260408083206007810180546001810182559085528385200180546001600160a01b0319163390811790915584526009019091529020805460ff191660021790556128b58484611766565b156128cd576128c384611c20565b50600191506128d2565b600091505b5092915050565b6001600160a01b03811660009081526020819052604081206004810154600390910154600954612909919061323b565b611795919061323b565b6001600160a01b0381166000908152600e602052604081206007015460ff161515900361094d5760005b6001600160a01b038216600090815260208190526040902060070154811015612a2f57600a546001600160a01b038316600090815260208190526040812060070180548291908590811061299357612993613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a01546129c5919061323b565b6001600160a01b03831660009081526020819052604081206007018054829190859081106129f5576129f5613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a015580612a278161324e565b91505061293d565b5060005b6001600160a01b03821660009081526020819052604090206008015481101561094b57600a546001600160a01b0383166000908152602081905260408120600801805482919085908110612a8957612a89613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a0154612abb9190613212565b6001600160a01b0383166000908152602081905260408120600801805482919085908110612aeb57612aeb613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a015580612b1d8161324e565b915050612a33565b6001600160a01b0382166000908152602081905260408120600d015483908203612b615760405162461bcd60e51b81526004016113ff906133dc565b6001600160a01b03811660009081526020819052604090206006015460ff1615612bcd5760405162461bcd60e51b815260206004820152601e60248201527f4f7267616e697a6174696f6e20616c726561647920766572696669656421000060448201526064016113ff565b336000908152602081905260409020600d015415801590612c0057503360009081526020819052604090206006015460ff165b612c1c5760405162461bcd60e51b81526004016113ff90613420565b612c25816126ca565b158015612c385750612c368161136d565b155b612c545760405162461bcd60e51b81526004016113ff9061347d565b6001600160a01b0384166000908152602081905260408120600401805460019290612c80908490613212565b90915550506001600160a01b038416600090815260208181526040808320600881018054600181810183559186528486200180546001600160a01b0319163390811790915585526009909101909252909120805460ff19169091179055612ce78484611766565b156128cd57612cf584611c20565b91506128d2565b60405180610120016040528060006001600160a01b03168152602001606081526020016060815260200160008152602001600081526020016000815260200160001515815260200160608152602001600081525090565b508054612d5f90613267565b6000825580601f10612d6f575050565b601f01602090049060005260206000209081019061094d9190612da7565b508054600082559060005260206000209081019061094d91905b5b80821115612dbc5760008155600101612da8565b5090565b80356001600160a01b0381168114612dd757600080fd5b919050565b600060208284031215612dee57600080fd5b612df782612dc0565b9392505050565b60008060408385031215612e1157600080fd5b612e1a83612dc0565b915060208301358015158114612e2f57600080fd5b809150509250929050565b6000815180845260005b81811015612e6057602081850181015186830182015201612e44565b506000602082860101526020601f19601f83011685010191505092915050565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b83811015612f6057888303603f19018552815180516001600160a01b0316845261012088820151818a870152612edf82870182612e3a565b9150508782015185820389870152612ef78282612e3a565b606084810151908801526080808501519088015260a0808501519088015260c08085015115159088015260e080850151888303828a01529193509150612f3d8382612e3a565b610100948501519790940196909652505094870194925090860190600101612ea7565b509098975050505050505050565b634e487b7160e01b600052604160045260246000fd5b600082601f830112612f9557600080fd5b813567ffffffffffffffff80821115612fb057612fb0612f6e565b604051601f8301601f19908116603f01168101908282118183101715612fd857612fd8612f6e565b81604052838152866020858801011115612ff157600080fd5b836020870160208301376000602085830101528094505050505092915050565b600080600080600060a0868803121561302957600080fd5b61303286612dc0565b9450602086013567ffffffffffffffff8082111561304f57600080fd5b61305b89838a01612f84565b9550604088013591508082111561307157600080fd5b61307d89838a01612f84565b9450606088013591508082111561309357600080fd5b506130a088828901612f84565b95989497509295608001359392505050565b600080604083850312156130c557600080fd5b6130ce83612dc0565b946020939093013593505050565b6000806000606084860312156130f157600080fd5b6130fa84612dc0565b9250602084013567ffffffffffffffff81111561311657600080fd5b61312286828701612f84565b925050604084013590509250925092565b6020808252825182820181905260009190848201906040850190845b818110156131745783516001600160a01b03168352928401929184019160010161314f565b50909695505050505050565b6000806000806080858703121561319657600080fd5b61319f85612dc0565b9350602085013567ffffffffffffffff808211156131bc57600080fd5b6131c888838901612f84565b945060408701359150808211156131de57600080fd5b506131eb87828801612f84565b949793965093946060013593505050565b634e487b7160e01b600052601160045260246000fd5b80820180821115611795576117956131fc565b634e487b7160e01b600052603260045260246000fd5b81810381811115611795576117956131fc565b600060018201613260576132606131fc565b5060010190565b600181811c9082168061327b57607f821691505b60208210810361329b57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115611f6a57600081815260208120601f850160051c810160208610156132c85750805b601f850160051c820191505b818110156132e7578281556001016132d4565b505050505050565b815167ffffffffffffffff81111561330957613309612f6e565b61331d816133178454613267565b846132a1565b602080601f831160018114613352576000841561333a5750858301515b600019600386901b1c1916600185901b1785556132e7565b600085815260208120601f198616915b8281101561338157888601518255948401946001909101908401613362565b508582101561339f5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052603160045260246000fd5b8082028115828204841417611795576117956131fc565b60208082526024908201527f4f7267616e697a6174696f6e206164647265737320646f6573206e6f742065786040820152636973742160e01b606082015260800190565b6020808252603a908201527f566f746572206f7267616e697a6174696f6e206973206e6f742076657269666960408201527f65642c206e6f74207065726d697474656420746f20766f746521000000000000606082015260800190565b6020808252602e908201527f566f746572206f7267616e697a6174696f6e2063616e6e6f7420766f7465206d60408201526d6f7265207468616e206f6e63652160901b60608201526080019056fea2646970667358221220daa6af178e1b36d9681b3304da3c4ee706ca1b3f4494f3802e4d990e3091fa3564736f6c63430008110033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x1 PUSH1 0x8 SSTORE CALLVALUE DUP1 ISZERO PUSH3 0x16 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x7 DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND CALLER SWAP1 DUP2 OR SWAP1 SWAP2 SSTORE PUSH8 0x6F05B59D3B20000 PUSH1 0xA SSTORE PUSH1 0x0 PUSH1 0xB SWAP1 DUP2 SSTORE PUSH1 0x40 DUP1 MLOAD DUP1 DUP3 ADD DUP3 MSTORE PUSH1 0x5 DUP2 MSTORE PUSH5 0x27BBB732B9 PUSH1 0xD9 SHL PUSH1 0x20 DUP1 DUP4 ADD SWAP2 SWAP1 SWAP2 MSTORE DUP3 MLOAD DUP1 DUP5 ADD DUP5 MSTORE PUSH1 0x4 DUP2 MSTORE PUSH4 0x4E6F6E65 PUSH1 0xE0 SHL DUP2 DUP4 ADD MSTORE DUP4 MLOAD DUP1 DUP6 ADD SWAP1 SWAP5 MSTORE SWAP4 DUP4 MSTORE PUSH11 0x2232B9B1B934B83A34B7B7 PUSH1 0xA9 SHL SWAP1 DUP4 ADD MSTORE PUSH3 0xA2 SWAP4 SWAP3 SWAP1 SWAP2 TIMESTAMP PUSH3 0xC5 JUMP JUMPDEST CALLER PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x6 ADD DUP1 SLOAD PUSH1 0xFF NOT AND PUSH1 0x1 OR SWAP1 SSTORE PUSH3 0x45E JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xD ADD SLOAD ISZERO PUSH3 0x133 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD DUP2 SWAP1 MSTORE PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x4F7267616E697A6174696F6E20616C7265616479207265676973746572656421 PUSH1 0x44 DUP3 ADD MSTORE PUSH1 0x64 ADD PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND SWAP1 SWAP2 OR DUP2 SSTORE PUSH1 0x1 ADD PUSH3 0x16B DUP6 DUP3 PUSH3 0x350 JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x2 ADD PUSH3 0x193 DUP5 DUP3 PUSH3 0x350 JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xB ADD PUSH3 0x1BB DUP4 DUP3 PUSH3 0x350 JUMP JUMPDEST POP PUSH3 0x1CB DUP2 PUSH3 0x2A300 PUSH3 0x432 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP7 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xD ADD SSTORE PUSH3 0x1F2 DUP6 PUSH3 0x267 JUMP JUMPDEST PUSH3 0x1FF SWAP1 PUSH1 0x1 PUSH3 0x432 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP6 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x5 ADD SWAP7 SWAP1 SWAP7 SSTORE PUSH1 0x4 DUP1 SLOAD PUSH1 0x1 DUP2 ADD DUP3 SSTORE SWAP7 MSTORE PUSH32 0x8A35ACFBC15FF81A39AE7D344FD709F28E8600B4AA8C65C6B64BFE7FE36BD19B SWAP1 SWAP6 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND SWAP1 SWAP6 OR SWAP1 SWAP5 SSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x4 DUP2 ADD SLOAD PUSH1 0x3 SWAP1 SWAP2 ADD SLOAD PUSH1 0x9 SLOAD PUSH3 0x299 SWAP2 SWAP1 PUSH3 0x448 JUMP JUMPDEST PUSH3 0x2A5 SWAP2 SWAP1 PUSH3 0x448 JUMP JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH3 0x2D6 JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH3 0x2F7 JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH3 0x34B JUMPI PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP2 ADD PUSH1 0x20 DUP7 LT ISZERO PUSH3 0x326 JUMPI POP DUP1 JUMPDEST PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP3 ADD SWAP2 POP JUMPDEST DUP2 DUP2 LT ISZERO PUSH3 0x347 JUMPI DUP3 DUP2 SSTORE PUSH1 0x1 ADD PUSH3 0x332 JUMP JUMPDEST POP POP POP JUMPDEST POP POP POP JUMP JUMPDEST DUP2 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0x40 SHL SUB DUP2 GT ISZERO PUSH3 0x36C JUMPI PUSH3 0x36C PUSH3 0x2AB JUMP JUMPDEST PUSH3 0x384 DUP2 PUSH3 0x37D DUP5 SLOAD PUSH3 0x2C1 JUMP JUMPDEST DUP5 PUSH3 0x2FD JUMP JUMPDEST PUSH1 0x20 DUP1 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH3 0x3BC JUMPI PUSH1 0x0 DUP5 ISZERO PUSH3 0x3A3 JUMPI POP DUP6 DUP4 ADD MLOAD JUMPDEST PUSH1 0x0 NOT PUSH1 0x3 DUP7 SWAP1 SHL SHR NOT AND PUSH1 0x1 DUP6 SWAP1 SHL OR DUP6 SSTORE PUSH3 0x347 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F NOT DUP7 AND SWAP2 JUMPDEST DUP3 DUP2 LT ISZERO PUSH3 0x3ED JUMPI DUP9 DUP7 ADD MLOAD DUP3 SSTORE SWAP5 DUP5 ADD SWAP5 PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 DUP5 ADD PUSH3 0x3CC JUMP JUMPDEST POP DUP6 DUP3 LT ISZERO PUSH3 0x40C JUMPI DUP8 DUP6 ADD MLOAD PUSH1 0x0 NOT PUSH1 0x3 DUP9 SWAP1 SHL PUSH1 0xF8 AND SHR NOT AND DUP2 SSTORE JUMPDEST POP POP POP POP POP PUSH1 0x1 SWAP1 DUP2 SHL ADD SWAP1 SSTORE POP JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST DUP1 DUP3 ADD DUP1 DUP3 GT ISZERO PUSH3 0x2A5 JUMPI PUSH3 0x2A5 PUSH3 0x41C JUMP JUMPDEST DUP2 DUP2 SUB DUP2 DUP2 GT ISZERO PUSH3 0x2A5 JUMPI PUSH3 0x2A5 PUSH3 0x41C JUMP JUMPDEST PUSH2 0x3501 DUP1 PUSH3 0x46E PUSH1 0x0 CODECOPY PUSH1 0x0 RETURN INVALID PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x1EF JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x80007E83 GT PUSH2 0x10C JUMPI DUP1 PUSH4 0xB7627E41 GT PUSH2 0x9A JUMPI DUP1 PUSH4 0xE3323ABA GT PUSH2 0x6C JUMPI DUP1 PUSH4 0xE3323ABA EQ PUSH2 0x60C JUMPI DUP1 PUSH4 0xE75176B5 EQ PUSH2 0x634 JUMPI DUP1 PUSH4 0xEF2D5847 EQ PUSH2 0x654 JUMPI DUP1 PUSH4 0xF15C01DD EQ PUSH2 0x674 JUMPI DUP1 PUSH4 0xF851A440 EQ PUSH2 0x694 JUMPI STOP JUMPDEST DUP1 PUSH4 0xB7627E41 EQ PUSH2 0x57E JUMPI DUP1 PUSH4 0xBC489AA9 EQ PUSH2 0x5B7 JUMPI DUP1 PUSH4 0xC9DFCA10 EQ PUSH2 0x5CC JUMPI DUP1 PUSH4 0xE2579114 EQ PUSH2 0x5EC JUMPI STOP JUMPDEST DUP1 PUSH4 0xA1B0FFE0 GT PUSH2 0xDE JUMPI DUP1 PUSH4 0xA1B0FFE0 EQ PUSH2 0x4C2 JUMPI DUP1 PUSH4 0xA52DA85D EQ PUSH2 0x4F1 JUMPI DUP1 PUSH4 0xAC64FCDE EQ PUSH2 0x51E JUMPI DUP1 PUSH4 0xAE51C2BC EQ PUSH2 0x53E JUMPI DUP1 PUSH4 0xB5E801D5 EQ PUSH2 0x55E JUMPI STOP JUMPDEST DUP1 PUSH4 0x80007E83 EQ PUSH2 0x445 JUMPI DUP1 PUSH4 0x80E179E9 EQ PUSH2 0x46D JUMPI DUP1 PUSH4 0x8E349519 EQ PUSH2 0x48D JUMPI DUP1 PUSH4 0x8FC0ED2F EQ PUSH2 0x4AD JUMPI STOP JUMPDEST DUP1 PUSH4 0x4648DF2A GT PUSH2 0x189 JUMPI DUP1 PUSH4 0x5CF9303F GT PUSH2 0x15B JUMPI DUP1 PUSH4 0x5CF9303F EQ PUSH2 0x397 JUMPI DUP1 PUSH4 0x5D0161F1 EQ PUSH2 0x3D0 JUMPI DUP1 PUSH4 0x62AE7AC7 EQ PUSH2 0x3E5 JUMPI DUP1 PUSH4 0x6FC3911C EQ PUSH2 0x405 JUMPI DUP1 PUSH4 0x71206274 EQ PUSH2 0x425 JUMPI STOP JUMPDEST DUP1 PUSH4 0x4648DF2A EQ PUSH2 0x313 JUMPI DUP1 PUSH4 0x482BD55B EQ PUSH2 0x333 JUMPI DUP1 PUSH4 0x4CF5D552 EQ PUSH2 0x353 JUMPI DUP1 PUSH4 0x55779B65 EQ PUSH2 0x377 JUMPI STOP JUMPDEST DUP1 PUSH4 0x2D80468D GT PUSH2 0x1C2 JUMPI DUP1 PUSH4 0x2D80468D EQ PUSH2 0x278 JUMPI DUP1 PUSH4 0x3E85747E EQ PUSH2 0x2A3 JUMPI DUP1 PUSH4 0x440370FE EQ PUSH2 0x2D3 JUMPI DUP1 PUSH4 0x4438D4B0 EQ PUSH2 0x2F3 JUMPI STOP JUMPDEST DUP1 PUSH3 0x37556E EQ PUSH2 0x1F8 JUMPI DUP1 PUSH4 0xA54ECBF EQ PUSH2 0x218 JUMPI DUP1 PUSH4 0x14CB11E8 EQ PUSH2 0x238 JUMPI DUP1 PUSH4 0x1E477180 EQ PUSH2 0x258 JUMPI STOP JUMPDEST CALLDATASIZE PUSH2 0x1F6 JUMPI STOP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x204 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x213 CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH2 0x6CC JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x224 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x233 CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH2 0x73C JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x244 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x253 CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH2 0x950 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x264 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x273 CALLDATASIZE PUSH1 0x4 PUSH2 0x2DFE JUMP JUMPDEST PUSH2 0x9C0 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x284 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x28D PUSH2 0xFDD JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x29A SWAP2 SWAP1 PUSH2 0x2E80 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x2AF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x2C3 PUSH2 0x2BE CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH2 0x136D JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x29A JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x2DF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x2EE CALLDATASIZE PUSH1 0x4 PUSH2 0x3011 JUMP JUMPDEST PUSH2 0x139A JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x2FF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x30E CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH2 0x1530 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x31F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x2C3 PUSH2 0x32E CALLDATASIZE PUSH1 0x4 PUSH2 0x30B2 JUMP JUMPDEST PUSH2 0x1766 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x33F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x34E CALLDATASIZE PUSH1 0x4 PUSH2 0x30DC JUMP JUMPDEST PUSH2 0x179B JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x35F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x369 PUSH1 0x9 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x29A JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x383 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x392 CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH2 0x1834 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x3A3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x369 PUSH2 0x3B2 CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x3 ADD SLOAD SWAP1 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x3DC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x28D PUSH2 0x18A4 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x3F1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x400 CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH2 0x1BBB JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x411 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x2C3 PUSH2 0x420 CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH2 0x1C20 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x431 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x440 CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH2 0x1C6D JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x451 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP CALLER PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x6 ADD SLOAD PUSH1 0xFF AND PUSH2 0x2C3 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x479 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x488 CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH2 0x1D23 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x499 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x4A8 CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH2 0x1DD9 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x4B9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x1F6F JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x4CE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 CALLER PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xE ADD DUP1 SLOAD PUSH1 0xFF NOT AND PUSH1 0x1 OR SWAP1 SSTORE JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x4FD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x511 PUSH2 0x50C CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH2 0x2052 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x29A SWAP2 SWAP1 PUSH2 0x3133 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x52A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x539 CALLDATASIZE PUSH1 0x4 PUSH2 0x3180 JUMP JUMPDEST PUSH2 0x22C4 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x54A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x559 CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH2 0x237F JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x56A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x579 CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH2 0x25B6 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x58A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x369 PUSH2 0x599 CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x4 ADD SLOAD SWAP1 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x5C3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x2622 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x5D8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x2C3 PUSH2 0x5E7 CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH2 0x26CA JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x5F8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x2C3 PUSH2 0x607 CALLDATASIZE PUSH1 0x4 PUSH2 0x30B2 JUMP JUMPDEST PUSH2 0x26F7 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x618 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP CALLER PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xE ADD SLOAD PUSH1 0xFF AND PUSH2 0x2C3 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x640 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x369 PUSH2 0x64F CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH2 0x28D9 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x660 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x66F CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH2 0x2913 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x680 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x2C3 PUSH2 0x68F CALLDATASIZE PUSH1 0x4 PUSH2 0x30B2 JUMP JUMPDEST PUSH2 0x2B25 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x6A0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x7 SLOAD PUSH2 0x6B4 SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x29A JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xD PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x4 ADD SLOAD PUSH2 0x6F3 SWAP1 PUSH1 0x1 PUSH2 0x3212 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xD PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP3 KECCAK256 PUSH1 0x4 DUP2 ADD SWAP4 SWAP1 SWAP4 SSTORE PUSH1 0x6 SWAP1 SWAP3 ADD DUP1 SLOAD PUSH1 0x1 DUP2 ADD DUP3 SSTORE SWAP1 DUP3 MSTORE SWAP2 SWAP1 KECCAK256 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND CALLER OR SWAP1 SSTORE JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xD PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xB ADD SLOAD PUSH1 0xFF AND ISZERO PUSH2 0x94D JUMPI PUSH1 0x0 JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x7 ADD SLOAD DUP2 LT ISZERO PUSH2 0x855 JUMPI PUSH1 0xA SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x7 ADD DUP1 SLOAD DUP3 SWAP2 SWAP1 DUP6 SWAP1 DUP2 LT PUSH2 0x7B9 JUMPI PUSH2 0x7B9 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xA ADD SLOAD PUSH2 0x7EB SWAP2 SWAP1 PUSH2 0x323B JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x7 ADD DUP1 SLOAD DUP3 SWAP2 SWAP1 DUP6 SWAP1 DUP2 LT PUSH2 0x81B JUMPI PUSH2 0x81B PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xA ADD SSTORE DUP1 PUSH2 0x84D DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x763 JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x8 ADD SLOAD DUP2 LT ISZERO PUSH2 0x94B JUMPI PUSH1 0xA SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x8 ADD DUP1 SLOAD DUP3 SWAP2 SWAP1 DUP6 SWAP1 DUP2 LT PUSH2 0x8AF JUMPI PUSH2 0x8AF PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xA ADD SLOAD PUSH2 0x8E1 SWAP2 SWAP1 PUSH2 0x3212 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x8 ADD DUP1 SLOAD DUP3 SWAP2 SWAP1 DUP6 SWAP1 DUP2 LT PUSH2 0x911 JUMPI PUSH2 0x911 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xA ADD SSTORE DUP1 PUSH2 0x943 DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x859 JUMP JUMPDEST POP JUMPDEST POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xE PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x2 ADD SLOAD PUSH2 0x977 SWAP1 PUSH1 0x1 PUSH2 0x3212 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xE PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP3 KECCAK256 PUSH1 0x2 DUP2 ADD SWAP4 SWAP1 SWAP4 SSTORE PUSH1 0x4 SWAP1 SWAP3 ADD DUP1 SLOAD PUSH1 0x1 DUP2 ADD DUP3 SSTORE SWAP1 DUP3 MSTORE SWAP2 SWAP1 KECCAK256 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND CALLER OR SWAP1 SSTORE JUMP JUMPDEST DUP1 ISZERO PUSH2 0xCD2 JUMPI PUSH1 0x0 DUP1 JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x3 ADD SLOAD DUP2 LT ISZERO PUSH2 0xB91 JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x7 ADD DUP1 SLOAD DUP3 SWAP2 SWAP1 DUP5 SWAP1 DUP2 LT PUSH2 0xA1D JUMPI PUSH2 0xA1D PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xC ADD SLOAD PUSH2 0xA50 SWAP1 PUSH1 0x1 PUSH2 0x3212 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x7 ADD DUP1 SLOAD DUP3 SWAP2 SWAP1 DUP6 SWAP1 DUP2 LT PUSH2 0xA80 JUMPI PUSH2 0xA80 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xC ADD SSTORE PUSH1 0xA SLOAD PUSH2 0xAB5 SWAP1 DUP4 PUSH2 0x3212 JUMP JUMPDEST SWAP2 POP PUSH1 0xA SLOAD PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP9 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0xAF5 JUMPI PUSH2 0xAF5 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xA ADD SLOAD PUSH2 0xB27 SWAP2 SWAP1 PUSH2 0x3212 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x7 ADD DUP1 SLOAD DUP3 SWAP2 SWAP1 DUP6 SWAP1 DUP2 LT PUSH2 0xB57 JUMPI PUSH2 0xB57 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xA ADD SSTORE DUP1 PUSH2 0xB89 DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x9CA JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xA ADD SLOAD PUSH2 0xBB9 SWAP1 DUP3 SWAP1 PUSH2 0x323B JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0xA ADD SWAP2 SWAP1 SWAP2 SSTORE JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x4 ADD SLOAD DUP2 LT ISZERO PUSH2 0xCCB JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x8 ADD DUP1 SLOAD PUSH1 0x1 SWAP3 SWAP2 DUP3 SWAP2 DUP6 SWAP1 DUP2 LT PUSH2 0xC2F JUMPI PUSH2 0xC2F PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xC ADD SLOAD PUSH2 0xC61 SWAP2 SWAP1 PUSH2 0x323B JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x8 ADD DUP1 SLOAD DUP3 SWAP2 SWAP1 DUP6 SWAP1 DUP2 LT PUSH2 0xC91 JUMPI PUSH2 0xC91 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xC ADD SSTORE DUP1 PUSH2 0xCC3 DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0xBD9 JUMP JUMPDEST POP POP PUSH2 0x94B JUMP JUMPDEST PUSH1 0x0 DUP1 JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x4 ADD SLOAD DUP2 LT ISZERO PUSH2 0xE9D JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x8 ADD DUP1 SLOAD DUP3 SWAP2 SWAP1 DUP5 SWAP1 DUP2 LT PUSH2 0xD29 JUMPI PUSH2 0xD29 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xC ADD SLOAD PUSH2 0xD5C SWAP1 PUSH1 0x1 PUSH2 0x3212 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x8 ADD DUP1 SLOAD DUP3 SWAP2 SWAP1 DUP6 SWAP1 DUP2 LT PUSH2 0xD8C JUMPI PUSH2 0xD8C PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xC ADD SSTORE PUSH1 0xA SLOAD PUSH2 0xDC1 SWAP1 DUP4 PUSH2 0x3212 JUMP JUMPDEST SWAP2 POP PUSH1 0xA SLOAD PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP9 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0xE01 JUMPI PUSH2 0xE01 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xA ADD SLOAD PUSH2 0xE33 SWAP2 SWAP1 PUSH2 0x3212 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x8 ADD DUP1 SLOAD DUP3 SWAP2 SWAP1 DUP6 SWAP1 DUP2 LT PUSH2 0xE63 JUMPI PUSH2 0xE63 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xA ADD SSTORE DUP1 PUSH2 0xE95 DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0xCD6 JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xA ADD SLOAD PUSH2 0xEC5 SWAP1 DUP3 SWAP1 PUSH2 0x323B JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0xA ADD SWAP2 SWAP1 SWAP2 SSTORE JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x3 ADD SLOAD DUP2 LT ISZERO PUSH2 0xFD7 JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x7 ADD DUP1 SLOAD PUSH1 0x1 SWAP3 SWAP2 DUP3 SWAP2 DUP6 SWAP1 DUP2 LT PUSH2 0xF3B JUMPI PUSH2 0xF3B PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xC ADD SLOAD PUSH2 0xF6D SWAP2 SWAP1 PUSH2 0x323B JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x7 ADD DUP1 SLOAD DUP3 SWAP2 SWAP1 DUP6 SWAP1 DUP2 LT PUSH2 0xF9D JUMPI PUSH2 0xF9D PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xC ADD SSTORE DUP1 PUSH2 0xFCF DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0xEE5 JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x4 SLOAD PUSH1 0x8 SLOAD PUSH1 0x60 SWAP2 SWAP1 PUSH1 0x0 SWAP1 DUP2 SWAP1 PUSH2 0xFF6 SWAP1 DUP5 PUSH2 0x323B JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x100E JUMPI PUSH2 0x100E PUSH2 0x2F6E JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x1047 JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH2 0x1034 PUSH2 0x2CFC JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x102C JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1365 JUMPI PUSH1 0x0 PUSH1 0x4 DUP3 DUP2 SLOAD DUP2 LT PUSH2 0x106A JUMPI PUSH2 0x106A PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP1 DUP4 MSTORE SWAP1 DUP3 SWAP1 MSTORE PUSH1 0x40 SWAP1 SWAP2 KECCAK256 PUSH1 0x6 ADD SLOAD SWAP1 SWAP2 POP PUSH1 0xFF AND PUSH2 0x1352 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH2 0x120 DUP2 ADD DUP3 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP1 DUP5 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 DUP2 MSTORE SWAP5 DUP2 KECCAK256 DUP1 SLOAD SWAP1 SWAP4 AND DUP5 MSTORE SWAP1 DUP2 MSTORE DUP1 DUP5 MSTORE PUSH1 0x1 SWAP1 SWAP2 ADD DUP1 SLOAD SWAP2 SWAP4 DUP4 ADD SWAP2 PUSH2 0x10E0 SWAP1 PUSH2 0x3267 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x110C SWAP1 PUSH2 0x3267 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x1159 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x112E JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x1159 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x113C JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 DUP6 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD DUP1 SLOAD PUSH2 0x1195 SWAP1 PUSH2 0x3267 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x11C1 SWAP1 PUSH2 0x3267 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x120E JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x11E3 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x120E JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x11F1 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP SWAP2 DUP4 MSTORE POP POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 PUSH1 0x3 DUP2 ADD SLOAD DUP4 DUP8 ADD MSTORE PUSH1 0x4 DUP2 ADD SLOAD SWAP2 DUP7 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0x5 DUP2 ADD SLOAD PUSH1 0x60 DUP7 ADD MSTORE PUSH1 0x6 DUP2 ADD SLOAD PUSH1 0xFF AND ISZERO ISZERO PUSH1 0x80 DUP7 ADD MSTORE SWAP3 DUP3 MSTORE MSTORE PUSH1 0xB ADD DUP1 SLOAD PUSH1 0xA0 SWAP1 SWAP3 ADD SWAP2 PUSH2 0x1275 SWAP1 PUSH2 0x3267 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x12A1 SWAP1 PUSH2 0x3267 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x12EE JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x12C3 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x12EE JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x12D1 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 DUP6 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xD ADD SLOAD DUP2 MSTORE POP SWAP1 POP DUP1 DUP5 DUP7 DUP2 MLOAD DUP2 LT PUSH2 0x1338 JUMPI PUSH2 0x1338 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MSTORE PUSH2 0x134E PUSH1 0x1 DUP7 PUSH2 0x3212 JUMP JUMPDEST SWAP5 POP POP JUMPDEST POP DUP1 PUSH2 0x135D DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x104D JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 CALLER DUP5 MSTORE PUSH1 0x9 ADD SWAP1 SWAP2 MSTORE SWAP1 KECCAK256 SLOAD PUSH1 0xFF AND PUSH1 0x1 EQ SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xD ADD SLOAD ISZERO PUSH2 0x1408 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD DUP2 SWAP1 MSTORE PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x4F7267616E697A6174696F6E20616C7265616479207265676973746572656421 PUSH1 0x44 DUP3 ADD MSTORE PUSH1 0x64 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND SWAP1 SWAP2 OR DUP2 SSTORE PUSH1 0x1 ADD PUSH2 0x143E DUP6 DUP3 PUSH2 0x32EF JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x2 ADD PUSH2 0x1464 DUP5 DUP3 PUSH2 0x32EF JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xB ADD PUSH2 0x148A DUP4 DUP3 PUSH2 0x32EF JUMP JUMPDEST POP PUSH2 0x1498 DUP2 PUSH3 0x2A300 PUSH2 0x3212 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP7 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xD ADD SSTORE PUSH2 0x14BD DUP6 PUSH2 0x28D9 JUMP JUMPDEST PUSH2 0x14C8 SWAP1 PUSH1 0x1 PUSH2 0x3212 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP6 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x5 ADD SWAP7 SWAP1 SWAP7 SSTORE PUSH1 0x4 DUP1 SLOAD PUSH1 0x1 DUP2 ADD DUP3 SSTORE SWAP7 MSTORE PUSH32 0x8A35ACFBC15FF81A39AE7D344FD709F28E8600B4AA8C65C6B64BFE7FE36BD19B SWAP1 SWAP6 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND SWAP1 SWAP6 OR SWAP1 SWAP5 SSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xE PUSH1 0x20 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x7 ADD SLOAD PUSH1 0xFF AND ISZERO ISZERO SWAP1 SUB PUSH2 0x94D JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x6 ADD DUP1 SLOAD PUSH1 0xFF NOT AND SWAP1 SSTORE PUSH1 0x9 DUP1 SLOAD PUSH1 0x1 SWAP3 SWAP1 PUSH2 0x158D SWAP1 DUP5 SWAP1 PUSH2 0x323B JUMP JUMPDEST SWAP1 SWAP2 SSTORE POP POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 DUP2 KECCAK256 DUP1 SLOAD PUSH1 0xFF NOT AND SWAP1 SSTORE DUP1 JUMPDEST PUSH1 0x4 SLOAD DUP2 LT ISZERO PUSH2 0x16F2 JUMPI PUSH1 0x0 DUP1 PUSH1 0x4 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x15D4 JUMPI PUSH2 0x15D4 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0x6 ADD SLOAD PUSH1 0xFF AND DUP1 ISZERO PUSH2 0x1647 JUMPI POP PUSH1 0x0 DUP1 PUSH1 0x4 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x161C JUMPI PUSH2 0x161C PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xC ADD SLOAD DUP3 LT JUMPDEST ISZERO PUSH2 0x16E0 JUMPI PUSH1 0x0 DUP1 PUSH1 0x4 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x1662 JUMPI PUSH2 0x1662 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xC ADD SLOAD PUSH1 0x4 DUP1 SLOAD SWAP2 SWAP4 POP PUSH1 0x6 SWAP2 DUP4 SWAP1 DUP2 LT PUSH2 0x16A4 JUMPI PUSH2 0x16A4 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD DUP4 SLOAD PUSH1 0x1 DUP2 ADD DUP6 SSTORE SWAP4 DUP4 MSTORE SWAP2 KECCAK256 SWAP1 SWAP2 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP3 AND SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE JUMPDEST DUP1 PUSH2 0x16EA DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x15B4 JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST PUSH1 0x6 SLOAD DUP2 LT ISZERO PUSH2 0x1712 JUMPI DUP1 PUSH2 0x170A DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x16F6 JUMP JUMPDEST POP PUSH1 0x6 SLOAD PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0xFD7 JUMPI PUSH1 0x6 DUP1 SLOAD DUP1 PUSH2 0x1732 JUMPI PUSH2 0x1732 PUSH2 0x33AF JUMP JUMPDEST PUSH1 0x0 DUP3 DUP2 MSTORE PUSH1 0x20 SWAP1 KECCAK256 DUP2 ADD PUSH1 0x0 NOT SWAP1 DUP2 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND SWAP1 SSTORE ADD SWAP1 SSTORE DUP1 PUSH2 0x175E DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x1719 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0xD ADD SLOAD DUP3 GT ISZERO PUSH2 0x1791 JUMPI POP PUSH1 0x1 PUSH2 0x1795 JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0xE PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP3 KECCAK256 DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND SWAP1 SWAP4 OR DUP4 SSTORE PUSH1 0x8 SWAP1 SWAP3 ADD DUP1 SLOAD PUSH1 0x1 DUP2 ADD DUP3 SSTORE SWAP1 DUP3 MSTORE SWAP2 SWAP1 KECCAK256 ADD PUSH2 0x17E4 DUP4 DUP3 PUSH2 0x32EF JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xE PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x5 ADD DUP2 SWAP1 SSTORE PUSH2 0x1810 DUP2 PUSH3 0x69780 PUSH2 0x3212 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xE PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x6 ADD SWAP3 SWAP1 SWAP3 SSTORE POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xD PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x3 ADD SLOAD PUSH2 0x185B SWAP1 PUSH1 0x1 PUSH2 0x3212 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xD PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP3 KECCAK256 PUSH1 0x3 DUP2 ADD SWAP4 SWAP1 SWAP4 SSTORE PUSH1 0x5 SWAP1 SWAP3 ADD DUP1 SLOAD PUSH1 0x1 DUP2 ADD DUP3 SSTORE SWAP1 DUP3 MSTORE SWAP2 SWAP1 KECCAK256 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND CALLER OR SWAP1 SSTORE JUMP JUMPDEST PUSH1 0x4 SLOAD PUSH1 0x8 SLOAD PUSH1 0x60 SWAP2 SWAP1 PUSH1 0x0 SWAP1 DUP2 SWAP1 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x18CB JUMPI PUSH2 0x18CB PUSH2 0x2F6E JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x1904 JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH2 0x18F1 PUSH2 0x2CFC JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x18E9 JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1365 JUMPI PUSH1 0x0 PUSH1 0x4 DUP3 DUP2 SLOAD DUP2 LT PUSH2 0x1927 JUMPI PUSH2 0x1927 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP1 DUP4 MSTORE SWAP1 DUP3 SWAP1 MSTORE PUSH1 0x40 SWAP1 SWAP2 KECCAK256 PUSH1 0x6 ADD SLOAD SWAP1 SWAP2 POP PUSH1 0xFF AND ISZERO PUSH2 0x1BA8 JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP1 DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 DUP2 MLOAD PUSH2 0x120 DUP2 ADD SWAP1 SWAP3 MSTORE DUP1 SLOAD SWAP1 SWAP5 AND DUP2 MSTORE PUSH1 0x1 DUP5 ADD DUP1 SLOAD SWAP2 SWAP3 DUP4 ADD SWAP2 PUSH2 0x1998 SWAP1 PUSH2 0x3267 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x19C4 SWAP1 PUSH2 0x3267 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x1A11 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x19E6 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x1A11 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x19F4 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD DUP4 PUSH1 0x2 ADD DUP1 SLOAD PUSH2 0x1A2A SWAP1 PUSH2 0x3267 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x1A56 SWAP1 PUSH2 0x3267 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x1AA3 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x1A78 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x1AA3 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x1A86 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP SWAP2 DUP4 MSTORE POP POP PUSH1 0x3 DUP5 ADD SLOAD PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x4 DUP5 ADD SLOAD PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x5 DUP5 ADD SLOAD PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x6 DUP5 ADD SLOAD PUSH1 0xFF AND ISZERO ISZERO PUSH1 0x80 DUP3 ADD MSTORE PUSH1 0xB DUP5 ADD DUP1 SLOAD PUSH1 0xA0 SWAP1 SWAP3 ADD SWAP2 PUSH2 0x1AED SWAP1 PUSH2 0x3267 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x1B19 SWAP1 PUSH2 0x3267 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x1B66 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x1B3B JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x1B66 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x1B49 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD DUP4 PUSH1 0xD ADD SLOAD DUP2 MSTORE POP SWAP1 POP DUP1 DUP6 DUP8 DUP2 MLOAD DUP2 LT PUSH2 0x1B8D JUMPI PUSH2 0x1B8D PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MSTORE PUSH2 0x1BA3 PUSH1 0x1 DUP8 PUSH2 0x3212 JUMP JUMPDEST SWAP6 POP POP POP JUMPDEST POP DUP1 PUSH2 0x1BB3 DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x190A JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x6 ADD DUP1 SLOAD PUSH1 0xFF NOT AND PUSH1 0x1 SWAP1 DUP2 OR SWAP1 SWAP2 SSTORE PUSH1 0x9 DUP1 SLOAD SWAP2 SWAP3 SWAP1 SWAP2 PUSH2 0x1BF7 SWAP1 DUP5 SWAP1 PUSH2 0x3212 JUMP JUMPDEST SWAP1 SWAP2 SSTORE POP POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 DUP1 SLOAD PUSH1 0xFF NOT AND PUSH1 0x1 OR SWAP1 SSTORE JUMP JUMPDEST PUSH1 0x0 PUSH1 0x9 SLOAD PUSH1 0x33 PUSH2 0x1C31 SWAP2 SWAP1 PUSH2 0x33C5 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x3 ADD SLOAD PUSH2 0x1C58 SWAP1 PUSH1 0x64 PUSH2 0x33C5 JUMP JUMPDEST LT PUSH2 0x1C65 JUMPI POP PUSH1 0x1 SWAP2 SWAP1 POP JUMP JUMPDEST POP PUSH1 0x0 SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xD PUSH1 0x20 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x4 DUP2 ADD SLOAD PUSH1 0x3 SWAP1 SWAP2 ADD SLOAD PUSH2 0x1C9A SWAP2 SWAP1 PUSH2 0x3212 JUMP JUMPDEST SWAP1 POP PUSH2 0x1CA7 DUP2 PUSH1 0x33 PUSH2 0x33C5 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xD PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x3 ADD SLOAD PUSH2 0x1CCE SWAP1 PUSH1 0x64 PUSH2 0x33C5 JUMP JUMPDEST LT PUSH2 0x1CFE JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xD PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xB ADD DUP1 SLOAD PUSH1 0xFF NOT AND PUSH1 0x1 OR SWAP1 SSTORE PUSH2 0x94B JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xD PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xB ADD DUP1 SLOAD PUSH1 0xFF NOT AND SWAP1 SSTORE JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xE PUSH1 0x20 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x2 DUP2 ADD SLOAD PUSH1 0x1 SWAP1 SWAP2 ADD SLOAD PUSH2 0x1D50 SWAP2 SWAP1 PUSH2 0x3212 JUMP JUMPDEST SWAP1 POP PUSH2 0x1D5D DUP2 PUSH1 0x33 PUSH2 0x33C5 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xE PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x1 ADD SLOAD PUSH2 0x1D84 SWAP1 PUSH1 0x64 PUSH2 0x33C5 JUMP JUMPDEST LT PUSH2 0x1DB4 JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xE PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x7 ADD DUP1 SLOAD PUSH1 0xFF NOT AND PUSH1 0x1 OR SWAP1 SSTORE PUSH2 0x94B JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xE PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x7 ADD DUP1 SLOAD PUSH1 0xFF NOT AND SWAP1 SSTORE JUMP JUMPDEST PUSH1 0x5 SLOAD PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x1E2C JUMPI PUSH1 0x5 DUP1 SLOAD DUP1 PUSH2 0x1DF8 JUMPI PUSH2 0x1DF8 PUSH2 0x33AF JUMP JUMPDEST PUSH1 0x0 DUP3 DUP2 MSTORE PUSH1 0x20 SWAP1 KECCAK256 DUP2 ADD PUSH1 0x0 NOT SWAP1 DUP2 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND SWAP1 SSTORE ADD SWAP1 SSTORE DUP1 PUSH2 0x1E24 DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x1DDF JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x7 ADD SLOAD DUP2 LT ISZERO PUSH2 0x1ECB JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x7 ADD DUP1 SLOAD PUSH1 0x3 SWAP2 DUP4 SWAP2 DUP6 SWAP1 DUP2 LT PUSH2 0x1E85 JUMPI PUSH2 0x1E85 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP2 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 DUP1 SLOAD PUSH1 0xFF NOT AND SWAP2 ISZERO ISZERO SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE DUP1 PUSH2 0x1EC3 DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x1E30 JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x8 ADD SLOAD DUP2 LT ISZERO PUSH2 0x1F6A JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x8 ADD DUP1 SLOAD PUSH1 0x3 SWAP2 DUP4 SWAP2 DUP6 SWAP1 DUP2 LT PUSH2 0x1F24 JUMPI PUSH2 0x1F24 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP2 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 DUP1 SLOAD PUSH1 0xFF NOT AND SWAP2 ISZERO ISZERO SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE DUP1 PUSH2 0x1F62 DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x1ECF JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0xC SLOAD PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x94B JUMPI PUSH1 0xC DUP1 SLOAD DUP1 PUSH2 0x1F8E JUMPI PUSH2 0x1F8E PUSH2 0x33AF JUMP JUMPDEST PUSH1 0x0 DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0xF PUSH1 0x0 NOT SWAP1 SWAP4 ADD SWAP3 DUP4 MUL ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND DUP2 SSTORE SWAP1 PUSH2 0x1FBF PUSH1 0x1 DUP4 ADD DUP3 PUSH2 0x2D53 JUMP JUMPDEST PUSH2 0x1FCD PUSH1 0x2 DUP4 ADD PUSH1 0x0 PUSH2 0x2D53 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x3 DUP4 ADD DUP2 SWAP1 SSTORE PUSH1 0x4 DUP4 ADD DUP2 SWAP1 SSTORE PUSH1 0x5 DUP4 ADD DUP2 SWAP1 SSTORE PUSH1 0x6 DUP4 ADD DUP1 SLOAD PUSH1 0xFF NOT AND SWAP1 SSTORE PUSH2 0x1FFE SWAP1 PUSH1 0x7 DUP5 ADD SWAP1 PUSH2 0x2D8D JUMP JUMPDEST PUSH2 0x200C PUSH1 0x8 DUP4 ADD PUSH1 0x0 PUSH2 0x2D8D JUMP JUMPDEST PUSH1 0xA DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0xB DUP3 ADD PUSH1 0x0 PUSH2 0x2024 SWAP2 SWAP1 PUSH2 0x2D53 JUMP JUMPDEST POP PUSH1 0x0 PUSH1 0xC DUP3 ADD DUP2 SWAP1 SSTORE PUSH1 0xD DUP3 ADD SSTORE PUSH1 0xE ADD DUP1 SLOAD PUSH1 0xFF NOT AND SWAP1 SSTORE SWAP1 SSTORE DUP1 PUSH2 0x204A DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x1F75 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x7 ADD SLOAD DUP2 LT ISZERO PUSH2 0x20FE JUMPI PUSH1 0x1 PUSH1 0x3 PUSH1 0x0 DUP1 PUSH1 0x0 DUP8 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x20B8 JUMPI PUSH2 0x20B8 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP2 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 DUP1 SLOAD PUSH1 0xFF NOT AND SWAP2 ISZERO ISZERO SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE DUP1 PUSH2 0x20F6 DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x2057 JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x8 ADD SLOAD DUP2 LT ISZERO PUSH2 0x21A9 JUMPI PUSH1 0x1 PUSH1 0x3 PUSH1 0x0 DUP1 PUSH1 0x0 DUP8 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x2163 JUMPI PUSH2 0x2163 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP2 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 DUP1 SLOAD PUSH1 0xFF NOT AND SWAP2 ISZERO ISZERO SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE DUP1 PUSH2 0x21A1 DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x2102 JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST PUSH1 0x4 SLOAD DUP2 LT ISZERO PUSH2 0x2261 JUMPI PUSH1 0x3 PUSH1 0x0 PUSH1 0x4 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x21CE JUMPI PUSH2 0x21CE PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD DUP2 KECCAK256 SLOAD PUSH1 0xFF AND ISZERO ISZERO SWAP1 SUB PUSH2 0x224F JUMPI PUSH1 0x5 PUSH1 0x4 DUP3 DUP2 SLOAD DUP2 LT PUSH2 0x2213 JUMPI PUSH2 0x2213 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD DUP4 SLOAD PUSH1 0x1 DUP2 ADD DUP6 SSTORE SWAP4 DUP4 MSTORE SWAP2 KECCAK256 SWAP1 SWAP2 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP3 AND SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE JUMPDEST DUP1 PUSH2 0x2259 DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x21AD JUMP JUMPDEST POP PUSH1 0x5 DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD DUP1 ISZERO PUSH2 0x22B8 JUMPI PUSH1 0x20 MUL DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 MSTORE PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x229A JUMPI JUMPDEST POP POP POP POP POP SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0xD PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND SWAP1 SWAP2 OR DUP2 SSTORE PUSH1 0x1 ADD PUSH2 0x22FA DUP5 DUP3 PUSH2 0x32EF JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xD PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x2 ADD PUSH2 0x2320 DUP4 DUP3 PUSH2 0x32EF JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xD PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x9 ADD DUP2 SWAP1 SSTORE PUSH2 0x234C DUP2 PUSH3 0x69780 PUSH2 0x3212 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xD PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xA ADD SSTORE PUSH1 0xB SLOAD PUSH2 0x2376 SWAP1 PUSH1 0x1 PUSH2 0x3212 JUMP JUMPDEST PUSH1 0xB SSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xD PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xB ADD SLOAD PUSH1 0xFF AND ISZERO ISZERO PUSH1 0x1 SUB PUSH2 0x94D JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x6 ADD DUP1 SLOAD PUSH1 0xFF NOT AND SWAP1 SSTORE PUSH1 0x9 DUP1 SLOAD PUSH1 0x1 SWAP3 SWAP1 PUSH2 0x23DD SWAP1 DUP5 SWAP1 PUSH2 0x323B JUMP JUMPDEST SWAP1 SWAP2 SSTORE POP POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 DUP2 KECCAK256 DUP1 SLOAD PUSH1 0xFF NOT AND SWAP1 SSTORE DUP1 JUMPDEST PUSH1 0x4 SLOAD DUP2 LT ISZERO PUSH2 0x2542 JUMPI PUSH1 0x0 DUP1 PUSH1 0x4 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x2424 JUMPI PUSH2 0x2424 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0x6 ADD SLOAD PUSH1 0xFF AND DUP1 ISZERO PUSH2 0x2497 JUMPI POP PUSH1 0x0 DUP1 PUSH1 0x4 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x246C JUMPI PUSH2 0x246C PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xC ADD SLOAD DUP3 LT JUMPDEST ISZERO PUSH2 0x2530 JUMPI PUSH1 0x0 DUP1 PUSH1 0x4 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x24B2 JUMPI PUSH2 0x24B2 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xC ADD SLOAD PUSH1 0x4 DUP1 SLOAD SWAP2 SWAP4 POP PUSH1 0x6 SWAP2 DUP4 SWAP1 DUP2 LT PUSH2 0x24F4 JUMPI PUSH2 0x24F4 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD DUP4 SLOAD PUSH1 0x1 DUP2 ADD DUP6 SSTORE SWAP4 DUP4 MSTORE SWAP2 KECCAK256 SWAP1 SWAP2 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP3 AND SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE JUMPDEST DUP1 PUSH2 0x253A DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x2404 JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST PUSH1 0x6 SLOAD DUP2 LT ISZERO PUSH2 0x2562 JUMPI DUP1 PUSH2 0x255A DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x2546 JUMP JUMPDEST POP PUSH1 0x6 SLOAD PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0xFD7 JUMPI PUSH1 0x6 DUP1 SLOAD DUP1 PUSH2 0x2582 JUMPI PUSH2 0x2582 PUSH2 0x33AF JUMP JUMPDEST PUSH1 0x0 DUP3 DUP2 MSTORE PUSH1 0x20 SWAP1 KECCAK256 DUP2 ADD PUSH1 0x0 NOT SWAP1 DUP2 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND SWAP1 SSTORE ADD SWAP1 SSTORE DUP1 PUSH2 0x25AE DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x2569 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xE PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x1 SWAP1 DUP2 ADD SLOAD PUSH2 0x25DD SWAP2 PUSH2 0x3212 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xE PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP3 KECCAK256 PUSH1 0x1 DUP1 DUP3 ADD SWAP5 SWAP1 SWAP5 SSTORE PUSH1 0x3 ADD DUP1 SLOAD SWAP4 DUP5 ADD DUP2 SSTORE DUP3 MSTORE SWAP1 KECCAK256 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND CALLER OR SWAP1 SSTORE JUMP JUMPDEST PUSH1 0x0 JUMPDEST PUSH1 0x5 SLOAD DUP2 LT ISZERO PUSH2 0x94D JUMPI PUSH1 0xA SLOAD PUSH1 0x0 DUP1 PUSH1 0x5 DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x2648 JUMPI PUSH2 0x2648 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xA ADD SLOAD PUSH2 0x267A SWAP2 SWAP1 PUSH2 0x323B JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x5 DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x2690 JUMPI PUSH2 0x2690 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xA ADD SSTORE DUP1 PUSH2 0x26C2 DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x2625 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 CALLER DUP5 MSTORE PUSH1 0x9 ADD SWAP1 SWAP2 MSTORE SWAP1 KECCAK256 SLOAD PUSH1 0xFF AND PUSH1 0x2 EQ SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0xD ADD SLOAD DUP4 SWAP1 DUP3 SUB PUSH2 0x2733 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x13FF SWAP1 PUSH2 0x33DC JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x6 ADD SLOAD PUSH1 0xFF AND ISZERO PUSH2 0x279F JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x1E PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x4F7267616E697A6174696F6E20616C7265616479207665726966696564210000 PUSH1 0x44 DUP3 ADD MSTORE PUSH1 0x64 ADD PUSH2 0x13FF JUMP JUMPDEST CALLER PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xD ADD SLOAD ISZERO DUP1 ISZERO SWAP1 PUSH2 0x27D2 JUMPI POP CALLER PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x6 ADD SLOAD PUSH1 0xFF AND JUMPDEST PUSH2 0x27EE JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x13FF SWAP1 PUSH2 0x3420 JUMP JUMPDEST PUSH2 0x27F7 DUP2 PUSH2 0x26CA JUMP JUMPDEST ISZERO DUP1 ISZERO PUSH2 0x280A JUMPI POP PUSH2 0x2808 DUP2 PUSH2 0x136D JUMP JUMPDEST ISZERO JUMPDEST PUSH2 0x2826 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x13FF SWAP1 PUSH2 0x347D JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x3 ADD DUP1 SLOAD PUSH1 0x1 SWAP3 SWAP1 PUSH2 0x2852 SWAP1 DUP5 SWAP1 PUSH2 0x3212 JUMP JUMPDEST SWAP1 SWAP2 SSTORE POP POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 PUSH1 0x7 DUP2 ADD DUP1 SLOAD PUSH1 0x1 DUP2 ADD DUP3 SSTORE SWAP1 DUP6 MSTORE DUP4 DUP6 KECCAK256 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND CALLER SWAP1 DUP2 OR SWAP1 SWAP2 SSTORE DUP5 MSTORE PUSH1 0x9 ADD SWAP1 SWAP2 MSTORE SWAP1 KECCAK256 DUP1 SLOAD PUSH1 0xFF NOT AND PUSH1 0x2 OR SWAP1 SSTORE PUSH2 0x28B5 DUP5 DUP5 PUSH2 0x1766 JUMP JUMPDEST ISZERO PUSH2 0x28CD JUMPI PUSH2 0x28C3 DUP5 PUSH2 0x1C20 JUMP JUMPDEST POP PUSH1 0x1 SWAP2 POP PUSH2 0x28D2 JUMP JUMPDEST PUSH1 0x0 SWAP2 POP JUMPDEST POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x4 DUP2 ADD SLOAD PUSH1 0x3 SWAP1 SWAP2 ADD SLOAD PUSH1 0x9 SLOAD PUSH2 0x2909 SWAP2 SWAP1 PUSH2 0x323B JUMP JUMPDEST PUSH2 0x1795 SWAP2 SWAP1 PUSH2 0x323B JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xE PUSH1 0x20 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x7 ADD SLOAD PUSH1 0xFF AND ISZERO ISZERO SWAP1 SUB PUSH2 0x94D JUMPI PUSH1 0x0 JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x7 ADD SLOAD DUP2 LT ISZERO PUSH2 0x2A2F JUMPI PUSH1 0xA SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x7 ADD DUP1 SLOAD DUP3 SWAP2 SWAP1 DUP6 SWAP1 DUP2 LT PUSH2 0x2993 JUMPI PUSH2 0x2993 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xA ADD SLOAD PUSH2 0x29C5 SWAP2 SWAP1 PUSH2 0x323B JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x7 ADD DUP1 SLOAD DUP3 SWAP2 SWAP1 DUP6 SWAP1 DUP2 LT PUSH2 0x29F5 JUMPI PUSH2 0x29F5 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xA ADD SSTORE DUP1 PUSH2 0x2A27 DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x293D JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x8 ADD SLOAD DUP2 LT ISZERO PUSH2 0x94B JUMPI PUSH1 0xA SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x8 ADD DUP1 SLOAD DUP3 SWAP2 SWAP1 DUP6 SWAP1 DUP2 LT PUSH2 0x2A89 JUMPI PUSH2 0x2A89 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xA ADD SLOAD PUSH2 0x2ABB SWAP2 SWAP1 PUSH2 0x3212 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x8 ADD DUP1 SLOAD DUP3 SWAP2 SWAP1 DUP6 SWAP1 DUP2 LT PUSH2 0x2AEB JUMPI PUSH2 0x2AEB PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xA ADD SSTORE DUP1 PUSH2 0x2B1D DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x2A33 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0xD ADD SLOAD DUP4 SWAP1 DUP3 SUB PUSH2 0x2B61 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x13FF SWAP1 PUSH2 0x33DC JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x6 ADD SLOAD PUSH1 0xFF AND ISZERO PUSH2 0x2BCD JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x1E PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x4F7267616E697A6174696F6E20616C7265616479207665726966696564210000 PUSH1 0x44 DUP3 ADD MSTORE PUSH1 0x64 ADD PUSH2 0x13FF JUMP JUMPDEST CALLER PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xD ADD SLOAD ISZERO DUP1 ISZERO SWAP1 PUSH2 0x2C00 JUMPI POP CALLER PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x6 ADD SLOAD PUSH1 0xFF AND JUMPDEST PUSH2 0x2C1C JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x13FF SWAP1 PUSH2 0x3420 JUMP JUMPDEST PUSH2 0x2C25 DUP2 PUSH2 0x26CA JUMP JUMPDEST ISZERO DUP1 ISZERO PUSH2 0x2C38 JUMPI POP PUSH2 0x2C36 DUP2 PUSH2 0x136D JUMP JUMPDEST ISZERO JUMPDEST PUSH2 0x2C54 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x13FF SWAP1 PUSH2 0x347D JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x4 ADD DUP1 SLOAD PUSH1 0x1 SWAP3 SWAP1 PUSH2 0x2C80 SWAP1 DUP5 SWAP1 PUSH2 0x3212 JUMP JUMPDEST SWAP1 SWAP2 SSTORE POP POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 PUSH1 0x8 DUP2 ADD DUP1 SLOAD PUSH1 0x1 DUP2 DUP2 ADD DUP4 SSTORE SWAP2 DUP7 MSTORE DUP5 DUP7 KECCAK256 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND CALLER SWAP1 DUP2 OR SWAP1 SWAP2 SSTORE DUP6 MSTORE PUSH1 0x9 SWAP1 SWAP2 ADD SWAP1 SWAP3 MSTORE SWAP1 SWAP2 KECCAK256 DUP1 SLOAD PUSH1 0xFF NOT AND SWAP1 SWAP2 OR SWAP1 SSTORE PUSH2 0x2CE7 DUP5 DUP5 PUSH2 0x1766 JUMP JUMPDEST ISZERO PUSH2 0x28CD JUMPI PUSH2 0x2CF5 DUP5 PUSH2 0x1C20 JUMP JUMPDEST SWAP2 POP PUSH2 0x28D2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH2 0x120 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE POP SWAP1 JUMP JUMPDEST POP DUP1 SLOAD PUSH2 0x2D5F SWAP1 PUSH2 0x3267 JUMP JUMPDEST PUSH1 0x0 DUP3 SSTORE DUP1 PUSH1 0x1F LT PUSH2 0x2D6F JUMPI POP POP JUMP JUMPDEST PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 DUP2 ADD SWAP1 PUSH2 0x94D SWAP2 SWAP1 PUSH2 0x2DA7 JUMP JUMPDEST POP DUP1 SLOAD PUSH1 0x0 DUP3 SSTORE SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 DUP2 ADD SWAP1 PUSH2 0x94D SWAP2 SWAP1 JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0x2DBC JUMPI PUSH1 0x0 DUP2 SSTORE PUSH1 0x1 ADD PUSH2 0x2DA8 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST DUP1 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH2 0x2DD7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2DEE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2DF7 DUP3 PUSH2 0x2DC0 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x2E11 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2E1A DUP4 PUSH2 0x2DC0 JUMP JUMPDEST SWAP2 POP PUSH1 0x20 DUP4 ADD CALLDATALOAD DUP1 ISZERO ISZERO DUP2 EQ PUSH2 0x2E2F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD DUP1 DUP5 MSTORE PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x2E60 JUMPI PUSH1 0x20 DUP2 DUP6 ADD DUP2 ADD MLOAD DUP7 DUP4 ADD DUP3 ADD MSTORE ADD PUSH2 0x2E44 JUMP JUMPDEST POP PUSH1 0x0 PUSH1 0x20 DUP3 DUP7 ADD ADD MSTORE PUSH1 0x20 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND DUP6 ADD ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 ADD DUP2 DUP5 MSTORE DUP1 DUP6 MLOAD DUP1 DUP4 MSTORE PUSH1 0x40 SWAP3 POP DUP3 DUP7 ADD SWAP2 POP DUP3 DUP2 PUSH1 0x5 SHL DUP8 ADD ADD DUP5 DUP9 ADD PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x2F60 JUMPI DUP9 DUP4 SUB PUSH1 0x3F NOT ADD DUP6 MSTORE DUP2 MLOAD DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP5 MSTORE PUSH2 0x120 DUP9 DUP3 ADD MLOAD DUP2 DUP11 DUP8 ADD MSTORE PUSH2 0x2EDF DUP3 DUP8 ADD DUP3 PUSH2 0x2E3A JUMP JUMPDEST SWAP2 POP POP DUP8 DUP3 ADD MLOAD DUP6 DUP3 SUB DUP10 DUP8 ADD MSTORE PUSH2 0x2EF7 DUP3 DUP3 PUSH2 0x2E3A JUMP JUMPDEST PUSH1 0x60 DUP5 DUP2 ADD MLOAD SWAP1 DUP9 ADD MSTORE PUSH1 0x80 DUP1 DUP6 ADD MLOAD SWAP1 DUP9 ADD MSTORE PUSH1 0xA0 DUP1 DUP6 ADD MLOAD SWAP1 DUP9 ADD MSTORE PUSH1 0xC0 DUP1 DUP6 ADD MLOAD ISZERO ISZERO SWAP1 DUP9 ADD MSTORE PUSH1 0xE0 DUP1 DUP6 ADD MLOAD DUP9 DUP4 SUB DUP3 DUP11 ADD MSTORE SWAP2 SWAP4 POP SWAP2 POP PUSH2 0x2F3D DUP4 DUP3 PUSH2 0x2E3A JUMP JUMPDEST PUSH2 0x100 SWAP5 DUP6 ADD MLOAD SWAP8 SWAP1 SWAP5 ADD SWAP7 SWAP1 SWAP7 MSTORE POP POP SWAP5 DUP8 ADD SWAP5 SWAP3 POP SWAP1 DUP7 ADD SWAP1 PUSH1 0x1 ADD PUSH2 0x2EA7 JUMP JUMPDEST POP SWAP1 SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x2F95 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x2FB0 JUMPI PUSH2 0x2FB0 PUSH2 0x2F6E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP4 ADD PUSH1 0x1F NOT SWAP1 DUP2 AND PUSH1 0x3F ADD AND DUP2 ADD SWAP1 DUP3 DUP3 GT DUP2 DUP4 LT OR ISZERO PUSH2 0x2FD8 JUMPI PUSH2 0x2FD8 PUSH2 0x2F6E JUMP JUMPDEST DUP2 PUSH1 0x40 MSTORE DUP4 DUP2 MSTORE DUP7 PUSH1 0x20 DUP6 DUP9 ADD ADD GT ISZERO PUSH2 0x2FF1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 PUSH1 0x20 DUP8 ADD PUSH1 0x20 DUP4 ADD CALLDATACOPY PUSH1 0x0 PUSH1 0x20 DUP6 DUP4 ADD ADD MSTORE DUP1 SWAP5 POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0xA0 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x3029 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x3032 DUP7 PUSH2 0x2DC0 JUMP JUMPDEST SWAP5 POP PUSH1 0x20 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x304F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x305B DUP10 DUP4 DUP11 ADD PUSH2 0x2F84 JUMP JUMPDEST SWAP6 POP PUSH1 0x40 DUP9 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x3071 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x307D DUP10 DUP4 DUP11 ADD PUSH2 0x2F84 JUMP JUMPDEST SWAP5 POP PUSH1 0x60 DUP9 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x3093 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x30A0 DUP9 DUP3 DUP10 ADD PUSH2 0x2F84 JUMP JUMPDEST SWAP6 SWAP9 SWAP5 SWAP8 POP SWAP3 SWAP6 PUSH1 0x80 ADD CALLDATALOAD SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x30C5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x30CE DUP4 PUSH2 0x2DC0 JUMP JUMPDEST SWAP5 PUSH1 0x20 SWAP4 SWAP1 SWAP4 ADD CALLDATALOAD SWAP4 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x30F1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x30FA DUP5 PUSH2 0x2DC0 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP5 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x3116 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x3122 DUP7 DUP3 DUP8 ADD PUSH2 0x2F84 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 DUP5 ADD CALLDATALOAD SWAP1 POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE DUP3 MLOAD DUP3 DUP3 ADD DUP2 SWAP1 MSTORE PUSH1 0x0 SWAP2 SWAP1 DUP5 DUP3 ADD SWAP1 PUSH1 0x40 DUP6 ADD SWAP1 DUP5 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x3174 JUMPI DUP4 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE SWAP3 DUP5 ADD SWAP3 SWAP2 DUP5 ADD SWAP2 PUSH1 0x1 ADD PUSH2 0x314F JUMP JUMPDEST POP SWAP1 SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x80 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x3196 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x319F DUP6 PUSH2 0x2DC0 JUMP JUMPDEST SWAP4 POP PUSH1 0x20 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x31BC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x31C8 DUP9 DUP4 DUP10 ADD PUSH2 0x2F84 JUMP JUMPDEST SWAP5 POP PUSH1 0x40 DUP8 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x31DE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x31EB DUP8 DUP3 DUP9 ADD PUSH2 0x2F84 JUMP JUMPDEST SWAP5 SWAP8 SWAP4 SWAP7 POP SWAP4 SWAP5 PUSH1 0x60 ADD CALLDATALOAD SWAP4 POP POP POP JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST DUP1 DUP3 ADD DUP1 DUP3 GT ISZERO PUSH2 0x1795 JUMPI PUSH2 0x1795 PUSH2 0x31FC JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST DUP2 DUP2 SUB DUP2 DUP2 GT ISZERO PUSH2 0x1795 JUMPI PUSH2 0x1795 PUSH2 0x31FC JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 DUP3 ADD PUSH2 0x3260 JUMPI PUSH2 0x3260 PUSH2 0x31FC JUMP JUMPDEST POP PUSH1 0x1 ADD SWAP1 JUMP JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH2 0x327B JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x329B JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0x1F6A JUMPI PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP2 ADD PUSH1 0x20 DUP7 LT ISZERO PUSH2 0x32C8 JUMPI POP DUP1 JUMPDEST PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP3 ADD SWAP2 POP JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x32E7 JUMPI DUP3 DUP2 SSTORE PUSH1 0x1 ADD PUSH2 0x32D4 JUMP JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x3309 JUMPI PUSH2 0x3309 PUSH2 0x2F6E JUMP JUMPDEST PUSH2 0x331D DUP2 PUSH2 0x3317 DUP5 SLOAD PUSH2 0x3267 JUMP JUMPDEST DUP5 PUSH2 0x32A1 JUMP JUMPDEST PUSH1 0x20 DUP1 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0x3352 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0x333A JUMPI POP DUP6 DUP4 ADD MLOAD JUMPDEST PUSH1 0x0 NOT PUSH1 0x3 DUP7 SWAP1 SHL SHR NOT AND PUSH1 0x1 DUP6 SWAP1 SHL OR DUP6 SSTORE PUSH2 0x32E7 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F NOT DUP7 AND SWAP2 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x3381 JUMPI DUP9 DUP7 ADD MLOAD DUP3 SSTORE SWAP5 DUP5 ADD SWAP5 PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 DUP5 ADD PUSH2 0x3362 JUMP JUMPDEST POP DUP6 DUP3 LT ISZERO PUSH2 0x339F JUMPI DUP8 DUP6 ADD MLOAD PUSH1 0x0 NOT PUSH1 0x3 DUP9 SWAP1 SHL PUSH1 0xF8 AND SHR NOT AND DUP2 SSTORE JUMPDEST POP POP POP POP POP PUSH1 0x1 SWAP1 DUP2 SHL ADD SWAP1 SSTORE POP JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x31 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST DUP1 DUP3 MUL DUP2 ISZERO DUP3 DUP3 DIV DUP5 EQ OR PUSH2 0x1795 JUMPI PUSH2 0x1795 PUSH2 0x31FC JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x24 SWAP1 DUP3 ADD MSTORE PUSH32 0x4F7267616E697A6174696F6E206164647265737320646F6573206E6F74206578 PUSH1 0x40 DUP3 ADD MSTORE PUSH4 0x69737421 PUSH1 0xE0 SHL PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x3A SWAP1 DUP3 ADD MSTORE PUSH32 0x566F746572206F7267616E697A6174696F6E206973206E6F7420766572696669 PUSH1 0x40 DUP3 ADD MSTORE PUSH32 0x65642C206E6F74207065726D697474656420746F20766F746521000000000000 PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x2E SWAP1 DUP3 ADD MSTORE PUSH32 0x566F746572206F7267616E697A6174696F6E2063616E6E6F7420766F7465206D PUSH1 0x40 DUP3 ADD MSTORE PUSH14 0x6F7265207468616E206F6E636521 PUSH1 0x90 SHL PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xDA 0xA6 0xAF OR DUP15 SHL CALLDATASIZE 0xD9 PUSH9 0x1B3304DA3C4EE706CA SHL EXTCODEHASH DIFFICULTY SWAP5 RETURN DUP1 0x2E 0x4D SWAP10 0xE ADDRESS SWAP2 STATICCALL CALLDATALOAD PUSH5 0x736F6C6343 STOP ADDMOD GT STOP CALLER ", + "sourceMap": "96:14609:1:-:0;;;1192:1:0;1167:26;;962:16:1;;;;;;;;;-1:-1:-1;1380:5:0;:18;;-1:-1:-1;;;;;;1380:18:0;1388:10;1380:18;;;;;;1432:10;1409:20;:33;1380:5;1453:20;:24;;;1488:68;;;;;;;;;;;-1:-1:-1;;;1488:68:0;;;;;;;;;;;;;;;;;;-1:-1:-1;;;1488:68:0;;;;;;;;;;;;;;;-1:-1:-1;;;1488:68:0;;;;;;1388:10;1488:68;;1540:15;1488:11;:68::i;:::-;1581:10;1567:13;:25;;;;;;;;;;:45;;:52;;-1:-1:-1;;1567:52:0;1615:4;1567:52;;;96:14609:1;;7704:885:0;-1:-1:-1;;;;;7949:35:0;;:13;:35;;;;;;;;;;:52;;;:57;7927:139;;;;-1:-1:-1;;;7927:139:0;;216:2:2;7927:139:0;;;198:21:2;;;235:18;;;228:30;294:34;274:18;;;267:62;346:18;;7927:139:0;;;;;;;;-1:-1:-1;;;;;8079:35:0;;:13;:35;;;;;;;;;;:70;;-1:-1:-1;;;;;;8079:70:0;;;;;;;8160:40;:60;8203:17;8160:40;:60;:::i;:::-;-1:-1:-1;;;;;;8231:35:0;;:13;:35;;;;;;;;;;:43;;:58;8277:12;8231:43;:58;:::i;:::-;-1:-1:-1;;;;;;8300:35:0;;:13;:35;;;;;;;;;;:40;;:54;8343:11;8300:40;:54;:::i;:::-;-1:-1:-1;8420:13:0;:4;8427:6;8420:13;:::i;:::-;-1:-1:-1;;;;;8365:35:0;;:13;:35;;;;;;;;;;:52;;:68;8488:34;8379:20;8488:12;:34::i;:::-;:36;;8523:1;8488:36;:::i;:::-;-1:-1:-1;;;;;8444:35:0;;;:13;:35;;;;;;;;;;:41;;:80;;;;8535:19;:46;;;;;;;;;;;;;;;-1:-1:-1;;;;;;8535:46:0;;;;;;;-1:-1:-1;;;;7704:885:0:o;2693:209::-;-1:-1:-1;;;;;2644:23:0;;2754:7;2644:23;;;;;;;;;;:33;;;;2415:31;;;;;2794:18;;:58;;2415:31;2794:58;:::i;:::-;:100;;;;:::i;:::-;2774:120;2693:209;-1:-1:-1;;2693:209:0:o;375:127:2:-;436:10;431:3;427:20;424:1;417:31;467:4;464:1;457:15;491:4;488:1;481:15;507:380;586:1;582:12;;;;629;;;650:61;;704:4;696:6;692:17;682:27;;650:61;757:2;749:6;746:14;726:18;723:38;720:161;;803:10;798:3;794:20;791:1;784:31;838:4;835:1;828:15;866:4;863:1;856:15;720:161;;507:380;;;:::o;1018:545::-;1120:2;1115:3;1112:11;1109:448;;;1156:1;1181:5;1177:2;1170:17;1226:4;1222:2;1212:19;1296:2;1284:10;1280:19;1277:1;1273:27;1267:4;1263:38;1332:4;1320:10;1317:20;1314:47;;;-1:-1:-1;1355:4:2;1314:47;1410:2;1405:3;1401:12;1398:1;1394:20;1388:4;1384:31;1374:41;;1465:82;1483:2;1476:5;1473:13;1465:82;;;1528:17;;;1509:1;1498:13;1465:82;;;1469:3;;;1109:448;1018:545;;;:::o;1739:1352::-;1859:10;;-1:-1:-1;;;;;1881:30:2;;1878:56;;;1914:18;;:::i;:::-;1943:97;2033:6;1993:38;2025:4;2019:11;1993:38;:::i;:::-;1987:4;1943:97;:::i;:::-;2095:4;;2159:2;2148:14;;2176:1;2171:663;;;;2878:1;2895:6;2892:89;;;-1:-1:-1;2947:19:2;;;2941:26;2892:89;-1:-1:-1;;1696:1:2;1692:11;;;1688:24;1684:29;1674:40;1720:1;1716:11;;;1671:57;2994:81;;2141:944;;2171:663;965:1;958:14;;;1002:4;989:18;;-1:-1:-1;;2207:20:2;;;2325:236;2339:7;2336:1;2333:14;2325:236;;;2428:19;;;2422:26;2407:42;;2520:27;;;;2488:1;2476:14;;;;2355:19;;2325:236;;;2329:3;2589:6;2580:7;2577:19;2574:201;;;2650:19;;;2644:26;-1:-1:-1;;2733:1:2;2729:14;;;2745:3;2725:24;2721:37;2717:42;2702:58;2687:74;;2574:201;-1:-1:-1;;;;;2821:1:2;2805:14;;;2801:22;2788:36;;-1:-1:-1;1739:1352:2:o;3096:127::-;3157:10;3152:3;3148:20;3145:1;3138:31;3188:4;3185:1;3178:15;3212:4;3209:1;3202:15;3228:125;3293:9;;;3314:10;;;3311:36;;;3327:18;;:::i;3358:128::-;3425:9;;;3446:11;;;3443:37;;;3460:18;;:::i;3358:128::-;96:14609:1;;;;;;" + }, + "deployedBytecode": { + "functionDebugData": { + "@RemoveCharityIfFinancialReportFraud_2036": { + "entryPoint": 5424, + "id": 2036, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@RemoveCharityIfFraud_1690": { + "entryPoint": 9087, + "id": 1690, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@_2040": { + "entryPoint": null, + "id": 2040, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@_2044": { + "entryPoint": null, + "id": 2044, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@admin_85": { + "entryPoint": null, + "id": 85, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@changeIsStakedPaid_173": { + "entryPoint": null, + "id": 173, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@checkFinancialReportStatus_1830": { + "entryPoint": 7459, + "id": 1830, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@checkIfDownvoted_261": { + "entryPoint": 4973, + "id": 261, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@checkIfUpvoted_239": { + "entryPoint": 9930, + "id": 239, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@checkVerificationStatus_778": { + "entryPoint": 7200, + "id": 778, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@checkViolationStatus_1486": { + "entryPoint": 7277, + "id": 1486, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@countOfDownvotes_199": { + "entryPoint": null, + "id": 199, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@countOfUpvotes_186": { + "entryPoint": null, + "id": 186, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@countOfViews_217": { + "entryPoint": 10457, + "id": 217, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@cutStakeOfNotVoted_1250": { + "entryPoint": 9762, + "id": 1250, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@distributeStake_1099": { + "entryPoint": 2496, + "id": 1099, + "parameterSlots": 2, + "returnSlots": 0 + }, + "@downVote_754": { + "entryPoint": 11045, + "id": 754, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@emptyListOrganization_517": { + "entryPoint": 8047, + "id": 517, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@emptyNotVotedArray_1332": { + "entryPoint": 7641, + "id": 1332, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@isStaked_161": { + "entryPoint": null, + "id": 161, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@isVerified_149": { + "entryPoint": null, + "id": 149, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@markAsVerified_1122": { + "entryPoint": 7099, + "id": 1122, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@notVoted_1217": { + "entryPoint": 8274, + "id": 1217, + "parameterSlots": 1, + "returnSlots": 1 + }, + "@registerFinancialReport_1731": { + "entryPoint": 6043, + "id": 1731, + "parameterSlots": 3, + "returnSlots": 0 + }, + "@registerOrg_650": { + "entryPoint": 5018, + "id": 650, + "parameterSlots": 5, + "returnSlots": 0 + }, + "@registerViolation_1387": { + "entryPoint": 8900, + "id": 1387, + "parameterSlots": 4, + "returnSlots": 0 + }, + "@reportUpVote_1758": { + "entryPoint": 9654, + "id": 1758, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@reportsDownVote_1785": { + "entryPoint": 2384, + "id": 1785, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@totalOrganizations_90": { + "entryPoint": null, + "id": 90, + "parameterSlots": 0, + "returnSlots": 0 + }, + "@unverifiedOrganizationsList_491": { + "entryPoint": 4061, + "id": 491, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@upVote_703": { + "entryPoint": 9975, + "id": 703, + "parameterSlots": 2, + "returnSlots": 1 + }, + "@upvotedOnFinancialReport_1920": { + "entryPoint": 10515, + "id": 1920, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@upvotedOnVerify_1574": { + "entryPoint": 1852, + "id": 1574, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@verifiedOrganizationsList_380": { + "entryPoint": 6308, + "id": 380, + "parameterSlots": 0, + "returnSlots": 1 + }, + "@violationDownVote_1441": { + "entryPoint": 1740, + "id": 1441, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@violationUpVote_1414": { + "entryPoint": 6196, + "id": 1414, + "parameterSlots": 1, + "returnSlots": 0 + }, + "@votingDone_284": { + "entryPoint": 5990, + "id": 284, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_address": { + "entryPoint": 11712, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_decode_string": { + "entryPoint": 12164, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_address": { + "entryPoint": 11740, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_decode_tuple_t_addresst_bool": { + "entryPoint": 11774, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_decode_tuple_t_addresst_string_memory_ptrt_string_memory_ptrt_string_memory_ptrt_uint256": { + "entryPoint": 12305, + "id": null, + "parameterSlots": 2, + "returnSlots": 5 + }, + "abi_decode_tuple_t_addresst_string_memory_ptrt_string_memory_ptrt_uint256": { + "entryPoint": 12672, + "id": null, + "parameterSlots": 2, + "returnSlots": 4 + }, + "abi_decode_tuple_t_addresst_string_memory_ptrt_uint256": { + "entryPoint": 12508, + "id": null, + "parameterSlots": 2, + "returnSlots": 3 + }, + "abi_decode_tuple_t_addresst_uint256": { + "entryPoint": 12466, + "id": null, + "parameterSlots": 2, + "returnSlots": 2 + }, + "abi_encode_address": { + "entryPoint": null, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_bool": { + "entryPoint": null, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "abi_encode_string": { + "entryPoint": 11834, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_address__to_t_address__fromStack_reversed": { + "entryPoint": null, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_array$_t_address_$dyn_memory_ptr__to_t_array$_t_address_$dyn_memory_ptr__fromStack_reversed": { + "entryPoint": 12595, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr__fromStack_reversed": { + "entryPoint": 11904, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed": { + "entryPoint": null, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": null, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_414be5daad95c532f9b7381e52ffca6776b0449e47c566018321a361a4b95d16__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 13437, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_53664b562d96b321f827bfb375320c905b5c20116fabd3735d276655e7a84701__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": null, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_a8c8730adc0a679cd4a5e2b2364d02c0d62620d7a5cf6d44281730f36a7832c1__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 13344, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_stringliteral_ddeb0b25a32bdbd6903219d580ec164d518abe435832e90b114c90315c52a2cf__to_t_string_memory_ptr__fromStack_reversed": { + "entryPoint": 13276, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed": { + "entryPoint": null, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "array_dataslot_string_storage": { + "entryPoint": null, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "checked_add_t_uint256": { + "entryPoint": 12818, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "checked_mul_t_uint256": { + "entryPoint": 13253, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "checked_sub_t_uint256": { + "entryPoint": 12859, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "clean_up_bytearray_end_slots_string_storage": { + "entryPoint": 12961, + "id": null, + "parameterSlots": 3, + "returnSlots": 0 + }, + "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage": { + "entryPoint": 13039, + "id": null, + "parameterSlots": 2, + "returnSlots": 0 + }, + "extract_byte_array_length": { + "entryPoint": 12903, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "extract_used_part_and_set_length_of_short_byte_array": { + "entryPoint": null, + "id": null, + "parameterSlots": 2, + "returnSlots": 1 + }, + "increment_t_uint256": { + "entryPoint": 12878, + "id": null, + "parameterSlots": 1, + "returnSlots": 1 + }, + "panic_error_0x11": { + "entryPoint": 12796, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x31": { + "entryPoint": 13231, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x32": { + "entryPoint": 12837, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + }, + "panic_error_0x41": { + "entryPoint": 12142, + "id": null, + "parameterSlots": 0, + "returnSlots": 0 + } + }, + "generatedSources": [ + { + "ast": { + "nodeType": "YulBlock", + "src": "0:13274:2", + "statements": [ + { + "nodeType": "YulBlock", + "src": "6:3:2", + "statements": [] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "63:124:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "73:29:2", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "95:6:2" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "82:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "82:20:2" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "73:5:2" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "165:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "174:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "177:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "167:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "167:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "167:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "124:5:2" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "135:5:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "150:3:2", + "type": "", + "value": "160" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "155:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "146:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "146:11:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "159:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "142:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "142:19:2" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "131:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "131:31:2" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "121:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "121:42:2" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "114:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "114:50:2" + }, + "nodeType": "YulIf", + "src": "111:70:2" + } + ] + }, + "name": "abi_decode_address", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "42:6:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "53:5:2", + "type": "" + } + ], + "src": "14:173:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "262:116:2", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "308:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "317:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "320:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "310:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "310:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "310:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "283:7:2" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "292:9:2" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "279:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "279:23:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "304:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "275:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "275:32:2" + }, + "nodeType": "YulIf", + "src": "272:52:2" + }, + { + "nodeType": "YulAssignment", + "src": "333:39:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "362:9:2" + } + ], + "functionName": { + "name": "abi_decode_address", + "nodeType": "YulIdentifier", + "src": "343:18:2" + }, + "nodeType": "YulFunctionCall", + "src": "343:29:2" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "333:6:2" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_address", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "228:9:2", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "239:7:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "251:6:2", + "type": "" + } + ], + "src": "192:186:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "467:263:2", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "513:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "522:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "525:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "515:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "515:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "515:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "488:7:2" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "497:9:2" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "484:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "484:23:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "509:2:2", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "480:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "480:32:2" + }, + "nodeType": "YulIf", + "src": "477:52:2" + }, + { + "nodeType": "YulAssignment", + "src": "538:39:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "567:9:2" + } + ], + "functionName": { + "name": "abi_decode_address", + "nodeType": "YulIdentifier", + "src": "548:18:2" + }, + "nodeType": "YulFunctionCall", + "src": "548:29:2" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "538:6:2" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "586:45:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "616:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "627:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "612:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "612:18:2" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "599:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "599:32:2" + }, + "variables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "590:5:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "684:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "693:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "696:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "686:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "686:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "686:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "653:5:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "674:5:2" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "667:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "667:13:2" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "660:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "660:21:2" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "650:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "650:32:2" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "643:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "643:40:2" + }, + "nodeType": "YulIf", + "src": "640:60:2" + }, + { + "nodeType": "YulAssignment", + "src": "709:15:2", + "value": { + "name": "value", + "nodeType": "YulIdentifier", + "src": "719:5:2" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "709:6:2" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_bool", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "425:9:2", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "436:7:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "448:6:2", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "456:6:2", + "type": "" + } + ], + "src": "383:347:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "779:60:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "796:3:2" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "805:5:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "820:3:2", + "type": "", + "value": "160" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "825:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "816:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "816:11:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "829:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "812:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "812:19:2" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "801:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "801:31:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "789:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "789:44:2" + }, + "nodeType": "YulExpressionStatement", + "src": "789:44:2" + } + ] + }, + "name": "abi_encode_address", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "763:5:2", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "770:3:2", + "type": "" + } + ], + "src": "735:104:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "894:373:2", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "904:26:2", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "924:5:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "918:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "918:12:2" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "908:6:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "946:3:2" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "951:6:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "939:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "939:19:2" + }, + "nodeType": "YulExpressionStatement", + "src": "939:19:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "967:10:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "976:1:2", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "971:1:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1038:110:2", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "1052:14:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1062:4:2", + "type": "", + "value": "0x20" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "1056:2:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "1094:3:2" + }, + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "1099:1:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1090:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1090:11:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1103:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1086:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1086:20:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "1122:5:2" + }, + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "1129:1:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1118:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1118:13:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1133:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1114:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1114:22:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "1108:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "1108:29:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1079:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "1079:59:2" + }, + "nodeType": "YulExpressionStatement", + "src": "1079:59:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "997:1:2" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1000:6:2" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "994:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "994:13:2" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "1008:21:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "1010:17:2", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "1019:1:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1022:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1015:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1015:12:2" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "1010:1:2" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "990:3:2", + "statements": [] + }, + "src": "986:162:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "1172:3:2" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1177:6:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1168:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1168:16:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1186:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1164:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1164:27:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1193:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1157:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "1157:38:2" + }, + "nodeType": "YulExpressionStatement", + "src": "1157:38:2" + }, + { + "nodeType": "YulAssignment", + "src": "1204:57:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "1219:3:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1232:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1240:2:2", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1228:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1228:15:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1249:2:2", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "1245:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1245:7:2" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "1224:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1224:29:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1215:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1215:39:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1256:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1211:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1211:50:2" + }, + "variableNames": [ + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "1204:3:2" + } + ] + } + ] + }, + "name": "abi_encode_string", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "871:5:2", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "878:3:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "end", + "nodeType": "YulTypedName", + "src": "886:3:2", + "type": "" + } + ], + "src": "844:423:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1313:50:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "1330:3:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "1349:5:2" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "1342:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "1342:13:2" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "1335:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "1335:21:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1323:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "1323:34:2" + }, + "nodeType": "YulExpressionStatement", + "src": "1323:34:2" + } + ] + }, + "name": "abi_encode_bool", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "1297:5:2", + "type": "" + }, + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "1304:3:2", + "type": "" + } + ], + "src": "1272:91:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1571:1761:2", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "1581:12:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1591:2:2", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "1585:2:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1602:32:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1620:9:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1631:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1616:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1616:18:2" + }, + "variables": [ + { + "name": "tail_1", + "nodeType": "YulTypedName", + "src": "1606:6:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1650:9:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1661:2:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1643:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "1643:21:2" + }, + "nodeType": "YulExpressionStatement", + "src": "1643:21:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1673:17:2", + "value": { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "1684:6:2" + }, + "variables": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "1677:3:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1699:27:2", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "1719:6:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "1713:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "1713:13:2" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "1703:6:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "1742:6:2" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1750:6:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "1735:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "1735:22:2" + }, + "nodeType": "YulExpressionStatement", + "src": "1735:22:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1766:12:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1776:2:2", + "type": "", + "value": "64" + }, + "variables": [ + { + "name": "_2", + "nodeType": "YulTypedName", + "src": "1770:2:2", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "1787:25:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1798:9:2" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "1809:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1794:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1794:18:2" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "1787:3:2" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1821:53:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "1843:9:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1858:1:2", + "type": "", + "value": "5" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1861:6:2" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "1854:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1854:14:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1839:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1839:30:2" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "1871:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1835:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1835:39:2" + }, + "variables": [ + { + "name": "tail_2", + "nodeType": "YulTypedName", + "src": "1825:6:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1883:29:2", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "1901:6:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "1909:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1897:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1897:15:2" + }, + "variables": [ + { + "name": "srcPtr", + "nodeType": "YulTypedName", + "src": "1887:6:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "1921:10:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1930:1:2", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "1925:1:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "1989:1314:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "2010:3:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "2023:6:2" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "2031:9:2" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "2019:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2019:22:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2047:2:2", + "type": "", + "value": "63" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "2043:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2043:7:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2015:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2015:36:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "2003:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "2003:49:2" + }, + "nodeType": "YulExpressionStatement", + "src": "2003:49:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2065:23:2", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "2081:6:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "2075:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "2075:13:2" + }, + "variables": [ + { + "name": "_3", + "nodeType": "YulTypedName", + "src": "2069:2:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2101:16:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2111:6:2", + "type": "", + "value": "0x0120" + }, + "variables": [ + { + "name": "_4", + "nodeType": "YulTypedName", + "src": "2105:2:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "2155:2:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "2149:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "2149:9:2" + }, + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "2160:6:2" + } + ], + "functionName": { + "name": "abi_encode_address", + "nodeType": "YulIdentifier", + "src": "2130:18:2" + }, + "nodeType": "YulFunctionCall", + "src": "2130:37:2" + }, + "nodeType": "YulExpressionStatement", + "src": "2130:37:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2180:38:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "2210:2:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "2214:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2206:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2206:11:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "2200:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "2200:18:2" + }, + "variables": [ + { + "name": "memberValue0", + "nodeType": "YulTypedName", + "src": "2184:12:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "2242:6:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "2250:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2238:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2238:15:2" + }, + { + "name": "_4", + "nodeType": "YulIdentifier", + "src": "2255:2:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "2231:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "2231:27:2" + }, + "nodeType": "YulExpressionStatement", + "src": "2231:27:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2271:62:2", + "value": { + "arguments": [ + { + "name": "memberValue0", + "nodeType": "YulIdentifier", + "src": "2303:12:2" + }, + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "2321:6:2" + }, + { + "name": "_4", + "nodeType": "YulIdentifier", + "src": "2329:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2317:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2317:15:2" + } + ], + "functionName": { + "name": "abi_encode_string", + "nodeType": "YulIdentifier", + "src": "2285:17:2" + }, + "nodeType": "YulFunctionCall", + "src": "2285:48:2" + }, + "variables": [ + { + "name": "tail_3", + "nodeType": "YulTypedName", + "src": "2275:6:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2346:40:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "2378:2:2" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "2382:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2374:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2374:11:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "2368:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "2368:18:2" + }, + "variables": [ + { + "name": "memberValue0_1", + "nodeType": "YulTypedName", + "src": "2350:14:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "2410:6:2" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "2418:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2406:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2406:15:2" + }, + { + "arguments": [ + { + "name": "tail_3", + "nodeType": "YulIdentifier", + "src": "2427:6:2" + }, + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "2435:6:2" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "2423:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2423:19:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "2399:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "2399:44:2" + }, + "nodeType": "YulExpressionStatement", + "src": "2399:44:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2456:55:2", + "value": { + "arguments": [ + { + "name": "memberValue0_1", + "nodeType": "YulIdentifier", + "src": "2488:14:2" + }, + { + "name": "tail_3", + "nodeType": "YulIdentifier", + "src": "2504:6:2" + } + ], + "functionName": { + "name": "abi_encode_string", + "nodeType": "YulIdentifier", + "src": "2470:17:2" + }, + "nodeType": "YulFunctionCall", + "src": "2470:41:2" + }, + "variables": [ + { + "name": "tail_4", + "nodeType": "YulTypedName", + "src": "2460:6:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2524:14:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2534:4:2", + "type": "", + "value": "0x60" + }, + "variables": [ + { + "name": "_5", + "nodeType": "YulTypedName", + "src": "2528:2:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "2562:6:2" + }, + { + "name": "_5", + "nodeType": "YulIdentifier", + "src": "2570:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2558:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2558:15:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "2585:2:2" + }, + { + "name": "_5", + "nodeType": "YulIdentifier", + "src": "2589:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2581:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2581:11:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "2575:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "2575:18:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "2551:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "2551:43:2" + }, + "nodeType": "YulExpressionStatement", + "src": "2551:43:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2607:14:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2617:4:2", + "type": "", + "value": "0x80" + }, + "variables": [ + { + "name": "_6", + "nodeType": "YulTypedName", + "src": "2611:2:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "2645:6:2" + }, + { + "name": "_6", + "nodeType": "YulIdentifier", + "src": "2653:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2641:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2641:15:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "2668:2:2" + }, + { + "name": "_6", + "nodeType": "YulIdentifier", + "src": "2672:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2664:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2664:11:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "2658:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "2658:18:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "2634:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "2634:43:2" + }, + "nodeType": "YulExpressionStatement", + "src": "2634:43:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2690:14:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2700:4:2", + "type": "", + "value": "0xa0" + }, + "variables": [ + { + "name": "_7", + "nodeType": "YulTypedName", + "src": "2694:2:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "2728:6:2" + }, + { + "name": "_7", + "nodeType": "YulIdentifier", + "src": "2736:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2724:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2724:15:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "2751:2:2" + }, + { + "name": "_7", + "nodeType": "YulIdentifier", + "src": "2755:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2747:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2747:11:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "2741:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "2741:18:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "2717:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "2717:43:2" + }, + "nodeType": "YulExpressionStatement", + "src": "2717:43:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2773:14:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2783:4:2", + "type": "", + "value": "0xc0" + }, + "variables": [ + { + "name": "_8", + "nodeType": "YulTypedName", + "src": "2777:2:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2800:40:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "2832:2:2" + }, + { + "name": "_8", + "nodeType": "YulIdentifier", + "src": "2836:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2828:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2828:11:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "2822:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "2822:18:2" + }, + "variables": [ + { + "name": "memberValue0_2", + "nodeType": "YulTypedName", + "src": "2804:14:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "memberValue0_2", + "nodeType": "YulIdentifier", + "src": "2869:14:2" + }, + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "2889:6:2" + }, + { + "name": "_8", + "nodeType": "YulIdentifier", + "src": "2897:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2885:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2885:15:2" + } + ], + "functionName": { + "name": "abi_encode_bool", + "nodeType": "YulIdentifier", + "src": "2853:15:2" + }, + "nodeType": "YulFunctionCall", + "src": "2853:48:2" + }, + "nodeType": "YulExpressionStatement", + "src": "2853:48:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2914:14:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "2924:4:2", + "type": "", + "value": "0xe0" + }, + "variables": [ + { + "name": "_9", + "nodeType": "YulTypedName", + "src": "2918:2:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "2941:40:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "2973:2:2" + }, + { + "name": "_9", + "nodeType": "YulIdentifier", + "src": "2977:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "2969:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "2969:11:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "2963:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "2963:18:2" + }, + "variables": [ + { + "name": "memberValue0_3", + "nodeType": "YulTypedName", + "src": "2945:14:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "3005:6:2" + }, + { + "name": "_9", + "nodeType": "YulIdentifier", + "src": "3013:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3001:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3001:15:2" + }, + { + "arguments": [ + { + "name": "tail_4", + "nodeType": "YulIdentifier", + "src": "3022:6:2" + }, + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "3030:6:2" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "3018:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3018:19:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "2994:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "2994:44:2" + }, + "nodeType": "YulExpressionStatement", + "src": "2994:44:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3051:55:2", + "value": { + "arguments": [ + { + "name": "memberValue0_3", + "nodeType": "YulIdentifier", + "src": "3083:14:2" + }, + { + "name": "tail_4", + "nodeType": "YulIdentifier", + "src": "3099:6:2" + } + ], + "functionName": { + "name": "abi_encode_string", + "nodeType": "YulIdentifier", + "src": "3065:17:2" + }, + "nodeType": "YulFunctionCall", + "src": "3065:41:2" + }, + "variables": [ + { + "name": "tail_5", + "nodeType": "YulTypedName", + "src": "3055:6:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3119:17:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3130:6:2", + "type": "", + "value": "0x0100" + }, + "variables": [ + { + "name": "_10", + "nodeType": "YulTypedName", + "src": "3123:3:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "3160:6:2" + }, + { + "name": "_10", + "nodeType": "YulIdentifier", + "src": "3168:3:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3156:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3156:16:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "3184:2:2" + }, + { + "name": "_10", + "nodeType": "YulIdentifier", + "src": "3188:3:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3180:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3180:12:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "3174:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "3174:19:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "3149:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "3149:45:2" + }, + "nodeType": "YulExpressionStatement", + "src": "3149:45:2" + }, + { + "nodeType": "YulAssignment", + "src": "3207:16:2", + "value": { + "name": "tail_5", + "nodeType": "YulIdentifier", + "src": "3217:6:2" + }, + "variableNames": [ + { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "3207:6:2" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3236:25:2", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "3250:6:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "3258:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3246:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3246:15:2" + }, + "variableNames": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "3236:6:2" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "3274:19:2", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "3285:3:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "3290:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3281:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3281:12:2" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "3274:3:2" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "1951:1:2" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "1954:6:2" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "1948:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "1948:13:2" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "1962:18:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "1964:14:2", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "1973:1:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "1976:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "1969:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "1969:9:2" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "1964:1:2" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "1944:3:2", + "statements": [] + }, + "src": "1940:1363:2" + }, + { + "nodeType": "YulAssignment", + "src": "3312:14:2", + "value": { + "name": "tail_2", + "nodeType": "YulIdentifier", + "src": "3320:6:2" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "3312:4:2" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "1540:9:2", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "1551:6:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "1562:4:2", + "type": "" + } + ], + "src": "1368:1964:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3432:92:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "3442:26:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3454:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3465:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3450:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3450:18:2" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "3442:4:2" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "3484:9:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "3509:6:2" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "3502:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "3502:14:2" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "3495:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "3495:22:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "3477:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "3477:41:2" + }, + "nodeType": "YulExpressionStatement", + "src": "3477:41:2" + } + ] + }, + "name": "abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "3401:9:2", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "3412:6:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "3423:4:2", + "type": "" + } + ], + "src": "3337:187:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3561:95:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3578:1:2", + "type": "", + "value": "0" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3585:3:2", + "type": "", + "value": "224" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3590:10:2", + "type": "", + "value": "0x4e487b71" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "3581:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3581:20:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "3571:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "3571:31:2" + }, + "nodeType": "YulExpressionStatement", + "src": "3571:31:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3618:1:2", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3621:4:2", + "type": "", + "value": "0x41" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "3611:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "3611:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "3611:15:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3642:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3645:4:2", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "3635:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "3635:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "3635:15:2" + } + ] + }, + "name": "panic_error_0x41", + "nodeType": "YulFunctionDefinition", + "src": "3529:127:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3714:666:2", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "3763:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3772:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3775:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "3765:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "3765:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "3765:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "3742:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3750:4:2", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3738:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3738:17:2" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "3757:3:2" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "3734:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3734:27:2" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "3727:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "3727:35:2" + }, + "nodeType": "YulIf", + "src": "3724:55:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3788:30:2", + "value": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "3811:6:2" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "3798:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "3798:20:2" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "3792:2:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3827:28:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3837:18:2", + "type": "", + "value": "0xffffffffffffffff" + }, + "variables": [ + { + "name": "_2", + "nodeType": "YulTypedName", + "src": "3831:2:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "3878:22:2", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "3880:16:2" + }, + "nodeType": "YulFunctionCall", + "src": "3880:18:2" + }, + "nodeType": "YulExpressionStatement", + "src": "3880:18:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "3870:2:2" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "3874:2:2" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "3867:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "3867:10:2" + }, + "nodeType": "YulIf", + "src": "3864:36:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3909:17:2", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3923:2:2", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "3919:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3919:7:2" + }, + "variables": [ + { + "name": "_3", + "nodeType": "YulTypedName", + "src": "3913:2:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3935:23:2", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "3955:2:2", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "3949:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "3949:9:2" + }, + "variables": [ + { + "name": "memPtr", + "nodeType": "YulTypedName", + "src": "3939:6:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "3967:71:2", + "value": { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "3989:6:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "4013:2:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4017:4:2", + "type": "", + "value": "0x1f" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4009:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "4009:13:2" + }, + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "4024:2:2" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "4005:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "4005:22:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4029:2:2", + "type": "", + "value": "63" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4001:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "4001:31:2" + }, + { + "name": "_3", + "nodeType": "YulIdentifier", + "src": "4034:2:2" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "3997:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3997:40:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "3985:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "3985:53:2" + }, + "variables": [ + { + "name": "newFreePtr", + "nodeType": "YulTypedName", + "src": "3971:10:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4097:22:2", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "4099:16:2" + }, + "nodeType": "YulFunctionCall", + "src": "4099:18:2" + }, + "nodeType": "YulExpressionStatement", + "src": "4099:18:2" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "4056:10:2" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "4068:2:2" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "4053:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "4053:18:2" + }, + { + "arguments": [ + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "4076:10:2" + }, + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "4088:6:2" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "4073:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "4073:22:2" + } + ], + "functionName": { + "name": "or", + "nodeType": "YulIdentifier", + "src": "4050:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "4050:46:2" + }, + "nodeType": "YulIf", + "src": "4047:72:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4135:2:2", + "type": "", + "value": "64" + }, + { + "name": "newFreePtr", + "nodeType": "YulIdentifier", + "src": "4139:10:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "4128:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "4128:22:2" + }, + "nodeType": "YulExpressionStatement", + "src": "4128:22:2" + }, + { + "expression": { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "4166:6:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "4174:2:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "4159:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "4159:18:2" + }, + "nodeType": "YulExpressionStatement", + "src": "4159:18:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4225:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4234:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4237:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "4227:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "4227:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "4227:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "4200:6:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "4208:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4196:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "4196:15:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4213:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4192:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "4192:26:2" + }, + { + "name": "end", + "nodeType": "YulIdentifier", + "src": "4220:3:2" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "4189:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "4189:35:2" + }, + "nodeType": "YulIf", + "src": "4186:55:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "4267:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4275:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4263:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "4263:17:2" + }, + { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "4286:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4294:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4282:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "4282:17:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "4301:2:2" + } + ], + "functionName": { + "name": "calldatacopy", + "nodeType": "YulIdentifier", + "src": "4250:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "4250:54:2" + }, + "nodeType": "YulExpressionStatement", + "src": "4250:54:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "4328:6:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "4336:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4324:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "4324:15:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4341:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4320:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "4320:26:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4348:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "4313:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "4313:37:2" + }, + "nodeType": "YulExpressionStatement", + "src": "4313:37:2" + }, + { + "nodeType": "YulAssignment", + "src": "4359:15:2", + "value": { + "name": "memPtr", + "nodeType": "YulIdentifier", + "src": "4368:6:2" + }, + "variableNames": [ + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "4359:5:2" + } + ] + } + ] + }, + "name": "abi_decode_string", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "3688:6:2", + "type": "" + }, + { + "name": "end", + "nodeType": "YulTypedName", + "src": "3696:3:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "array", + "nodeType": "YulTypedName", + "src": "3704:5:2", + "type": "" + } + ], + "src": "3661:719:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4553:719:2", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "4600:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4609:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4612:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "4602:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "4602:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "4602:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "4574:7:2" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4583:9:2" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "4570:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "4570:23:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4595:3:2", + "type": "", + "value": "160" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "4566:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "4566:33:2" + }, + "nodeType": "YulIf", + "src": "4563:53:2" + }, + { + "nodeType": "YulAssignment", + "src": "4625:39:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4654:9:2" + } + ], + "functionName": { + "name": "abi_decode_address", + "nodeType": "YulIdentifier", + "src": "4635:18:2" + }, + "nodeType": "YulFunctionCall", + "src": "4635:29:2" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "4625:6:2" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "4673:46:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4704:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4715:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4700:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "4700:18:2" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "4687:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "4687:32:2" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "4677:6:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "4728:28:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4738:18:2", + "type": "", + "value": "0xffffffffffffffff" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "4732:2:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4783:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4792:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4795:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "4785:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "4785:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "4785:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "4771:6:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "4779:2:2" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "4768:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "4768:14:2" + }, + "nodeType": "YulIf", + "src": "4765:34:2" + }, + { + "nodeType": "YulAssignment", + "src": "4808:60:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4840:9:2" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "4851:6:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4836:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "4836:22:2" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "4860:7:2" + } + ], + "functionName": { + "name": "abi_decode_string", + "nodeType": "YulIdentifier", + "src": "4818:17:2" + }, + "nodeType": "YulFunctionCall", + "src": "4818:50:2" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "4808:6:2" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "4877:48:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "4910:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4921:2:2", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "4906:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "4906:18:2" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "4893:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "4893:32:2" + }, + "variables": [ + { + "name": "offset_1", + "nodeType": "YulTypedName", + "src": "4881:8:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "4954:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4963:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "4966:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "4956:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "4956:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "4956:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "4940:8:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "4950:2:2" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "4937:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "4937:16:2" + }, + "nodeType": "YulIf", + "src": "4934:36:2" + }, + { + "nodeType": "YulAssignment", + "src": "4979:62:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5011:9:2" + }, + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "5022:8:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5007:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5007:24:2" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "5033:7:2" + } + ], + "functionName": { + "name": "abi_decode_string", + "nodeType": "YulIdentifier", + "src": "4989:17:2" + }, + "nodeType": "YulFunctionCall", + "src": "4989:52:2" + }, + "variableNames": [ + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "4979:6:2" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "5050:48:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5083:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5094:2:2", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5079:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5079:18:2" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "5066:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "5066:32:2" + }, + "variables": [ + { + "name": "offset_2", + "nodeType": "YulTypedName", + "src": "5054:8:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5127:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5136:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5139:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "5129:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "5129:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "5129:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset_2", + "nodeType": "YulIdentifier", + "src": "5113:8:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "5123:2:2" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "5110:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "5110:16:2" + }, + "nodeType": "YulIf", + "src": "5107:36:2" + }, + { + "nodeType": "YulAssignment", + "src": "5152:62:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5184:9:2" + }, + { + "name": "offset_2", + "nodeType": "YulIdentifier", + "src": "5195:8:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5180:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5180:24:2" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "5206:7:2" + } + ], + "functionName": { + "name": "abi_decode_string", + "nodeType": "YulIdentifier", + "src": "5162:17:2" + }, + "nodeType": "YulFunctionCall", + "src": "5162:52:2" + }, + "variableNames": [ + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "5152:6:2" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "5223:43:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5250:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5261:3:2", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5246:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5246:19:2" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "5233:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "5233:33:2" + }, + "variableNames": [ + { + "name": "value4", + "nodeType": "YulIdentifier", + "src": "5223:6:2" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_string_memory_ptrt_string_memory_ptrt_string_memory_ptrt_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "4487:9:2", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "4498:7:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "4510:6:2", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "4518:6:2", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "4526:6:2", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "4534:6:2", + "type": "" + }, + { + "name": "value4", + "nodeType": "YulTypedName", + "src": "4542:6:2", + "type": "" + } + ], + "src": "4385:887:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5364:167:2", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "5410:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5419:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5422:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "5412:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "5412:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "5412:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "5385:7:2" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5394:9:2" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "5381:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5381:23:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5406:2:2", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "5377:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5377:32:2" + }, + "nodeType": "YulIf", + "src": "5374:52:2" + }, + { + "nodeType": "YulAssignment", + "src": "5435:39:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5464:9:2" + } + ], + "functionName": { + "name": "abi_decode_address", + "nodeType": "YulIdentifier", + "src": "5445:18:2" + }, + "nodeType": "YulFunctionCall", + "src": "5445:29:2" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "5435:6:2" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "5483:42:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5510:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5521:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5506:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5506:18:2" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "5493:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "5493:32:2" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "5483:6:2" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "5322:9:2", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "5333:7:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "5345:6:2", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "5353:6:2", + "type": "" + } + ], + "src": "5277:254:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5650:350:2", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "5696:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5705:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5708:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "5698:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "5698:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "5698:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "5671:7:2" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5680:9:2" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "5667:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5667:23:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5692:2:2", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "5663:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5663:32:2" + }, + "nodeType": "YulIf", + "src": "5660:52:2" + }, + { + "nodeType": "YulAssignment", + "src": "5721:39:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5750:9:2" + } + ], + "functionName": { + "name": "abi_decode_address", + "nodeType": "YulIdentifier", + "src": "5731:18:2" + }, + "nodeType": "YulFunctionCall", + "src": "5731:29:2" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "5721:6:2" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "5769:46:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5800:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5811:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5796:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5796:18:2" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "5783:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "5783:32:2" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "5773:6:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "5858:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5867:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5870:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "5860:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "5860:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "5860:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "5830:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5838:18:2", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "5827:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "5827:30:2" + }, + "nodeType": "YulIf", + "src": "5824:50:2" + }, + { + "nodeType": "YulAssignment", + "src": "5883:60:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5915:9:2" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "5926:6:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5911:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5911:22:2" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "5935:7:2" + } + ], + "functionName": { + "name": "abi_decode_string", + "nodeType": "YulIdentifier", + "src": "5893:17:2" + }, + "nodeType": "YulFunctionCall", + "src": "5893:50:2" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "5883:6:2" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "5952:42:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "5979:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "5990:2:2", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "5975:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "5975:18:2" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "5962:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "5962:32:2" + }, + "variableNames": [ + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "5952:6:2" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_string_memory_ptrt_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "5600:9:2", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "5611:7:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "5623:6:2", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "5631:6:2", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "5639:6:2", + "type": "" + } + ], + "src": "5536:464:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6106:76:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "6116:26:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6128:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6139:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6124:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "6124:18:2" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "6116:4:2" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6158:9:2" + }, + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "6169:6:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "6151:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "6151:25:2" + }, + "nodeType": "YulExpressionStatement", + "src": "6151:25:2" + } + ] + }, + "name": "abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "6075:9:2", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "6086:6:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "6097:4:2", + "type": "" + } + ], + "src": "6005:177:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6338:507:2", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "6348:12:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6358:2:2", + "type": "", + "value": "32" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "6352:2:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "6369:32:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6387:9:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "6398:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6383:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "6383:18:2" + }, + "variables": [ + { + "name": "tail_1", + "nodeType": "YulTypedName", + "src": "6373:6:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6417:9:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "6428:2:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "6410:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "6410:21:2" + }, + "nodeType": "YulExpressionStatement", + "src": "6410:21:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "6440:17:2", + "value": { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "6451:6:2" + }, + "variables": [ + { + "name": "pos", + "nodeType": "YulTypedName", + "src": "6444:3:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "6466:27:2", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "6486:6:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "6480:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "6480:13:2" + }, + "variables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "6470:6:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "tail_1", + "nodeType": "YulIdentifier", + "src": "6509:6:2" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "6517:6:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "6502:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "6502:22:2" + }, + "nodeType": "YulExpressionStatement", + "src": "6502:22:2" + }, + { + "nodeType": "YulAssignment", + "src": "6533:25:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "6544:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6555:2:2", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6540:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "6540:18:2" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6533:3:2" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "6567:29:2", + "value": { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "6585:6:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "6593:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6581:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "6581:15:2" + }, + "variables": [ + { + "name": "srcPtr", + "nodeType": "YulTypedName", + "src": "6571:6:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "6605:10:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6614:1:2", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "6609:1:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6673:146:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6694:3:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "6709:6:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "6703:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "6703:13:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6726:3:2", + "type": "", + "value": "160" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6731:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "6722:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "6722:11:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6735:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "6718:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "6718:19:2" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "6699:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "6699:39:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "6687:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "6687:52:2" + }, + "nodeType": "YulExpressionStatement", + "src": "6687:52:2" + }, + { + "nodeType": "YulAssignment", + "src": "6752:19:2", + "value": { + "arguments": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6763:3:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "6768:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6759:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "6759:12:2" + }, + "variableNames": [ + { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6752:3:2" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "6784:25:2", + "value": { + "arguments": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "6798:6:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "6806:2:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6794:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "6794:15:2" + }, + "variableNames": [ + { + "name": "srcPtr", + "nodeType": "YulIdentifier", + "src": "6784:6:2" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "6635:1:2" + }, + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "6638:6:2" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "6632:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "6632:13:2" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "6646:18:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "6648:14:2", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "6657:1:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "6660:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "6653:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "6653:9:2" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "6648:1:2" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "6628:3:2", + "statements": [] + }, + "src": "6624:195:2" + }, + { + "nodeType": "YulAssignment", + "src": "6828:11:2", + "value": { + "name": "pos", + "nodeType": "YulIdentifier", + "src": "6836:3:2" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "6828:4:2" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_array$_t_address_$dyn_memory_ptr__to_t_array$_t_address_$dyn_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "6307:9:2", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "6318:6:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "6329:4:2", + "type": "" + } + ], + "src": "6187:658:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "6991:545:2", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "7038:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7047:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7050:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "7040:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "7040:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "7040:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "7012:7:2" + }, + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7021:9:2" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "7008:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "7008:23:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7033:3:2", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "slt", + "nodeType": "YulIdentifier", + "src": "7004:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "7004:33:2" + }, + "nodeType": "YulIf", + "src": "7001:53:2" + }, + { + "nodeType": "YulAssignment", + "src": "7063:39:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7092:9:2" + } + ], + "functionName": { + "name": "abi_decode_address", + "nodeType": "YulIdentifier", + "src": "7073:18:2" + }, + "nodeType": "YulFunctionCall", + "src": "7073:29:2" + }, + "variableNames": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "7063:6:2" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "7111:46:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7142:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7153:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7138:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "7138:18:2" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "7125:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "7125:32:2" + }, + "variables": [ + { + "name": "offset", + "nodeType": "YulTypedName", + "src": "7115:6:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "7166:28:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7176:18:2", + "type": "", + "value": "0xffffffffffffffff" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "7170:2:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7221:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7230:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7233:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "7223:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "7223:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "7223:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "7209:6:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "7217:2:2" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "7206:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "7206:14:2" + }, + "nodeType": "YulIf", + "src": "7203:34:2" + }, + { + "nodeType": "YulAssignment", + "src": "7246:60:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7278:9:2" + }, + { + "name": "offset", + "nodeType": "YulIdentifier", + "src": "7289:6:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7274:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "7274:22:2" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "7298:7:2" + } + ], + "functionName": { + "name": "abi_decode_string", + "nodeType": "YulIdentifier", + "src": "7256:17:2" + }, + "nodeType": "YulFunctionCall", + "src": "7256:50:2" + }, + "variableNames": [ + { + "name": "value1", + "nodeType": "YulIdentifier", + "src": "7246:6:2" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "7315:48:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7348:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7359:2:2", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7344:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "7344:18:2" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "7331:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "7331:32:2" + }, + "variables": [ + { + "name": "offset_1", + "nodeType": "YulTypedName", + "src": "7319:8:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7392:16:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7401:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7404:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "7394:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "7394:12:2" + }, + "nodeType": "YulExpressionStatement", + "src": "7394:12:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "7378:8:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "7388:2:2" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "7375:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "7375:16:2" + }, + "nodeType": "YulIf", + "src": "7372:36:2" + }, + { + "nodeType": "YulAssignment", + "src": "7417:62:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7449:9:2" + }, + { + "name": "offset_1", + "nodeType": "YulIdentifier", + "src": "7460:8:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7445:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "7445:24:2" + }, + { + "name": "dataEnd", + "nodeType": "YulIdentifier", + "src": "7471:7:2" + } + ], + "functionName": { + "name": "abi_decode_string", + "nodeType": "YulIdentifier", + "src": "7427:17:2" + }, + "nodeType": "YulFunctionCall", + "src": "7427:52:2" + }, + "variableNames": [ + { + "name": "value2", + "nodeType": "YulIdentifier", + "src": "7417:6:2" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "7488:42:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7515:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7526:2:2", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7511:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "7511:18:2" + } + ], + "functionName": { + "name": "calldataload", + "nodeType": "YulIdentifier", + "src": "7498:12:2" + }, + "nodeType": "YulFunctionCall", + "src": "7498:32:2" + }, + "variableNames": [ + { + "name": "value3", + "nodeType": "YulIdentifier", + "src": "7488:6:2" + } + ] + } + ] + }, + "name": "abi_decode_tuple_t_addresst_string_memory_ptrt_string_memory_ptrt_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "6933:9:2", + "type": "" + }, + { + "name": "dataEnd", + "nodeType": "YulTypedName", + "src": "6944:7:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "6956:6:2", + "type": "" + }, + { + "name": "value1", + "nodeType": "YulTypedName", + "src": "6964:6:2", + "type": "" + }, + { + "name": "value2", + "nodeType": "YulTypedName", + "src": "6972:6:2", + "type": "" + }, + { + "name": "value3", + "nodeType": "YulTypedName", + "src": "6980:6:2", + "type": "" + } + ], + "src": "6850:686:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7642:102:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "7652:26:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7664:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7675:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7660:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "7660:18:2" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "7652:4:2" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "7694:9:2" + }, + { + "arguments": [ + { + "name": "value0", + "nodeType": "YulIdentifier", + "src": "7709:6:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7725:3:2", + "type": "", + "value": "160" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7730:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "7721:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "7721:11:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7734:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "7717:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "7717:19:2" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "7705:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "7705:32:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "7687:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "7687:51:2" + }, + "nodeType": "YulExpressionStatement", + "src": "7687:51:2" + } + ] + }, + "name": "abi_encode_tuple_t_address__to_t_address__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "7611:9:2", + "type": "" + }, + { + "name": "value0", + "nodeType": "YulTypedName", + "src": "7622:6:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "7633:4:2", + "type": "" + } + ], + "src": "7541:203:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7781:95:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7798:1:2", + "type": "", + "value": "0" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7805:3:2", + "type": "", + "value": "224" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7810:10:2", + "type": "", + "value": "0x4e487b71" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "7801:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "7801:20:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "7791:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "7791:31:2" + }, + "nodeType": "YulExpressionStatement", + "src": "7791:31:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7838:1:2", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7841:4:2", + "type": "", + "value": "0x11" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "7831:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "7831:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "7831:15:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7862:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "7865:4:2", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "7855:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "7855:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "7855:15:2" + } + ] + }, + "name": "panic_error_0x11", + "nodeType": "YulFunctionDefinition", + "src": "7749:127:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7929:77:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "7939:16:2", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "7950:1:2" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "7953:1:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "7946:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "7946:9:2" + }, + "variableNames": [ + { + "name": "sum", + "nodeType": "YulIdentifier", + "src": "7939:3:2" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "7978:22:2", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nodeType": "YulIdentifier", + "src": "7980:16:2" + }, + "nodeType": "YulFunctionCall", + "src": "7980:18:2" + }, + "nodeType": "YulExpressionStatement", + "src": "7980:18:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "7970:1:2" + }, + { + "name": "sum", + "nodeType": "YulIdentifier", + "src": "7973:3:2" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "7967:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "7967:10:2" + }, + "nodeType": "YulIf", + "src": "7964:36:2" + } + ] + }, + "name": "checked_add_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nodeType": "YulTypedName", + "src": "7912:1:2", + "type": "" + }, + { + "name": "y", + "nodeType": "YulTypedName", + "src": "7915:1:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "sum", + "nodeType": "YulTypedName", + "src": "7921:3:2", + "type": "" + } + ], + "src": "7881:125:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8043:95:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8060:1:2", + "type": "", + "value": "0" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8067:3:2", + "type": "", + "value": "224" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8072:10:2", + "type": "", + "value": "0x4e487b71" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "8063:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8063:20:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8053:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "8053:31:2" + }, + "nodeType": "YulExpressionStatement", + "src": "8053:31:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8100:1:2", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8103:4:2", + "type": "", + "value": "0x32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8093:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "8093:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "8093:15:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8124:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8127:4:2", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "8117:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "8117:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "8117:15:2" + } + ] + }, + "name": "panic_error_0x32", + "nodeType": "YulFunctionDefinition", + "src": "8011:127:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8192:79:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "8202:17:2", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "8214:1:2" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "8217:1:2" + } + ], + "functionName": { + "name": "sub", + "nodeType": "YulIdentifier", + "src": "8210:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8210:9:2" + }, + "variableNames": [ + { + "name": "diff", + "nodeType": "YulIdentifier", + "src": "8202:4:2" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8243:22:2", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nodeType": "YulIdentifier", + "src": "8245:16:2" + }, + "nodeType": "YulFunctionCall", + "src": "8245:18:2" + }, + "nodeType": "YulExpressionStatement", + "src": "8245:18:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "diff", + "nodeType": "YulIdentifier", + "src": "8234:4:2" + }, + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "8240:1:2" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "8231:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "8231:11:2" + }, + "nodeType": "YulIf", + "src": "8228:37:2" + } + ] + }, + "name": "checked_sub_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nodeType": "YulTypedName", + "src": "8174:1:2", + "type": "" + }, + { + "name": "y", + "nodeType": "YulTypedName", + "src": "8177:1:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "diff", + "nodeType": "YulTypedName", + "src": "8183:4:2", + "type": "" + } + ], + "src": "8143:128:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8323:88:2", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "8354:22:2", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nodeType": "YulIdentifier", + "src": "8356:16:2" + }, + "nodeType": "YulFunctionCall", + "src": "8356:18:2" + }, + "nodeType": "YulExpressionStatement", + "src": "8356:18:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "8339:5:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8350:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "8346:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8346:6:2" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "8336:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "8336:17:2" + }, + "nodeType": "YulIf", + "src": "8333:43:2" + }, + { + "nodeType": "YulAssignment", + "src": "8385:20:2", + "value": { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "8396:5:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8403:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "8392:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8392:13:2" + }, + "variableNames": [ + { + "name": "ret", + "nodeType": "YulIdentifier", + "src": "8385:3:2" + } + ] + } + ] + }, + "name": "increment_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "8305:5:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "ret", + "nodeType": "YulTypedName", + "src": "8315:3:2", + "type": "" + } + ], + "src": "8276:135:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8471:325:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "8481:22:2", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8495:1:2", + "type": "", + "value": "1" + }, + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "8498:4:2" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "8491:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8491:12:2" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "8481:6:2" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "8512:38:2", + "value": { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "8542:4:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8548:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "8538:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8538:12:2" + }, + "variables": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulTypedName", + "src": "8516:18:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8589:31:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "8591:27:2", + "value": { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "8605:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8613:4:2", + "type": "", + "value": "0x7f" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "8601:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8601:17:2" + }, + "variableNames": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "8591:6:2" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulIdentifier", + "src": "8569:18:2" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "8562:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "8562:26:2" + }, + "nodeType": "YulIf", + "src": "8559:61:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8679:111:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8700:1:2", + "type": "", + "value": "0" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8707:3:2", + "type": "", + "value": "224" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8712:10:2", + "type": "", + "value": "0x4e487b71" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "8703:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "8703:20:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8693:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "8693:31:2" + }, + "nodeType": "YulExpressionStatement", + "src": "8693:31:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8744:1:2", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8747:4:2", + "type": "", + "value": "0x22" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8737:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "8737:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "8737:15:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8772:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8775:4:2", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "8765:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "8765:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "8765:15:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "outOfPlaceEncoding", + "nodeType": "YulIdentifier", + "src": "8635:18:2" + }, + { + "arguments": [ + { + "name": "length", + "nodeType": "YulIdentifier", + "src": "8658:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "8666:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "8655:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "8655:14:2" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "8632:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "8632:38:2" + }, + "nodeType": "YulIf", + "src": "8629:161:2" + } + ] + }, + "name": "extract_byte_array_length", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "8451:4:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "length", + "nodeType": "YulTypedName", + "src": "8460:6:2", + "type": "" + } + ], + "src": "8416:380:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "8975:182:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "8992:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9003:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "8985:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "8985:21:2" + }, + "nodeType": "YulExpressionStatement", + "src": "8985:21:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9026:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9037:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9022:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "9022:18:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9042:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "9015:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "9015:30:2" + }, + "nodeType": "YulExpressionStatement", + "src": "9015:30:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9065:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9076:2:2", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9061:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "9061:18:2" + }, + { + "hexValue": "4f7267616e697a6174696f6e20616c7265616479207265676973746572656421", + "kind": "string", + "nodeType": "YulLiteral", + "src": "9081:34:2", + "type": "", + "value": "Organization already registered!" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "9054:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "9054:62:2" + }, + "nodeType": "YulExpressionStatement", + "src": "9054:62:2" + }, + { + "nodeType": "YulAssignment", + "src": "9125:26:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "9137:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9148:2:2", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9133:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "9133:18:2" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "9125:4:2" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "8952:9:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "8966:4:2", + "type": "" + } + ], + "src": "8801:356:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9218:65:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9235:1:2", + "type": "", + "value": "0" + }, + { + "name": "ptr", + "nodeType": "YulIdentifier", + "src": "9238:3:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "9228:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "9228:14:2" + }, + "nodeType": "YulExpressionStatement", + "src": "9228:14:2" + }, + { + "nodeType": "YulAssignment", + "src": "9251:26:2", + "value": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9269:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9272:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "keccak256", + "nodeType": "YulIdentifier", + "src": "9259:9:2" + }, + "nodeType": "YulFunctionCall", + "src": "9259:18:2" + }, + "variableNames": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "9251:4:2" + } + ] + } + ] + }, + "name": "array_dataslot_string_storage", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "ptr", + "nodeType": "YulTypedName", + "src": "9201:3:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "9209:4:2", + "type": "" + } + ], + "src": "9162:121:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9369:464:2", + "statements": [ + { + "body": { + "nodeType": "YulBlock", + "src": "9402:425:2", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "9416:11:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9426:1:2", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "_1", + "nodeType": "YulTypedName", + "src": "9420:2:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "9447:2:2" + }, + { + "name": "array", + "nodeType": "YulIdentifier", + "src": "9451:5:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "9440:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "9440:17:2" + }, + "nodeType": "YulExpressionStatement", + "src": "9440:17:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "9470:31:2", + "value": { + "arguments": [ + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "9492:2:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9496:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "keccak256", + "nodeType": "YulIdentifier", + "src": "9482:9:2" + }, + "nodeType": "YulFunctionCall", + "src": "9482:19:2" + }, + "variables": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "9474:4:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "9514:57:2", + "value": { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "9537:4:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9547:1:2", + "type": "", + "value": "5" + }, + { + "arguments": [ + { + "name": "startIndex", + "nodeType": "YulIdentifier", + "src": "9554:10:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9566:2:2", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9550:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "9550:19:2" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "9543:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "9543:27:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9533:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "9533:38:2" + }, + "variables": [ + { + "name": "deleteStart", + "nodeType": "YulTypedName", + "src": "9518:11:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9608:23:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "9610:19:2", + "value": { + "name": "data", + "nodeType": "YulIdentifier", + "src": "9625:4:2" + }, + "variableNames": [ + { + "name": "deleteStart", + "nodeType": "YulIdentifier", + "src": "9610:11:2" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "startIndex", + "nodeType": "YulIdentifier", + "src": "9590:10:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9602:4:2", + "type": "", + "value": "0x20" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "9587:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "9587:20:2" + }, + "nodeType": "YulIf", + "src": "9584:47:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "9644:41:2", + "value": { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "9658:4:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9668:1:2", + "type": "", + "value": "5" + }, + { + "arguments": [ + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "9675:3:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9680:2:2", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9671:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "9671:12:2" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "9664:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "9664:20:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9654:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "9654:31:2" + }, + "variables": [ + { + "name": "_2", + "nodeType": "YulTypedName", + "src": "9648:2:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "9698:24:2", + "value": { + "name": "deleteStart", + "nodeType": "YulIdentifier", + "src": "9711:11:2" + }, + "variables": [ + { + "name": "start", + "nodeType": "YulTypedName", + "src": "9702:5:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9796:21:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "9805:5:2" + }, + { + "name": "_1", + "nodeType": "YulIdentifier", + "src": "9812:2:2" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "9798:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "9798:17:2" + }, + "nodeType": "YulExpressionStatement", + "src": "9798:17:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "9746:5:2" + }, + { + "name": "_2", + "nodeType": "YulIdentifier", + "src": "9753:2:2" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "9743:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "9743:13:2" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "9757:26:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "9759:22:2", + "value": { + "arguments": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "9772:5:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9779:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "9768:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "9768:13:2" + }, + "variableNames": [ + { + "name": "start", + "nodeType": "YulIdentifier", + "src": "9759:5:2" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "9739:3:2", + "statements": [] + }, + "src": "9735:82:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "9385:3:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9390:2:2", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "9382:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "9382:11:2" + }, + "nodeType": "YulIf", + "src": "9379:448:2" + } + ] + }, + "name": "clean_up_bytearray_end_slots_string_storage", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "array", + "nodeType": "YulTypedName", + "src": "9341:5:2", + "type": "" + }, + { + "name": "len", + "nodeType": "YulTypedName", + "src": "9348:3:2", + "type": "" + }, + { + "name": "startIndex", + "nodeType": "YulTypedName", + "src": "9353:10:2", + "type": "" + } + ], + "src": "9288:545:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "9923:81:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "9933:65:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "data", + "nodeType": "YulIdentifier", + "src": "9948:4:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9966:1:2", + "type": "", + "value": "3" + }, + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "9969:3:2" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "9962:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "9962:11:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9979:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "9975:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "9975:6:2" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "9958:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "9958:24:2" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "9954:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "9954:29:2" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "9944:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "9944:40:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "9990:1:2", + "type": "", + "value": "1" + }, + { + "name": "len", + "nodeType": "YulIdentifier", + "src": "9993:3:2" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "9986:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "9986:11:2" + } + ], + "functionName": { + "name": "or", + "nodeType": "YulIdentifier", + "src": "9941:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "9941:57:2" + }, + "variableNames": [ + { + "name": "used", + "nodeType": "YulIdentifier", + "src": "9933:4:2" + } + ] + } + ] + }, + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "data", + "nodeType": "YulTypedName", + "src": "9900:4:2", + "type": "" + }, + { + "name": "len", + "nodeType": "YulTypedName", + "src": "9906:3:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "used", + "nodeType": "YulTypedName", + "src": "9914:4:2", + "type": "" + } + ], + "src": "9838:166:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10105:1256:2", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "10115:24:2", + "value": { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "10135:3:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "10129:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "10129:10:2" + }, + "variables": [ + { + "name": "newLen", + "nodeType": "YulTypedName", + "src": "10119:6:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10182:22:2", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x41", + "nodeType": "YulIdentifier", + "src": "10184:16:2" + }, + "nodeType": "YulFunctionCall", + "src": "10184:18:2" + }, + "nodeType": "YulExpressionStatement", + "src": "10184:18:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "10154:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10162:18:2", + "type": "", + "value": "0xffffffffffffffff" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "10151:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "10151:30:2" + }, + "nodeType": "YulIf", + "src": "10148:56:2" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "10257:4:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "10295:4:2" + } + ], + "functionName": { + "name": "sload", + "nodeType": "YulIdentifier", + "src": "10289:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "10289:11:2" + } + ], + "functionName": { + "name": "extract_byte_array_length", + "nodeType": "YulIdentifier", + "src": "10263:25:2" + }, + "nodeType": "YulFunctionCall", + "src": "10263:38:2" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "10303:6:2" + } + ], + "functionName": { + "name": "clean_up_bytearray_end_slots_string_storage", + "nodeType": "YulIdentifier", + "src": "10213:43:2" + }, + "nodeType": "YulFunctionCall", + "src": "10213:97:2" + }, + "nodeType": "YulExpressionStatement", + "src": "10213:97:2" + }, + { + "nodeType": "YulVariableDeclaration", + "src": "10319:18:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10336:1:2", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "srcOffset", + "nodeType": "YulTypedName", + "src": "10323:9:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "10346:23:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10365:4:2", + "type": "", + "value": "0x20" + }, + "variables": [ + { + "name": "srcOffset_1", + "nodeType": "YulTypedName", + "src": "10350:11:2", + "type": "" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "10378:24:2", + "value": { + "name": "srcOffset_1", + "nodeType": "YulIdentifier", + "src": "10391:11:2" + }, + "variableNames": [ + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "10378:9:2" + } + ] + }, + { + "cases": [ + { + "body": { + "nodeType": "YulBlock", + "src": "10448:656:2", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "10462:35:2", + "value": { + "arguments": [ + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "10481:6:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10493:2:2", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "10489:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "10489:7:2" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "10477:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "10477:20:2" + }, + "variables": [ + { + "name": "loopEnd", + "nodeType": "YulTypedName", + "src": "10466:7:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "10510:49:2", + "value": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "10554:4:2" + } + ], + "functionName": { + "name": "array_dataslot_string_storage", + "nodeType": "YulIdentifier", + "src": "10524:29:2" + }, + "nodeType": "YulFunctionCall", + "src": "10524:35:2" + }, + "variables": [ + { + "name": "dstPtr", + "nodeType": "YulTypedName", + "src": "10514:6:2", + "type": "" + } + ] + }, + { + "nodeType": "YulVariableDeclaration", + "src": "10572:10:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10581:1:2", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "i", + "nodeType": "YulTypedName", + "src": "10576:1:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10659:172:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "10684:6:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "10702:3:2" + }, + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "10707:9:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10698:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "10698:19:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "10692:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "10692:26:2" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "10677:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "10677:42:2" + }, + "nodeType": "YulExpressionStatement", + "src": "10677:42:2" + }, + { + "nodeType": "YulAssignment", + "src": "10736:24:2", + "value": { + "arguments": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "10750:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10758:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10746:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "10746:14:2" + }, + "variableNames": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "10736:6:2" + } + ] + }, + { + "nodeType": "YulAssignment", + "src": "10777:40:2", + "value": { + "arguments": [ + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "10794:9:2" + }, + { + "name": "srcOffset_1", + "nodeType": "YulIdentifier", + "src": "10805:11:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10790:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "10790:27:2" + }, + "variableNames": [ + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "10777:9:2" + } + ] + } + ] + }, + "condition": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "10606:1:2" + }, + { + "name": "loopEnd", + "nodeType": "YulIdentifier", + "src": "10609:7:2" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "10603:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "10603:14:2" + }, + "nodeType": "YulForLoop", + "post": { + "nodeType": "YulBlock", + "src": "10618:28:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "10620:24:2", + "value": { + "arguments": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "10629:1:2" + }, + { + "name": "srcOffset_1", + "nodeType": "YulIdentifier", + "src": "10632:11:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10625:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "10625:19:2" + }, + "variableNames": [ + { + "name": "i", + "nodeType": "YulIdentifier", + "src": "10620:1:2" + } + ] + } + ] + }, + "pre": { + "nodeType": "YulBlock", + "src": "10599:3:2", + "statements": [] + }, + "src": "10595:236:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "10879:166:2", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "10897:43:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "10924:3:2" + }, + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "10929:9:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "10920:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "10920:19:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "10914:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "10914:26:2" + }, + "variables": [ + { + "name": "lastValue", + "nodeType": "YulTypedName", + "src": "10901:9:2", + "type": "" + } + ] + }, + { + "expression": { + "arguments": [ + { + "name": "dstPtr", + "nodeType": "YulIdentifier", + "src": "10964:6:2" + }, + { + "arguments": [ + { + "name": "lastValue", + "nodeType": "YulIdentifier", + "src": "10976:9:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11003:1:2", + "type": "", + "value": "3" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "11006:6:2" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "10999:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "10999:14:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11015:3:2", + "type": "", + "value": "248" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "10995:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "10995:24:2" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11025:1:2", + "type": "", + "value": "0" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "11021:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "11021:6:2" + } + ], + "functionName": { + "name": "shr", + "nodeType": "YulIdentifier", + "src": "10991:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "10991:37:2" + } + ], + "functionName": { + "name": "not", + "nodeType": "YulIdentifier", + "src": "10987:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "10987:42:2" + } + ], + "functionName": { + "name": "and", + "nodeType": "YulIdentifier", + "src": "10972:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "10972:58:2" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "10957:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "10957:74:2" + }, + "nodeType": "YulExpressionStatement", + "src": "10957:74:2" + } + ] + }, + "condition": { + "arguments": [ + { + "name": "loopEnd", + "nodeType": "YulIdentifier", + "src": "10850:7:2" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "10859:6:2" + } + ], + "functionName": { + "name": "lt", + "nodeType": "YulIdentifier", + "src": "10847:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "10847:19:2" + }, + "nodeType": "YulIf", + "src": "10844:201:2" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "11065:4:2" + }, + { + "arguments": [ + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11079:1:2", + "type": "", + "value": "1" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "11082:6:2" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "11075:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "11075:14:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11091:1:2", + "type": "", + "value": "1" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11071:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "11071:22:2" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "11058:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "11058:36:2" + }, + "nodeType": "YulExpressionStatement", + "src": "11058:36:2" + } + ] + }, + "nodeType": "YulCase", + "src": "10441:663:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10446:1:2", + "type": "", + "value": "1" + } + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11121:234:2", + "statements": [ + { + "nodeType": "YulVariableDeclaration", + "src": "11135:14:2", + "value": { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11148:1:2", + "type": "", + "value": "0" + }, + "variables": [ + { + "name": "value", + "nodeType": "YulTypedName", + "src": "11139:5:2", + "type": "" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11184:67:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "11202:35:2", + "value": { + "arguments": [ + { + "arguments": [ + { + "name": "src", + "nodeType": "YulIdentifier", + "src": "11221:3:2" + }, + { + "name": "srcOffset", + "nodeType": "YulIdentifier", + "src": "11226:9:2" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11217:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "11217:19:2" + } + ], + "functionName": { + "name": "mload", + "nodeType": "YulIdentifier", + "src": "11211:5:2" + }, + "nodeType": "YulFunctionCall", + "src": "11211:26:2" + }, + "variableNames": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "11202:5:2" + } + ] + } + ] + }, + "condition": { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "11165:6:2" + }, + "nodeType": "YulIf", + "src": "11162:89:2" + }, + { + "expression": { + "arguments": [ + { + "name": "slot", + "nodeType": "YulIdentifier", + "src": "11271:4:2" + }, + { + "arguments": [ + { + "name": "value", + "nodeType": "YulIdentifier", + "src": "11330:5:2" + }, + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "11337:6:2" + } + ], + "functionName": { + "name": "extract_used_part_and_set_length_of_short_byte_array", + "nodeType": "YulIdentifier", + "src": "11277:52:2" + }, + "nodeType": "YulFunctionCall", + "src": "11277:67:2" + } + ], + "functionName": { + "name": "sstore", + "nodeType": "YulIdentifier", + "src": "11264:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "11264:81:2" + }, + "nodeType": "YulExpressionStatement", + "src": "11264:81:2" + } + ] + }, + "nodeType": "YulCase", + "src": "11113:242:2", + "value": "default" + } + ], + "expression": { + "arguments": [ + { + "name": "newLen", + "nodeType": "YulIdentifier", + "src": "10421:6:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "10429:2:2", + "type": "", + "value": "31" + } + ], + "functionName": { + "name": "gt", + "nodeType": "YulIdentifier", + "src": "10418:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "10418:14:2" + }, + "nodeType": "YulSwitch", + "src": "10411:944:2" + } + ] + }, + "name": "copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "slot", + "nodeType": "YulTypedName", + "src": "10090:4:2", + "type": "" + }, + { + "name": "src", + "nodeType": "YulTypedName", + "src": "10096:3:2", + "type": "" + } + ], + "src": "10009:1352:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11398:95:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11415:1:2", + "type": "", + "value": "0" + }, + { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11422:3:2", + "type": "", + "value": "224" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11427:10:2", + "type": "", + "value": "0x4e487b71" + } + ], + "functionName": { + "name": "shl", + "nodeType": "YulIdentifier", + "src": "11418:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "11418:20:2" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "11408:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "11408:31:2" + }, + "nodeType": "YulExpressionStatement", + "src": "11408:31:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11455:1:2", + "type": "", + "value": "4" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11458:4:2", + "type": "", + "value": "0x31" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "11448:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "11448:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "11448:15:2" + }, + { + "expression": { + "arguments": [ + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11479:1:2", + "type": "", + "value": "0" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11482:4:2", + "type": "", + "value": "0x24" + } + ], + "functionName": { + "name": "revert", + "nodeType": "YulIdentifier", + "src": "11472:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "11472:15:2" + }, + "nodeType": "YulExpressionStatement", + "src": "11472:15:2" + } + ] + }, + "name": "panic_error_0x31", + "nodeType": "YulFunctionDefinition", + "src": "11366:127:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11550:116:2", + "statements": [ + { + "nodeType": "YulAssignment", + "src": "11560:20:2", + "value": { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "11575:1:2" + }, + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "11578:1:2" + } + ], + "functionName": { + "name": "mul", + "nodeType": "YulIdentifier", + "src": "11571:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "11571:9:2" + }, + "variableNames": [ + { + "name": "product", + "nodeType": "YulIdentifier", + "src": "11560:7:2" + } + ] + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11638:22:2", + "statements": [ + { + "expression": { + "arguments": [], + "functionName": { + "name": "panic_error_0x11", + "nodeType": "YulIdentifier", + "src": "11640:16:2" + }, + "nodeType": "YulFunctionCall", + "src": "11640:18:2" + }, + "nodeType": "YulExpressionStatement", + "src": "11640:18:2" + } + ] + }, + "condition": { + "arguments": [ + { + "arguments": [ + { + "arguments": [ + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "11609:1:2" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "11602:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "11602:9:2" + }, + { + "arguments": [ + { + "name": "y", + "nodeType": "YulIdentifier", + "src": "11616:1:2" + }, + { + "arguments": [ + { + "name": "product", + "nodeType": "YulIdentifier", + "src": "11623:7:2" + }, + { + "name": "x", + "nodeType": "YulIdentifier", + "src": "11632:1:2" + } + ], + "functionName": { + "name": "div", + "nodeType": "YulIdentifier", + "src": "11619:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "11619:15:2" + } + ], + "functionName": { + "name": "eq", + "nodeType": "YulIdentifier", + "src": "11613:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "11613:22:2" + } + ], + "functionName": { + "name": "or", + "nodeType": "YulIdentifier", + "src": "11599:2:2" + }, + "nodeType": "YulFunctionCall", + "src": "11599:37:2" + } + ], + "functionName": { + "name": "iszero", + "nodeType": "YulIdentifier", + "src": "11592:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "11592:45:2" + }, + "nodeType": "YulIf", + "src": "11589:71:2" + } + ] + }, + "name": "checked_mul_t_uint256", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "x", + "nodeType": "YulTypedName", + "src": "11529:1:2", + "type": "" + }, + { + "name": "y", + "nodeType": "YulTypedName", + "src": "11532:1:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "product", + "nodeType": "YulTypedName", + "src": "11538:7:2", + "type": "" + } + ], + "src": "11498:168:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "11845:226:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "11862:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11873:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "11855:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "11855:21:2" + }, + "nodeType": "YulExpressionStatement", + "src": "11855:21:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "11896:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11907:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11892:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "11892:18:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11912:2:2", + "type": "", + "value": "36" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "11885:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "11885:30:2" + }, + "nodeType": "YulExpressionStatement", + "src": "11885:30:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "11935:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "11946:2:2", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "11931:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "11931:18:2" + }, + { + "hexValue": "4f7267616e697a6174696f6e206164647265737320646f6573206e6f74206578", + "kind": "string", + "nodeType": "YulLiteral", + "src": "11951:34:2", + "type": "", + "value": "Organization address does not ex" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "11924:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "11924:62:2" + }, + "nodeType": "YulExpressionStatement", + "src": "11924:62:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12006:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12017:2:2", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12002:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "12002:18:2" + }, + { + "hexValue": "69737421", + "kind": "string", + "nodeType": "YulLiteral", + "src": "12022:6:2", + "type": "", + "value": "ist!" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "11995:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "11995:34:2" + }, + "nodeType": "YulExpressionStatement", + "src": "11995:34:2" + }, + { + "nodeType": "YulAssignment", + "src": "12038:27:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12050:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12061:3:2", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12046:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "12046:19:2" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "12038:4:2" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_ddeb0b25a32bdbd6903219d580ec164d518abe435832e90b114c90315c52a2cf__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "11822:9:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "11836:4:2", + "type": "" + } + ], + "src": "11671:400:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12250:180:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12267:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12278:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "12260:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "12260:21:2" + }, + "nodeType": "YulExpressionStatement", + "src": "12260:21:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12301:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12312:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12297:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "12297:18:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12317:2:2", + "type": "", + "value": "30" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "12290:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "12290:30:2" + }, + "nodeType": "YulExpressionStatement", + "src": "12290:30:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12340:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12351:2:2", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12336:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "12336:18:2" + }, + { + "hexValue": "4f7267616e697a6174696f6e20616c726561647920766572696669656421", + "kind": "string", + "nodeType": "YulLiteral", + "src": "12356:32:2", + "type": "", + "value": "Organization already verified!" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "12329:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "12329:60:2" + }, + "nodeType": "YulExpressionStatement", + "src": "12329:60:2" + }, + { + "nodeType": "YulAssignment", + "src": "12398:26:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12410:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12421:2:2", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12406:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "12406:18:2" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "12398:4:2" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_53664b562d96b321f827bfb375320c905b5c20116fabd3735d276655e7a84701__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "12227:9:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "12241:4:2", + "type": "" + } + ], + "src": "12076:354:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "12609:248:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12626:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12637:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "12619:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "12619:21:2" + }, + "nodeType": "YulExpressionStatement", + "src": "12619:21:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12660:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12671:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12656:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "12656:18:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12676:2:2", + "type": "", + "value": "58" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "12649:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "12649:30:2" + }, + "nodeType": "YulExpressionStatement", + "src": "12649:30:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12699:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12710:2:2", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12695:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "12695:18:2" + }, + { + "hexValue": "566f746572206f7267616e697a6174696f6e206973206e6f7420766572696669", + "kind": "string", + "nodeType": "YulLiteral", + "src": "12715:34:2", + "type": "", + "value": "Voter organization is not verifi" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "12688:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "12688:62:2" + }, + "nodeType": "YulExpressionStatement", + "src": "12688:62:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12770:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12781:2:2", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12766:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "12766:18:2" + }, + { + "hexValue": "65642c206e6f74207065726d697474656420746f20766f746521", + "kind": "string", + "nodeType": "YulLiteral", + "src": "12786:28:2", + "type": "", + "value": "ed, not permitted to vote!" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "12759:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "12759:56:2" + }, + "nodeType": "YulExpressionStatement", + "src": "12759:56:2" + }, + { + "nodeType": "YulAssignment", + "src": "12824:27:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "12836:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "12847:3:2", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "12832:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "12832:19:2" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "12824:4:2" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_a8c8730adc0a679cd4a5e2b2364d02c0d62620d7a5cf6d44281730f36a7832c1__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "12586:9:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "12600:4:2", + "type": "" + } + ], + "src": "12435:422:2" + }, + { + "body": { + "nodeType": "YulBlock", + "src": "13036:236:2", + "statements": [ + { + "expression": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "13053:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13064:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "13046:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "13046:21:2" + }, + "nodeType": "YulExpressionStatement", + "src": "13046:21:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "13087:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13098:2:2", + "type": "", + "value": "32" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13083:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "13083:18:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13103:2:2", + "type": "", + "value": "46" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "13076:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "13076:30:2" + }, + "nodeType": "YulExpressionStatement", + "src": "13076:30:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "13126:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13137:2:2", + "type": "", + "value": "64" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13122:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "13122:18:2" + }, + { + "hexValue": "566f746572206f7267616e697a6174696f6e2063616e6e6f7420766f7465206d", + "kind": "string", + "nodeType": "YulLiteral", + "src": "13142:34:2", + "type": "", + "value": "Voter organization cannot vote m" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "13115:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "13115:62:2" + }, + "nodeType": "YulExpressionStatement", + "src": "13115:62:2" + }, + { + "expression": { + "arguments": [ + { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "13197:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13208:2:2", + "type": "", + "value": "96" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13193:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "13193:18:2" + }, + { + "hexValue": "6f7265207468616e206f6e636521", + "kind": "string", + "nodeType": "YulLiteral", + "src": "13213:16:2", + "type": "", + "value": "ore than once!" + } + ], + "functionName": { + "name": "mstore", + "nodeType": "YulIdentifier", + "src": "13186:6:2" + }, + "nodeType": "YulFunctionCall", + "src": "13186:44:2" + }, + "nodeType": "YulExpressionStatement", + "src": "13186:44:2" + }, + { + "nodeType": "YulAssignment", + "src": "13239:27:2", + "value": { + "arguments": [ + { + "name": "headStart", + "nodeType": "YulIdentifier", + "src": "13251:9:2" + }, + { + "kind": "number", + "nodeType": "YulLiteral", + "src": "13262:3:2", + "type": "", + "value": "128" + } + ], + "functionName": { + "name": "add", + "nodeType": "YulIdentifier", + "src": "13247:3:2" + }, + "nodeType": "YulFunctionCall", + "src": "13247:19:2" + }, + "variableNames": [ + { + "name": "tail", + "nodeType": "YulIdentifier", + "src": "13239:4:2" + } + ] + } + ] + }, + "name": "abi_encode_tuple_t_stringliteral_414be5daad95c532f9b7381e52ffca6776b0449e47c566018321a361a4b95d16__to_t_string_memory_ptr__fromStack_reversed", + "nodeType": "YulFunctionDefinition", + "parameters": [ + { + "name": "headStart", + "nodeType": "YulTypedName", + "src": "13013:9:2", + "type": "" + } + ], + "returnVariables": [ + { + "name": "tail", + "nodeType": "YulTypedName", + "src": "13027:4:2", + "type": "" + } + ], + "src": "12862:410:2" + } + ] + }, + "contents": "{\n { }\n function abi_decode_address(offset) -> value\n {\n value := calldataload(offset)\n if iszero(eq(value, and(value, sub(shl(160, 1), 1)))) { revert(0, 0) }\n }\n function abi_decode_tuple_t_address(headStart, dataEnd) -> value0\n {\n if slt(sub(dataEnd, headStart), 32) { revert(0, 0) }\n value0 := abi_decode_address(headStart)\n }\n function abi_decode_tuple_t_addresst_bool(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n value0 := abi_decode_address(headStart)\n let value := calldataload(add(headStart, 32))\n if iszero(eq(value, iszero(iszero(value)))) { revert(0, 0) }\n value1 := value\n }\n function abi_encode_address(value, pos)\n {\n mstore(pos, and(value, sub(shl(160, 1), 1)))\n }\n function abi_encode_string(value, pos) -> end\n {\n let length := mload(value)\n mstore(pos, length)\n let i := 0\n for { } lt(i, length) { i := add(i, 0x20) }\n {\n let _1 := 0x20\n mstore(add(add(pos, i), _1), mload(add(add(value, i), _1)))\n }\n mstore(add(add(pos, length), 0x20), 0)\n end := add(add(pos, and(add(length, 31), not(31))), 0x20)\n }\n function abi_encode_bool(value, pos)\n {\n mstore(pos, iszero(iszero(value)))\n }\n function abi_encode_tuple_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr__to_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n let _1 := 32\n let tail_1 := add(headStart, _1)\n mstore(headStart, _1)\n let pos := tail_1\n let length := mload(value0)\n mstore(tail_1, length)\n let _2 := 64\n pos := add(headStart, _2)\n let tail_2 := add(add(headStart, shl(5, length)), _2)\n let srcPtr := add(value0, _1)\n let i := 0\n for { } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, add(sub(tail_2, headStart), not(63)))\n let _3 := mload(srcPtr)\n let _4 := 0x0120\n abi_encode_address(mload(_3), tail_2)\n let memberValue0 := mload(add(_3, _1))\n mstore(add(tail_2, _1), _4)\n let tail_3 := abi_encode_string(memberValue0, add(tail_2, _4))\n let memberValue0_1 := mload(add(_3, _2))\n mstore(add(tail_2, _2), sub(tail_3, tail_2))\n let tail_4 := abi_encode_string(memberValue0_1, tail_3)\n let _5 := 0x60\n mstore(add(tail_2, _5), mload(add(_3, _5)))\n let _6 := 0x80\n mstore(add(tail_2, _6), mload(add(_3, _6)))\n let _7 := 0xa0\n mstore(add(tail_2, _7), mload(add(_3, _7)))\n let _8 := 0xc0\n let memberValue0_2 := mload(add(_3, _8))\n abi_encode_bool(memberValue0_2, add(tail_2, _8))\n let _9 := 0xe0\n let memberValue0_3 := mload(add(_3, _9))\n mstore(add(tail_2, _9), sub(tail_4, tail_2))\n let tail_5 := abi_encode_string(memberValue0_3, tail_4)\n let _10 := 0x0100\n mstore(add(tail_2, _10), mload(add(_3, _10)))\n tail_2 := tail_5\n srcPtr := add(srcPtr, _1)\n pos := add(pos, _1)\n }\n tail := tail_2\n }\n function abi_encode_tuple_t_bool__to_t_bool__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, iszero(iszero(value0)))\n }\n function panic_error_0x41()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x41)\n revert(0, 0x24)\n }\n function abi_decode_string(offset, end) -> array\n {\n if iszero(slt(add(offset, 0x1f), end)) { revert(0, 0) }\n let _1 := calldataload(offset)\n let _2 := 0xffffffffffffffff\n if gt(_1, _2) { panic_error_0x41() }\n let _3 := not(31)\n let memPtr := mload(64)\n let newFreePtr := add(memPtr, and(add(and(add(_1, 0x1f), _3), 63), _3))\n if or(gt(newFreePtr, _2), lt(newFreePtr, memPtr)) { panic_error_0x41() }\n mstore(64, newFreePtr)\n mstore(memPtr, _1)\n if gt(add(add(offset, _1), 0x20), end) { revert(0, 0) }\n calldatacopy(add(memPtr, 0x20), add(offset, 0x20), _1)\n mstore(add(add(memPtr, _1), 0x20), 0)\n array := memPtr\n }\n function abi_decode_tuple_t_addresst_string_memory_ptrt_string_memory_ptrt_string_memory_ptrt_uint256(headStart, dataEnd) -> value0, value1, value2, value3, value4\n {\n if slt(sub(dataEnd, headStart), 160) { revert(0, 0) }\n value0 := abi_decode_address(headStart)\n let offset := calldataload(add(headStart, 32))\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n value1 := abi_decode_string(add(headStart, offset), dataEnd)\n let offset_1 := calldataload(add(headStart, 64))\n if gt(offset_1, _1) { revert(0, 0) }\n value2 := abi_decode_string(add(headStart, offset_1), dataEnd)\n let offset_2 := calldataload(add(headStart, 96))\n if gt(offset_2, _1) { revert(0, 0) }\n value3 := abi_decode_string(add(headStart, offset_2), dataEnd)\n value4 := calldataload(add(headStart, 128))\n }\n function abi_decode_tuple_t_addresst_uint256(headStart, dataEnd) -> value0, value1\n {\n if slt(sub(dataEnd, headStart), 64) { revert(0, 0) }\n value0 := abi_decode_address(headStart)\n value1 := calldataload(add(headStart, 32))\n }\n function abi_decode_tuple_t_addresst_string_memory_ptrt_uint256(headStart, dataEnd) -> value0, value1, value2\n {\n if slt(sub(dataEnd, headStart), 96) { revert(0, 0) }\n value0 := abi_decode_address(headStart)\n let offset := calldataload(add(headStart, 32))\n if gt(offset, 0xffffffffffffffff) { revert(0, 0) }\n value1 := abi_decode_string(add(headStart, offset), dataEnd)\n value2 := calldataload(add(headStart, 64))\n }\n function abi_encode_tuple_t_uint256__to_t_uint256__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, value0)\n }\n function abi_encode_tuple_t_array$_t_address_$dyn_memory_ptr__to_t_array$_t_address_$dyn_memory_ptr__fromStack_reversed(headStart, value0) -> tail\n {\n let _1 := 32\n let tail_1 := add(headStart, _1)\n mstore(headStart, _1)\n let pos := tail_1\n let length := mload(value0)\n mstore(tail_1, length)\n pos := add(headStart, 64)\n let srcPtr := add(value0, _1)\n let i := 0\n for { } lt(i, length) { i := add(i, 1) }\n {\n mstore(pos, and(mload(srcPtr), sub(shl(160, 1), 1)))\n pos := add(pos, _1)\n srcPtr := add(srcPtr, _1)\n }\n tail := pos\n }\n function abi_decode_tuple_t_addresst_string_memory_ptrt_string_memory_ptrt_uint256(headStart, dataEnd) -> value0, value1, value2, value3\n {\n if slt(sub(dataEnd, headStart), 128) { revert(0, 0) }\n value0 := abi_decode_address(headStart)\n let offset := calldataload(add(headStart, 32))\n let _1 := 0xffffffffffffffff\n if gt(offset, _1) { revert(0, 0) }\n value1 := abi_decode_string(add(headStart, offset), dataEnd)\n let offset_1 := calldataload(add(headStart, 64))\n if gt(offset_1, _1) { revert(0, 0) }\n value2 := abi_decode_string(add(headStart, offset_1), dataEnd)\n value3 := calldataload(add(headStart, 96))\n }\n function abi_encode_tuple_t_address__to_t_address__fromStack_reversed(headStart, value0) -> tail\n {\n tail := add(headStart, 32)\n mstore(headStart, and(value0, sub(shl(160, 1), 1)))\n }\n function panic_error_0x11()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x11)\n revert(0, 0x24)\n }\n function checked_add_t_uint256(x, y) -> sum\n {\n sum := add(x, y)\n if gt(x, sum) { panic_error_0x11() }\n }\n function panic_error_0x32()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x32)\n revert(0, 0x24)\n }\n function checked_sub_t_uint256(x, y) -> diff\n {\n diff := sub(x, y)\n if gt(diff, x) { panic_error_0x11() }\n }\n function increment_t_uint256(value) -> ret\n {\n if eq(value, not(0)) { panic_error_0x11() }\n ret := add(value, 1)\n }\n function extract_byte_array_length(data) -> length\n {\n length := shr(1, data)\n let outOfPlaceEncoding := and(data, 1)\n if iszero(outOfPlaceEncoding) { length := and(length, 0x7f) }\n if eq(outOfPlaceEncoding, lt(length, 32))\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x22)\n revert(0, 0x24)\n }\n }\n function abi_encode_tuple_t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 32)\n mstore(add(headStart, 64), \"Organization already registered!\")\n tail := add(headStart, 96)\n }\n function array_dataslot_string_storage(ptr) -> data\n {\n mstore(0, ptr)\n data := keccak256(0, 0x20)\n }\n function clean_up_bytearray_end_slots_string_storage(array, len, startIndex)\n {\n if gt(len, 31)\n {\n let _1 := 0\n mstore(_1, array)\n let data := keccak256(_1, 0x20)\n let deleteStart := add(data, shr(5, add(startIndex, 31)))\n if lt(startIndex, 0x20) { deleteStart := data }\n let _2 := add(data, shr(5, add(len, 31)))\n let start := deleteStart\n for { } lt(start, _2) { start := add(start, 1) }\n { sstore(start, _1) }\n }\n }\n function extract_used_part_and_set_length_of_short_byte_array(data, len) -> used\n {\n used := or(and(data, not(shr(shl(3, len), not(0)))), shl(1, len))\n }\n function copy_byte_array_to_storage_from_t_string_memory_ptr_to_t_string_storage(slot, src)\n {\n let newLen := mload(src)\n if gt(newLen, 0xffffffffffffffff) { panic_error_0x41() }\n clean_up_bytearray_end_slots_string_storage(slot, extract_byte_array_length(sload(slot)), newLen)\n let srcOffset := 0\n let srcOffset_1 := 0x20\n srcOffset := srcOffset_1\n switch gt(newLen, 31)\n case 1 {\n let loopEnd := and(newLen, not(31))\n let dstPtr := array_dataslot_string_storage(slot)\n let i := 0\n for { } lt(i, loopEnd) { i := add(i, srcOffset_1) }\n {\n sstore(dstPtr, mload(add(src, srcOffset)))\n dstPtr := add(dstPtr, 1)\n srcOffset := add(srcOffset, srcOffset_1)\n }\n if lt(loopEnd, newLen)\n {\n let lastValue := mload(add(src, srcOffset))\n sstore(dstPtr, and(lastValue, not(shr(and(shl(3, newLen), 248), not(0)))))\n }\n sstore(slot, add(shl(1, newLen), 1))\n }\n default {\n let value := 0\n if newLen\n {\n value := mload(add(src, srcOffset))\n }\n sstore(slot, extract_used_part_and_set_length_of_short_byte_array(value, newLen))\n }\n }\n function panic_error_0x31()\n {\n mstore(0, shl(224, 0x4e487b71))\n mstore(4, 0x31)\n revert(0, 0x24)\n }\n function checked_mul_t_uint256(x, y) -> product\n {\n product := mul(x, y)\n if iszero(or(iszero(x), eq(y, div(product, x)))) { panic_error_0x11() }\n }\n function abi_encode_tuple_t_stringliteral_ddeb0b25a32bdbd6903219d580ec164d518abe435832e90b114c90315c52a2cf__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 36)\n mstore(add(headStart, 64), \"Organization address does not ex\")\n mstore(add(headStart, 96), \"ist!\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_stringliteral_53664b562d96b321f827bfb375320c905b5c20116fabd3735d276655e7a84701__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 30)\n mstore(add(headStart, 64), \"Organization already verified!\")\n tail := add(headStart, 96)\n }\n function abi_encode_tuple_t_stringliteral_a8c8730adc0a679cd4a5e2b2364d02c0d62620d7a5cf6d44281730f36a7832c1__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 58)\n mstore(add(headStart, 64), \"Voter organization is not verifi\")\n mstore(add(headStart, 96), \"ed, not permitted to vote!\")\n tail := add(headStart, 128)\n }\n function abi_encode_tuple_t_stringliteral_414be5daad95c532f9b7381e52ffca6776b0449e47c566018321a361a4b95d16__to_t_string_memory_ptr__fromStack_reversed(headStart) -> tail\n {\n mstore(headStart, 32)\n mstore(add(headStart, 32), 46)\n mstore(add(headStart, 64), \"Voter organization cannot vote m\")\n mstore(add(headStart, 96), \"ore than once!\")\n tail := add(headStart, 128)\n }\n}", + "id": 2, + "language": "Yul", + "name": "#utility.yul" + } + ], + "immutableReferences": {}, + "linkReferences": {}, + "object": "6080604052600436106101ef5760003560e01c806380007e831161010c578063b7627e411161009a578063e3323aba1161006c578063e3323aba1461060c578063e75176b514610634578063ef2d584714610654578063f15c01dd14610674578063f851a4401461069457005b8063b7627e411461057e578063bc489aa9146105b7578063c9dfca10146105cc578063e2579114146105ec57005b8063a1b0ffe0116100de578063a1b0ffe0146104c2578063a52da85d146104f1578063ac64fcde1461051e578063ae51c2bc1461053e578063b5e801d51461055e57005b806380007e831461044557806380e179e91461046d5780638e3495191461048d5780638fc0ed2f146104ad57005b80634648df2a116101895780635cf9303f1161015b5780635cf9303f146103975780635d0161f1146103d057806362ae7ac7146103e55780636fc3911c14610405578063712062741461042557005b80634648df2a14610313578063482bd55b146103335780634cf5d5521461035357806355779b651461037757005b80632d80468d116101c25780632d80468d146102785780633e85747e146102a3578063440370fe146102d35780634438d4b0146102f357005b806237556e146101f85780630a54ecbf1461021857806314cb11e8146102385780631e4771801461025857005b366101f657005b005b34801561020457600080fd5b506101f6610213366004612ddc565b6106cc565b34801561022457600080fd5b506101f6610233366004612ddc565b61073c565b34801561024457600080fd5b506101f6610253366004612ddc565b610950565b34801561026457600080fd5b506101f6610273366004612dfe565b6109c0565b34801561028457600080fd5b5061028d610fdd565b60405161029a9190612e80565b60405180910390f35b3480156102af57600080fd5b506102c36102be366004612ddc565b61136d565b604051901515815260200161029a565b3480156102df57600080fd5b506101f66102ee366004613011565b61139a565b3480156102ff57600080fd5b506101f661030e366004612ddc565b611530565b34801561031f57600080fd5b506102c361032e3660046130b2565b611766565b34801561033f57600080fd5b506101f661034e3660046130dc565b61179b565b34801561035f57600080fd5b5061036960095481565b60405190815260200161029a565b34801561038357600080fd5b506101f6610392366004612ddc565b611834565b3480156103a357600080fd5b506103696103b2366004612ddc565b6001600160a01b031660009081526020819052604090206003015490565b3480156103dc57600080fd5b5061028d6118a4565b3480156103f157600080fd5b506101f6610400366004612ddc565b611bbb565b34801561041157600080fd5b506102c3610420366004612ddc565b611c20565b34801561043157600080fd5b506101f6610440366004612ddc565b611c6d565b34801561045157600080fd5b503360009081526020819052604090206006015460ff166102c3565b34801561047957600080fd5b506101f6610488366004612ddc565b611d23565b34801561049957600080fd5b506101f66104a8366004612ddc565b611dd9565b3480156104b957600080fd5b506101f6611f6f565b3480156104ce57600080fd5b506101f6336000908152602081905260409020600e01805460ff19166001179055565b3480156104fd57600080fd5b5061051161050c366004612ddc565b612052565b60405161029a9190613133565b34801561052a57600080fd5b506101f6610539366004613180565b6122c4565b34801561054a57600080fd5b506101f6610559366004612ddc565b61237f565b34801561056a57600080fd5b506101f6610579366004612ddc565b6125b6565b34801561058a57600080fd5b50610369610599366004612ddc565b6001600160a01b031660009081526020819052604090206004015490565b3480156105c357600080fd5b506101f6612622565b3480156105d857600080fd5b506102c36105e7366004612ddc565b6126ca565b3480156105f857600080fd5b506102c36106073660046130b2565b6126f7565b34801561061857600080fd5b50336000908152602081905260409020600e015460ff166102c3565b34801561064057600080fd5b5061036961064f366004612ddc565b6128d9565b34801561066057600080fd5b506101f661066f366004612ddc565b612913565b34801561068057600080fd5b506102c361068f3660046130b2565b612b25565b3480156106a057600080fd5b506007546106b4906001600160a01b031681565b6040516001600160a01b03909116815260200161029a565b6001600160a01b0381166000908152600d60205260409020600401546106f3906001613212565b6001600160a01b039091166000908152600d6020908152604082206004810193909355600690920180546001810182559082529190200180546001600160a01b03191633179055565b6001600160a01b0381166000908152600d60205260409020600b015460ff161561094d5760005b6001600160a01b03821660009081526020819052604090206007015481101561085557600a546001600160a01b03831660009081526020819052604081206007018054829190859081106107b9576107b9613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a01546107eb919061323b565b6001600160a01b038316600090815260208190526040812060070180548291908590811061081b5761081b613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a01558061084d8161324e565b915050610763565b5060005b6001600160a01b03821660009081526020819052604090206008015481101561094b57600a546001600160a01b03831660009081526020819052604081206008018054829190859081106108af576108af613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a01546108e19190613212565b6001600160a01b038316600090815260208190526040812060080180548291908590811061091157610911613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a0155806109438161324e565b915050610859565b505b50565b6001600160a01b0381166000908152600e6020526040902060020154610977906001613212565b6001600160a01b039091166000908152600e6020908152604082206002810193909355600490920180546001810182559082529190200180546001600160a01b03191633179055565b8015610cd2576000805b6001600160a01b038416600090815260208190526040902060030154811015610b91576001600160a01b0384166000908152602081905260408120600701805482919084908110610a1d57610a1d613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c0154610a50906001613212565b6001600160a01b0385166000908152602081905260408120600701805482919085908110610a8057610a80613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c0155600a54610ab59083613212565b9150600a54600080806000886001600160a01b03166001600160a01b031681526020019081526020016000206007018481548110610af557610af5613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a0154610b279190613212565b6001600160a01b0385166000908152602081905260408120600701805482919085908110610b5757610b57613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a015580610b898161324e565b9150506109ca565b506001600160a01b0383166000908152602081905260409020600a0154610bb990829061323b565b6001600160a01b0384166000908152602081905260408120600a01919091555b6001600160a01b038416600090815260208190526040902060040154811015610ccb576001600160a01b0384166000908152602081905260408120600801805460019291829185908110610c2f57610c2f613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c0154610c61919061323b565b6001600160a01b0385166000908152602081905260408120600801805482919085908110610c9157610c91613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c015580610cc38161324e565b915050610bd9565b505061094b565b6000805b6001600160a01b038416600090815260208190526040902060040154811015610e9d576001600160a01b0384166000908152602081905260408120600801805482919084908110610d2957610d29613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c0154610d5c906001613212565b6001600160a01b0385166000908152602081905260408120600801805482919085908110610d8c57610d8c613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c0155600a54610dc19083613212565b9150600a54600080806000886001600160a01b03166001600160a01b031681526020019081526020016000206008018481548110610e0157610e01613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a0154610e339190613212565b6001600160a01b0385166000908152602081905260408120600801805482919085908110610e6357610e63613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a015580610e958161324e565b915050610cd6565b506001600160a01b0383166000908152602081905260409020600a0154610ec590829061323b565b6001600160a01b0384166000908152602081905260408120600a01919091555b6001600160a01b038416600090815260208190526040902060030154811015610fd7576001600160a01b0384166000908152602081905260408120600701805460019291829185908110610f3b57610f3b613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c0154610f6d919061323b565b6001600160a01b0385166000908152602081905260408120600701805482919085908110610f9d57610f9d613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c015580610fcf8161324e565b915050610ee5565b50505050565b600454600854606091906000908190610ff6908461323b565b67ffffffffffffffff81111561100e5761100e612f6e565b60405190808252806020026020018201604052801561104757816020015b611034612cfc565b81526020019060019003908161102c5790505b50905060005b838110156113655760006004828154811061106a5761106a613225565b60009182526020808320909101546001600160a01b03168083529082905260409091206006015490915060ff166113525760408051610120810182526001600160a01b0380841660008181526020818152948120805490931684529081528084526001909101805491938301916110e090613267565b80601f016020809104026020016040519081016040528092919081815260200182805461110c90613267565b80156111595780601f1061112e57610100808354040283529160200191611159565b820191906000526020600020905b81548152906001019060200180831161113c57829003601f168201915b50505050508152602001600080856001600160a01b03166001600160a01b03168152602001908152602001600020600201805461119590613267565b80601f01602080910402602001604051908101604052809291908181526020018280546111c190613267565b801561120e5780601f106111e35761010080835404028352916020019161120e565b820191906000526020600020905b8154815290600101906020018083116111f157829003601f168201915b50505091835250506001600160a01b03841660008181526020818152604080832060038101548387015260048101549186019190915260058101546060860152600681015460ff161515608086015292825252600b01805460a09092019161127590613267565b80601f01602080910402602001604051908101604052809291908181526020018280546112a190613267565b80156112ee5780601f106112c3576101008083540402835291602001916112ee565b820191906000526020600020905b8154815290600101906020018083116112d157829003601f168201915b50505050508152602001600080856001600160a01b03166001600160a01b03168152602001908152602001600020600d015481525090508084868151811061133857611338613225565b602090810291909101015261134e600186613212565b9450505b508061135d8161324e565b91505061104d565b509392505050565b6001600160a01b031660009081526020818152604080832033845260090190915290205460ff1660011490565b6001600160a01b0385166000908152602081905260409020600d0154156114085760405162461bcd60e51b815260206004820181905260248201527f4f7267616e697a6174696f6e20616c726561647920726567697374657265642160448201526064015b60405180910390fd5b6001600160a01b038516600081815260208190526040902080546001600160a01b031916909117815560010161143e85826132ef565b506001600160a01b038516600090815260208190526040902060020161146484826132ef565b506001600160a01b0385166000908152602081905260409020600b0161148a83826132ef565b50611498816202a300613212565b6001600160a01b0386166000908152602081905260409020600d01556114bd856128d9565b6114c8906001613212565b6001600160a01b039095166000818152602081905260408120600501969096556004805460018101825596527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b90950180546001600160a01b03191690951790945550505050565b6001600160a01b0381166000908152600e602052604081206007015460ff161515900361094d576001600160a01b0381166000908152602081905260408120600601805460ff19169055600980546001929061158d90849061323b565b90915550506001600160a01b0381166000908152600260205260408120805460ff19169055805b6004548110156116f257600080600483815481106115d4576115d4613225565b60009182526020808320909101546001600160a01b0316835282019290925260400190206006015460ff16801561164757506000806004838154811061161c5761161c613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c015482105b156116e0576000806004838154811061166257611662613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c015460048054919350600691839081106116a4576116a4613225565b60009182526020808320909101548354600181018555938352912090910180546001600160a01b0319166001600160a01b039092169190911790555b806116ea8161324e565b9150506115b4565b5060005b600654811015611712578061170a8161324e565b9150506116f6565b5060065460005b81811015610fd7576006805480611732576117326133af565b600082815260209020810160001990810180546001600160a01b03191690550190558061175e8161324e565b915050611719565b6001600160a01b0382166000908152602081905260408120600d015482111561179157506001611795565b5060005b92915050565b6001600160a01b0383166000818152600e60209081526040822080546001600160a01b031916909317835560089092018054600181018255908252919020016117e483826132ef565b506001600160a01b0383166000908152600e602052604090206005018190556118108162069780613212565b6001600160a01b039093166000908152600e60205260409020600601929092555050565b6001600160a01b0381166000908152600d602052604090206003015461185b906001613212565b6001600160a01b039091166000908152600d6020908152604082206003810193909355600590920180546001810182559082529190200180546001600160a01b03191633179055565b60045460085460609190600090819067ffffffffffffffff8111156118cb576118cb612f6e565b60405190808252806020026020018201604052801561190457816020015b6118f1612cfc565b8152602001906001900390816118e95790505b50905060005b838110156113655760006004828154811061192757611927613225565b60009182526020808320909101546001600160a01b03168083529082905260409091206006015490915060ff1615611ba8576001600160a01b038082166000908152602081815260408083208151610120810190925280549094168152600184018054919283019161199890613267565b80601f01602080910402602001604051908101604052809291908181526020018280546119c490613267565b8015611a115780601f106119e657610100808354040283529160200191611a11565b820191906000526020600020905b8154815290600101906020018083116119f457829003601f168201915b50505050508152602001836002018054611a2a90613267565b80601f0160208091040260200160405190810160405280929190818152602001828054611a5690613267565b8015611aa35780601f10611a7857610100808354040283529160200191611aa3565b820191906000526020600020905b815481529060010190602001808311611a8657829003601f168201915b5050509183525050600384015460208201526004840154604082015260058401546060820152600684015460ff1615156080820152600b8401805460a090920191611aed90613267565b80601f0160208091040260200160405190810160405280929190818152602001828054611b1990613267565b8015611b665780601f10611b3b57610100808354040283529160200191611b66565b820191906000526020600020905b815481529060010190602001808311611b4957829003601f168201915b5050505050815260200183600d0154815250905080858781518110611b8d57611b8d613225565b6020908102919091010152611ba3600187613212565b955050505b5080611bb38161324e565b91505061190a565b6001600160a01b0381166000908152602081905260408120600601805460ff191660019081179091556009805491929091611bf7908490613212565b90915550506001600160a01b03166000908152600260205260409020805460ff19166001179055565b60006009546033611c3191906133c5565b6001600160a01b038316600090815260208190526040902060030154611c589060646133c5565b10611c6557506001919050565b506000919050565b6001600160a01b0381166000908152600d602052604081206004810154600390910154611c9a9190613212565b9050611ca78160336133c5565b6001600160a01b0383166000908152600d6020526040902060030154611cce9060646133c5565b10611cfe576001600160a01b0382166000908152600d60205260409020600b01805460ff1916600117905561094b565b506001600160a01b03166000908152600d60205260409020600b01805460ff19169055565b6001600160a01b0381166000908152600e602052604081206002810154600190910154611d509190613212565b9050611d5d8160336133c5565b6001600160a01b0383166000908152600e6020526040902060010154611d849060646133c5565b10611db4576001600160a01b0382166000908152600e60205260409020600701805460ff1916600117905561094b565b506001600160a01b03166000908152600e60205260409020600701805460ff19169055565b60055460005b81811015611e2c576005805480611df857611df86133af565b600082815260209020810160001990810180546001600160a01b031916905501905580611e248161324e565b915050611ddf565b5060005b6001600160a01b038316600090815260208190526040902060070154811015611ecb576001600160a01b03831660009081526020819052604081206007018054600391839185908110611e8557611e85613225565b6000918252602080832091909101546001600160a01b031683528201929092526040019020805460ff191691151591909117905580611ec38161324e565b915050611e30565b5060005b6001600160a01b038316600090815260208190526040902060080154811015611f6a576001600160a01b03831660009081526020819052604081206008018054600391839185908110611f2457611f24613225565b6000918252602080832091909101546001600160a01b031683528201929092526040019020805460ff191691151591909117905580611f628161324e565b915050611ecf565b505050565b600c5460005b8181101561094b57600c805480611f8e57611f8e6133af565b600082815260208120600f6000199093019283020180546001600160a01b031916815590611fbf6001830182612d53565b611fcd600283016000612d53565b600060038301819055600483018190556005830181905560068301805460ff19169055611ffe906007840190612d8d565b61200c600883016000612d8d565b600a820160009055600b820160006120249190612d53565b506000600c8201819055600d820155600e01805460ff1916905590558061204a8161324e565b915050611f75565b606060005b6001600160a01b0383166000908152602081905260409020600701548110156120fe57600160036000806000876001600160a01b03166001600160a01b0316815260200190815260200160002060070184815481106120b8576120b8613225565b6000918252602080832091909101546001600160a01b031683528201929092526040019020805460ff1916911515919091179055806120f68161324e565b915050612057565b5060005b6001600160a01b0383166000908152602081905260409020600801548110156121a957600160036000806000876001600160a01b03166001600160a01b03168152602001908152602001600020600801848154811061216357612163613225565b6000918252602080832091909101546001600160a01b031683528201929092526040019020805460ff1916911515919091179055806121a18161324e565b915050612102565b5060005b6004548110156122615760036000600483815481106121ce576121ce613225565b60009182526020808320909101546001600160a01b0316835282019290925260400181205460ff161515900361224f5760056004828154811061221357612213613225565b60009182526020808320909101548354600181018555938352912090910180546001600160a01b0319166001600160a01b039092169190911790555b806122598161324e565b9150506121ad565b5060058054806020026020016040519081016040528092919081815260200182805480156122b857602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831161229a575b50505050509050919050565b6001600160a01b0384166000818152600d6020526040902080546001600160a01b03191690911781556001016122fa84826132ef565b506001600160a01b0384166000908152600d6020526040902060020161232083826132ef565b506001600160a01b0384166000908152600d6020526040902060090181905561234c8162069780613212565b6001600160a01b0385166000908152600d60205260409020600a0155600b54612376906001613212565b600b5550505050565b6001600160a01b0381166000908152600d60205260409020600b015460ff16151560010361094d576001600160a01b0381166000908152602081905260408120600601805460ff1916905560098054600192906123dd90849061323b565b90915550506001600160a01b0381166000908152600260205260408120805460ff19169055805b600454811015612542576000806004838154811061242457612424613225565b60009182526020808320909101546001600160a01b0316835282019290925260400190206006015460ff16801561249757506000806004838154811061246c5761246c613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c015482105b1561253057600080600483815481106124b2576124b2613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c015460048054919350600691839081106124f4576124f4613225565b60009182526020808320909101548354600181018555938352912090910180546001600160a01b0319166001600160a01b039092169190911790555b8061253a8161324e565b915050612404565b5060005b600654811015612562578061255a8161324e565b915050612546565b5060065460005b81811015610fd7576006805480612582576125826133af565b600082815260209020810160001990810180546001600160a01b0319169055019055806125ae8161324e565b915050612569565b6001600160a01b0381166000908152600e602052604090206001908101546125dd91613212565b6001600160a01b039091166000908152600e60209081526040822060018082019490945560030180549384018155825290200180546001600160a01b03191633179055565b60005b60055481101561094d57600a546000806005848154811061264857612648613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a015461267a919061323b565b6000806005848154811061269057612690613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a0155806126c28161324e565b915050612625565b6001600160a01b031660009081526020818152604080832033845260090190915290205460ff1660021490565b6001600160a01b0382166000908152602081905260408120600d0154839082036127335760405162461bcd60e51b81526004016113ff906133dc565b6001600160a01b03811660009081526020819052604090206006015460ff161561279f5760405162461bcd60e51b815260206004820152601e60248201527f4f7267616e697a6174696f6e20616c726561647920766572696669656421000060448201526064016113ff565b336000908152602081905260409020600d0154158015906127d257503360009081526020819052604090206006015460ff165b6127ee5760405162461bcd60e51b81526004016113ff90613420565b6127f7816126ca565b15801561280a57506128088161136d565b155b6128265760405162461bcd60e51b81526004016113ff9061347d565b6001600160a01b0384166000908152602081905260408120600301805460019290612852908490613212565b90915550506001600160a01b0384166000908152602081815260408083206007810180546001810182559085528385200180546001600160a01b0319163390811790915584526009019091529020805460ff191660021790556128b58484611766565b156128cd576128c384611c20565b50600191506128d2565b600091505b5092915050565b6001600160a01b03811660009081526020819052604081206004810154600390910154600954612909919061323b565b611795919061323b565b6001600160a01b0381166000908152600e602052604081206007015460ff161515900361094d5760005b6001600160a01b038216600090815260208190526040902060070154811015612a2f57600a546001600160a01b038316600090815260208190526040812060070180548291908590811061299357612993613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a01546129c5919061323b565b6001600160a01b03831660009081526020819052604081206007018054829190859081106129f5576129f5613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a015580612a278161324e565b91505061293d565b5060005b6001600160a01b03821660009081526020819052604090206008015481101561094b57600a546001600160a01b0383166000908152602081905260408120600801805482919085908110612a8957612a89613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a0154612abb9190613212565b6001600160a01b0383166000908152602081905260408120600801805482919085908110612aeb57612aeb613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a015580612b1d8161324e565b915050612a33565b6001600160a01b0382166000908152602081905260408120600d015483908203612b615760405162461bcd60e51b81526004016113ff906133dc565b6001600160a01b03811660009081526020819052604090206006015460ff1615612bcd5760405162461bcd60e51b815260206004820152601e60248201527f4f7267616e697a6174696f6e20616c726561647920766572696669656421000060448201526064016113ff565b336000908152602081905260409020600d015415801590612c0057503360009081526020819052604090206006015460ff165b612c1c5760405162461bcd60e51b81526004016113ff90613420565b612c25816126ca565b158015612c385750612c368161136d565b155b612c545760405162461bcd60e51b81526004016113ff9061347d565b6001600160a01b0384166000908152602081905260408120600401805460019290612c80908490613212565b90915550506001600160a01b038416600090815260208181526040808320600881018054600181810183559186528486200180546001600160a01b0319163390811790915585526009909101909252909120805460ff19169091179055612ce78484611766565b156128cd57612cf584611c20565b91506128d2565b60405180610120016040528060006001600160a01b03168152602001606081526020016060815260200160008152602001600081526020016000815260200160001515815260200160608152602001600081525090565b508054612d5f90613267565b6000825580601f10612d6f575050565b601f01602090049060005260206000209081019061094d9190612da7565b508054600082559060005260206000209081019061094d91905b5b80821115612dbc5760008155600101612da8565b5090565b80356001600160a01b0381168114612dd757600080fd5b919050565b600060208284031215612dee57600080fd5b612df782612dc0565b9392505050565b60008060408385031215612e1157600080fd5b612e1a83612dc0565b915060208301358015158114612e2f57600080fd5b809150509250929050565b6000815180845260005b81811015612e6057602081850181015186830182015201612e44565b506000602082860101526020601f19601f83011685010191505092915050565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b83811015612f6057888303603f19018552815180516001600160a01b0316845261012088820151818a870152612edf82870182612e3a565b9150508782015185820389870152612ef78282612e3a565b606084810151908801526080808501519088015260a0808501519088015260c08085015115159088015260e080850151888303828a01529193509150612f3d8382612e3a565b610100948501519790940196909652505094870194925090860190600101612ea7565b509098975050505050505050565b634e487b7160e01b600052604160045260246000fd5b600082601f830112612f9557600080fd5b813567ffffffffffffffff80821115612fb057612fb0612f6e565b604051601f8301601f19908116603f01168101908282118183101715612fd857612fd8612f6e565b81604052838152866020858801011115612ff157600080fd5b836020870160208301376000602085830101528094505050505092915050565b600080600080600060a0868803121561302957600080fd5b61303286612dc0565b9450602086013567ffffffffffffffff8082111561304f57600080fd5b61305b89838a01612f84565b9550604088013591508082111561307157600080fd5b61307d89838a01612f84565b9450606088013591508082111561309357600080fd5b506130a088828901612f84565b95989497509295608001359392505050565b600080604083850312156130c557600080fd5b6130ce83612dc0565b946020939093013593505050565b6000806000606084860312156130f157600080fd5b6130fa84612dc0565b9250602084013567ffffffffffffffff81111561311657600080fd5b61312286828701612f84565b925050604084013590509250925092565b6020808252825182820181905260009190848201906040850190845b818110156131745783516001600160a01b03168352928401929184019160010161314f565b50909695505050505050565b6000806000806080858703121561319657600080fd5b61319f85612dc0565b9350602085013567ffffffffffffffff808211156131bc57600080fd5b6131c888838901612f84565b945060408701359150808211156131de57600080fd5b506131eb87828801612f84565b949793965093946060013593505050565b634e487b7160e01b600052601160045260246000fd5b80820180821115611795576117956131fc565b634e487b7160e01b600052603260045260246000fd5b81810381811115611795576117956131fc565b600060018201613260576132606131fc565b5060010190565b600181811c9082168061327b57607f821691505b60208210810361329b57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115611f6a57600081815260208120601f850160051c810160208610156132c85750805b601f850160051c820191505b818110156132e7578281556001016132d4565b505050505050565b815167ffffffffffffffff81111561330957613309612f6e565b61331d816133178454613267565b846132a1565b602080601f831160018114613352576000841561333a5750858301515b600019600386901b1c1916600185901b1785556132e7565b600085815260208120601f198616915b8281101561338157888601518255948401946001909101908401613362565b508582101561339f5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052603160045260246000fd5b8082028115828204841417611795576117956131fc565b60208082526024908201527f4f7267616e697a6174696f6e206164647265737320646f6573206e6f742065786040820152636973742160e01b606082015260800190565b6020808252603a908201527f566f746572206f7267616e697a6174696f6e206973206e6f742076657269666960408201527f65642c206e6f74207065726d697474656420746f20766f746521000000000000606082015260800190565b6020808252602e908201527f566f746572206f7267616e697a6174696f6e2063616e6e6f7420766f7465206d60408201526d6f7265207468616e206f6e63652160901b60608201526080019056fea2646970667358221220daa6af178e1b36d9681b3304da3c4ee706ca1b3f4494f3802e4d990e3091fa3564736f6c63430008110033", + "opcodes": "PUSH1 0x80 PUSH1 0x40 MSTORE PUSH1 0x4 CALLDATASIZE LT PUSH2 0x1EF JUMPI PUSH1 0x0 CALLDATALOAD PUSH1 0xE0 SHR DUP1 PUSH4 0x80007E83 GT PUSH2 0x10C JUMPI DUP1 PUSH4 0xB7627E41 GT PUSH2 0x9A JUMPI DUP1 PUSH4 0xE3323ABA GT PUSH2 0x6C JUMPI DUP1 PUSH4 0xE3323ABA EQ PUSH2 0x60C JUMPI DUP1 PUSH4 0xE75176B5 EQ PUSH2 0x634 JUMPI DUP1 PUSH4 0xEF2D5847 EQ PUSH2 0x654 JUMPI DUP1 PUSH4 0xF15C01DD EQ PUSH2 0x674 JUMPI DUP1 PUSH4 0xF851A440 EQ PUSH2 0x694 JUMPI STOP JUMPDEST DUP1 PUSH4 0xB7627E41 EQ PUSH2 0x57E JUMPI DUP1 PUSH4 0xBC489AA9 EQ PUSH2 0x5B7 JUMPI DUP1 PUSH4 0xC9DFCA10 EQ PUSH2 0x5CC JUMPI DUP1 PUSH4 0xE2579114 EQ PUSH2 0x5EC JUMPI STOP JUMPDEST DUP1 PUSH4 0xA1B0FFE0 GT PUSH2 0xDE JUMPI DUP1 PUSH4 0xA1B0FFE0 EQ PUSH2 0x4C2 JUMPI DUP1 PUSH4 0xA52DA85D EQ PUSH2 0x4F1 JUMPI DUP1 PUSH4 0xAC64FCDE EQ PUSH2 0x51E JUMPI DUP1 PUSH4 0xAE51C2BC EQ PUSH2 0x53E JUMPI DUP1 PUSH4 0xB5E801D5 EQ PUSH2 0x55E JUMPI STOP JUMPDEST DUP1 PUSH4 0x80007E83 EQ PUSH2 0x445 JUMPI DUP1 PUSH4 0x80E179E9 EQ PUSH2 0x46D JUMPI DUP1 PUSH4 0x8E349519 EQ PUSH2 0x48D JUMPI DUP1 PUSH4 0x8FC0ED2F EQ PUSH2 0x4AD JUMPI STOP JUMPDEST DUP1 PUSH4 0x4648DF2A GT PUSH2 0x189 JUMPI DUP1 PUSH4 0x5CF9303F GT PUSH2 0x15B JUMPI DUP1 PUSH4 0x5CF9303F EQ PUSH2 0x397 JUMPI DUP1 PUSH4 0x5D0161F1 EQ PUSH2 0x3D0 JUMPI DUP1 PUSH4 0x62AE7AC7 EQ PUSH2 0x3E5 JUMPI DUP1 PUSH4 0x6FC3911C EQ PUSH2 0x405 JUMPI DUP1 PUSH4 0x71206274 EQ PUSH2 0x425 JUMPI STOP JUMPDEST DUP1 PUSH4 0x4648DF2A EQ PUSH2 0x313 JUMPI DUP1 PUSH4 0x482BD55B EQ PUSH2 0x333 JUMPI DUP1 PUSH4 0x4CF5D552 EQ PUSH2 0x353 JUMPI DUP1 PUSH4 0x55779B65 EQ PUSH2 0x377 JUMPI STOP JUMPDEST DUP1 PUSH4 0x2D80468D GT PUSH2 0x1C2 JUMPI DUP1 PUSH4 0x2D80468D EQ PUSH2 0x278 JUMPI DUP1 PUSH4 0x3E85747E EQ PUSH2 0x2A3 JUMPI DUP1 PUSH4 0x440370FE EQ PUSH2 0x2D3 JUMPI DUP1 PUSH4 0x4438D4B0 EQ PUSH2 0x2F3 JUMPI STOP JUMPDEST DUP1 PUSH3 0x37556E EQ PUSH2 0x1F8 JUMPI DUP1 PUSH4 0xA54ECBF EQ PUSH2 0x218 JUMPI DUP1 PUSH4 0x14CB11E8 EQ PUSH2 0x238 JUMPI DUP1 PUSH4 0x1E477180 EQ PUSH2 0x258 JUMPI STOP JUMPDEST CALLDATASIZE PUSH2 0x1F6 JUMPI STOP JUMPDEST STOP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x204 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x213 CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH2 0x6CC JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x224 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x233 CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH2 0x73C JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x244 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x253 CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH2 0x950 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x264 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x273 CALLDATASIZE PUSH1 0x4 PUSH2 0x2DFE JUMP JUMPDEST PUSH2 0x9C0 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x284 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x28D PUSH2 0xFDD JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x29A SWAP2 SWAP1 PUSH2 0x2E80 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 RETURN JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x2AF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x2C3 PUSH2 0x2BE CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH2 0x136D JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x29A JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x2DF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x2EE CALLDATASIZE PUSH1 0x4 PUSH2 0x3011 JUMP JUMPDEST PUSH2 0x139A JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x2FF JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x30E CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH2 0x1530 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x31F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x2C3 PUSH2 0x32E CALLDATASIZE PUSH1 0x4 PUSH2 0x30B2 JUMP JUMPDEST PUSH2 0x1766 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x33F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x34E CALLDATASIZE PUSH1 0x4 PUSH2 0x30DC JUMP JUMPDEST PUSH2 0x179B JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x35F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x369 PUSH1 0x9 SLOAD DUP2 JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x29A JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x383 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x392 CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH2 0x1834 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x3A3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x369 PUSH2 0x3B2 CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x3 ADD SLOAD SWAP1 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x3DC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x28D PUSH2 0x18A4 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x3F1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x400 CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH2 0x1BBB JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x411 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x2C3 PUSH2 0x420 CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH2 0x1C20 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x431 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x440 CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH2 0x1C6D JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x451 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP CALLER PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x6 ADD SLOAD PUSH1 0xFF AND PUSH2 0x2C3 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x479 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x488 CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH2 0x1D23 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x499 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x4A8 CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH2 0x1DD9 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x4B9 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x1F6F JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x4CE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 CALLER PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xE ADD DUP1 SLOAD PUSH1 0xFF NOT AND PUSH1 0x1 OR SWAP1 SSTORE JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x4FD JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x511 PUSH2 0x50C CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH2 0x2052 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH2 0x29A SWAP2 SWAP1 PUSH2 0x3133 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x52A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x539 CALLDATASIZE PUSH1 0x4 PUSH2 0x3180 JUMP JUMPDEST PUSH2 0x22C4 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x54A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x559 CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH2 0x237F JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x56A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x579 CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH2 0x25B6 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x58A JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x369 PUSH2 0x599 CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x4 ADD SLOAD SWAP1 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x5C3 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x2622 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x5D8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x2C3 PUSH2 0x5E7 CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH2 0x26CA JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x5F8 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x2C3 PUSH2 0x607 CALLDATASIZE PUSH1 0x4 PUSH2 0x30B2 JUMP JUMPDEST PUSH2 0x26F7 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x618 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP CALLER PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xE ADD SLOAD PUSH1 0xFF AND PUSH2 0x2C3 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x640 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x369 PUSH2 0x64F CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH2 0x28D9 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x660 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x1F6 PUSH2 0x66F CALLDATASIZE PUSH1 0x4 PUSH2 0x2DDC JUMP JUMPDEST PUSH2 0x2913 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x680 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x2C3 PUSH2 0x68F CALLDATASIZE PUSH1 0x4 PUSH2 0x30B2 JUMP JUMPDEST PUSH2 0x2B25 JUMP JUMPDEST CALLVALUE DUP1 ISZERO PUSH2 0x6A0 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH1 0x7 SLOAD PUSH2 0x6B4 SWAP1 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP2 AND DUP2 MSTORE PUSH1 0x20 ADD PUSH2 0x29A JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xD PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x4 ADD SLOAD PUSH2 0x6F3 SWAP1 PUSH1 0x1 PUSH2 0x3212 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xD PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP3 KECCAK256 PUSH1 0x4 DUP2 ADD SWAP4 SWAP1 SWAP4 SSTORE PUSH1 0x6 SWAP1 SWAP3 ADD DUP1 SLOAD PUSH1 0x1 DUP2 ADD DUP3 SSTORE SWAP1 DUP3 MSTORE SWAP2 SWAP1 KECCAK256 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND CALLER OR SWAP1 SSTORE JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xD PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xB ADD SLOAD PUSH1 0xFF AND ISZERO PUSH2 0x94D JUMPI PUSH1 0x0 JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x7 ADD SLOAD DUP2 LT ISZERO PUSH2 0x855 JUMPI PUSH1 0xA SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x7 ADD DUP1 SLOAD DUP3 SWAP2 SWAP1 DUP6 SWAP1 DUP2 LT PUSH2 0x7B9 JUMPI PUSH2 0x7B9 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xA ADD SLOAD PUSH2 0x7EB SWAP2 SWAP1 PUSH2 0x323B JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x7 ADD DUP1 SLOAD DUP3 SWAP2 SWAP1 DUP6 SWAP1 DUP2 LT PUSH2 0x81B JUMPI PUSH2 0x81B PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xA ADD SSTORE DUP1 PUSH2 0x84D DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x763 JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x8 ADD SLOAD DUP2 LT ISZERO PUSH2 0x94B JUMPI PUSH1 0xA SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x8 ADD DUP1 SLOAD DUP3 SWAP2 SWAP1 DUP6 SWAP1 DUP2 LT PUSH2 0x8AF JUMPI PUSH2 0x8AF PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xA ADD SLOAD PUSH2 0x8E1 SWAP2 SWAP1 PUSH2 0x3212 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x8 ADD DUP1 SLOAD DUP3 SWAP2 SWAP1 DUP6 SWAP1 DUP2 LT PUSH2 0x911 JUMPI PUSH2 0x911 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xA ADD SSTORE DUP1 PUSH2 0x943 DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x859 JUMP JUMPDEST POP JUMPDEST POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xE PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x2 ADD SLOAD PUSH2 0x977 SWAP1 PUSH1 0x1 PUSH2 0x3212 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xE PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP3 KECCAK256 PUSH1 0x2 DUP2 ADD SWAP4 SWAP1 SWAP4 SSTORE PUSH1 0x4 SWAP1 SWAP3 ADD DUP1 SLOAD PUSH1 0x1 DUP2 ADD DUP3 SSTORE SWAP1 DUP3 MSTORE SWAP2 SWAP1 KECCAK256 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND CALLER OR SWAP1 SSTORE JUMP JUMPDEST DUP1 ISZERO PUSH2 0xCD2 JUMPI PUSH1 0x0 DUP1 JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x3 ADD SLOAD DUP2 LT ISZERO PUSH2 0xB91 JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x7 ADD DUP1 SLOAD DUP3 SWAP2 SWAP1 DUP5 SWAP1 DUP2 LT PUSH2 0xA1D JUMPI PUSH2 0xA1D PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xC ADD SLOAD PUSH2 0xA50 SWAP1 PUSH1 0x1 PUSH2 0x3212 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x7 ADD DUP1 SLOAD DUP3 SWAP2 SWAP1 DUP6 SWAP1 DUP2 LT PUSH2 0xA80 JUMPI PUSH2 0xA80 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xC ADD SSTORE PUSH1 0xA SLOAD PUSH2 0xAB5 SWAP1 DUP4 PUSH2 0x3212 JUMP JUMPDEST SWAP2 POP PUSH1 0xA SLOAD PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP9 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0xAF5 JUMPI PUSH2 0xAF5 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xA ADD SLOAD PUSH2 0xB27 SWAP2 SWAP1 PUSH2 0x3212 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x7 ADD DUP1 SLOAD DUP3 SWAP2 SWAP1 DUP6 SWAP1 DUP2 LT PUSH2 0xB57 JUMPI PUSH2 0xB57 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xA ADD SSTORE DUP1 PUSH2 0xB89 DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x9CA JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xA ADD SLOAD PUSH2 0xBB9 SWAP1 DUP3 SWAP1 PUSH2 0x323B JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0xA ADD SWAP2 SWAP1 SWAP2 SSTORE JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x4 ADD SLOAD DUP2 LT ISZERO PUSH2 0xCCB JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x8 ADD DUP1 SLOAD PUSH1 0x1 SWAP3 SWAP2 DUP3 SWAP2 DUP6 SWAP1 DUP2 LT PUSH2 0xC2F JUMPI PUSH2 0xC2F PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xC ADD SLOAD PUSH2 0xC61 SWAP2 SWAP1 PUSH2 0x323B JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x8 ADD DUP1 SLOAD DUP3 SWAP2 SWAP1 DUP6 SWAP1 DUP2 LT PUSH2 0xC91 JUMPI PUSH2 0xC91 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xC ADD SSTORE DUP1 PUSH2 0xCC3 DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0xBD9 JUMP JUMPDEST POP POP PUSH2 0x94B JUMP JUMPDEST PUSH1 0x0 DUP1 JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x4 ADD SLOAD DUP2 LT ISZERO PUSH2 0xE9D JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x8 ADD DUP1 SLOAD DUP3 SWAP2 SWAP1 DUP5 SWAP1 DUP2 LT PUSH2 0xD29 JUMPI PUSH2 0xD29 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xC ADD SLOAD PUSH2 0xD5C SWAP1 PUSH1 0x1 PUSH2 0x3212 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x8 ADD DUP1 SLOAD DUP3 SWAP2 SWAP1 DUP6 SWAP1 DUP2 LT PUSH2 0xD8C JUMPI PUSH2 0xD8C PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xC ADD SSTORE PUSH1 0xA SLOAD PUSH2 0xDC1 SWAP1 DUP4 PUSH2 0x3212 JUMP JUMPDEST SWAP2 POP PUSH1 0xA SLOAD PUSH1 0x0 DUP1 DUP1 PUSH1 0x0 DUP9 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0xE01 JUMPI PUSH2 0xE01 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xA ADD SLOAD PUSH2 0xE33 SWAP2 SWAP1 PUSH2 0x3212 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x8 ADD DUP1 SLOAD DUP3 SWAP2 SWAP1 DUP6 SWAP1 DUP2 LT PUSH2 0xE63 JUMPI PUSH2 0xE63 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xA ADD SSTORE DUP1 PUSH2 0xE95 DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0xCD6 JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xA ADD SLOAD PUSH2 0xEC5 SWAP1 DUP3 SWAP1 PUSH2 0x323B JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0xA ADD SWAP2 SWAP1 SWAP2 SSTORE JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x3 ADD SLOAD DUP2 LT ISZERO PUSH2 0xFD7 JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x7 ADD DUP1 SLOAD PUSH1 0x1 SWAP3 SWAP2 DUP3 SWAP2 DUP6 SWAP1 DUP2 LT PUSH2 0xF3B JUMPI PUSH2 0xF3B PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xC ADD SLOAD PUSH2 0xF6D SWAP2 SWAP1 PUSH2 0x323B JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x7 ADD DUP1 SLOAD DUP3 SWAP2 SWAP1 DUP6 SWAP1 DUP2 LT PUSH2 0xF9D JUMPI PUSH2 0xF9D PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xC ADD SSTORE DUP1 PUSH2 0xFCF DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0xEE5 JUMP JUMPDEST POP POP POP POP JUMP JUMPDEST PUSH1 0x4 SLOAD PUSH1 0x8 SLOAD PUSH1 0x60 SWAP2 SWAP1 PUSH1 0x0 SWAP1 DUP2 SWAP1 PUSH2 0xFF6 SWAP1 DUP5 PUSH2 0x323B JUMP JUMPDEST PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x100E JUMPI PUSH2 0x100E PUSH2 0x2F6E JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x1047 JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH2 0x1034 PUSH2 0x2CFC JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x102C JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1365 JUMPI PUSH1 0x0 PUSH1 0x4 DUP3 DUP2 SLOAD DUP2 LT PUSH2 0x106A JUMPI PUSH2 0x106A PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP1 DUP4 MSTORE SWAP1 DUP3 SWAP1 MSTORE PUSH1 0x40 SWAP1 SWAP2 KECCAK256 PUSH1 0x6 ADD SLOAD SWAP1 SWAP2 POP PUSH1 0xFF AND PUSH2 0x1352 JUMPI PUSH1 0x40 DUP1 MLOAD PUSH2 0x120 DUP2 ADD DUP3 MSTORE PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP1 DUP5 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 DUP2 MSTORE SWAP5 DUP2 KECCAK256 DUP1 SLOAD SWAP1 SWAP4 AND DUP5 MSTORE SWAP1 DUP2 MSTORE DUP1 DUP5 MSTORE PUSH1 0x1 SWAP1 SWAP2 ADD DUP1 SLOAD SWAP2 SWAP4 DUP4 ADD SWAP2 PUSH2 0x10E0 SWAP1 PUSH2 0x3267 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x110C SWAP1 PUSH2 0x3267 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x1159 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x112E JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x1159 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x113C JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 DUP6 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x2 ADD DUP1 SLOAD PUSH2 0x1195 SWAP1 PUSH2 0x3267 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x11C1 SWAP1 PUSH2 0x3267 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x120E JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x11E3 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x120E JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x11F1 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP SWAP2 DUP4 MSTORE POP POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 PUSH1 0x3 DUP2 ADD SLOAD DUP4 DUP8 ADD MSTORE PUSH1 0x4 DUP2 ADD SLOAD SWAP2 DUP7 ADD SWAP2 SWAP1 SWAP2 MSTORE PUSH1 0x5 DUP2 ADD SLOAD PUSH1 0x60 DUP7 ADD MSTORE PUSH1 0x6 DUP2 ADD SLOAD PUSH1 0xFF AND ISZERO ISZERO PUSH1 0x80 DUP7 ADD MSTORE SWAP3 DUP3 MSTORE MSTORE PUSH1 0xB ADD DUP1 SLOAD PUSH1 0xA0 SWAP1 SWAP3 ADD SWAP2 PUSH2 0x1275 SWAP1 PUSH2 0x3267 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x12A1 SWAP1 PUSH2 0x3267 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x12EE JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x12C3 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x12EE JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x12D1 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP1 DUP6 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0xD ADD SLOAD DUP2 MSTORE POP SWAP1 POP DUP1 DUP5 DUP7 DUP2 MLOAD DUP2 LT PUSH2 0x1338 JUMPI PUSH2 0x1338 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MSTORE PUSH2 0x134E PUSH1 0x1 DUP7 PUSH2 0x3212 JUMP JUMPDEST SWAP5 POP POP JUMPDEST POP DUP1 PUSH2 0x135D DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x104D JUMP JUMPDEST POP SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 CALLER DUP5 MSTORE PUSH1 0x9 ADD SWAP1 SWAP2 MSTORE SWAP1 KECCAK256 SLOAD PUSH1 0xFF AND PUSH1 0x1 EQ SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xD ADD SLOAD ISZERO PUSH2 0x1408 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD DUP2 SWAP1 MSTORE PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x4F7267616E697A6174696F6E20616C7265616479207265676973746572656421 PUSH1 0x44 DUP3 ADD MSTORE PUSH1 0x64 ADD JUMPDEST PUSH1 0x40 MLOAD DUP1 SWAP2 SUB SWAP1 REVERT JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND SWAP1 SWAP2 OR DUP2 SSTORE PUSH1 0x1 ADD PUSH2 0x143E DUP6 DUP3 PUSH2 0x32EF JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x2 ADD PUSH2 0x1464 DUP5 DUP3 PUSH2 0x32EF JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xB ADD PUSH2 0x148A DUP4 DUP3 PUSH2 0x32EF JUMP JUMPDEST POP PUSH2 0x1498 DUP2 PUSH3 0x2A300 PUSH2 0x3212 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP7 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xD ADD SSTORE PUSH2 0x14BD DUP6 PUSH2 0x28D9 JUMP JUMPDEST PUSH2 0x14C8 SWAP1 PUSH1 0x1 PUSH2 0x3212 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP6 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x5 ADD SWAP7 SWAP1 SWAP7 SSTORE PUSH1 0x4 DUP1 SLOAD PUSH1 0x1 DUP2 ADD DUP3 SSTORE SWAP7 MSTORE PUSH32 0x8A35ACFBC15FF81A39AE7D344FD709F28E8600B4AA8C65C6B64BFE7FE36BD19B SWAP1 SWAP6 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND SWAP1 SWAP6 OR SWAP1 SWAP5 SSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xE PUSH1 0x20 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x7 ADD SLOAD PUSH1 0xFF AND ISZERO ISZERO SWAP1 SUB PUSH2 0x94D JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x6 ADD DUP1 SLOAD PUSH1 0xFF NOT AND SWAP1 SSTORE PUSH1 0x9 DUP1 SLOAD PUSH1 0x1 SWAP3 SWAP1 PUSH2 0x158D SWAP1 DUP5 SWAP1 PUSH2 0x323B JUMP JUMPDEST SWAP1 SWAP2 SSTORE POP POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 DUP2 KECCAK256 DUP1 SLOAD PUSH1 0xFF NOT AND SWAP1 SSTORE DUP1 JUMPDEST PUSH1 0x4 SLOAD DUP2 LT ISZERO PUSH2 0x16F2 JUMPI PUSH1 0x0 DUP1 PUSH1 0x4 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x15D4 JUMPI PUSH2 0x15D4 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0x6 ADD SLOAD PUSH1 0xFF AND DUP1 ISZERO PUSH2 0x1647 JUMPI POP PUSH1 0x0 DUP1 PUSH1 0x4 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x161C JUMPI PUSH2 0x161C PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xC ADD SLOAD DUP3 LT JUMPDEST ISZERO PUSH2 0x16E0 JUMPI PUSH1 0x0 DUP1 PUSH1 0x4 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x1662 JUMPI PUSH2 0x1662 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xC ADD SLOAD PUSH1 0x4 DUP1 SLOAD SWAP2 SWAP4 POP PUSH1 0x6 SWAP2 DUP4 SWAP1 DUP2 LT PUSH2 0x16A4 JUMPI PUSH2 0x16A4 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD DUP4 SLOAD PUSH1 0x1 DUP2 ADD DUP6 SSTORE SWAP4 DUP4 MSTORE SWAP2 KECCAK256 SWAP1 SWAP2 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP3 AND SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE JUMPDEST DUP1 PUSH2 0x16EA DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x15B4 JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST PUSH1 0x6 SLOAD DUP2 LT ISZERO PUSH2 0x1712 JUMPI DUP1 PUSH2 0x170A DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x16F6 JUMP JUMPDEST POP PUSH1 0x6 SLOAD PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0xFD7 JUMPI PUSH1 0x6 DUP1 SLOAD DUP1 PUSH2 0x1732 JUMPI PUSH2 0x1732 PUSH2 0x33AF JUMP JUMPDEST PUSH1 0x0 DUP3 DUP2 MSTORE PUSH1 0x20 SWAP1 KECCAK256 DUP2 ADD PUSH1 0x0 NOT SWAP1 DUP2 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND SWAP1 SSTORE ADD SWAP1 SSTORE DUP1 PUSH2 0x175E DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x1719 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0xD ADD SLOAD DUP3 GT ISZERO PUSH2 0x1791 JUMPI POP PUSH1 0x1 PUSH2 0x1795 JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0xE PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP3 KECCAK256 DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND SWAP1 SWAP4 OR DUP4 SSTORE PUSH1 0x8 SWAP1 SWAP3 ADD DUP1 SLOAD PUSH1 0x1 DUP2 ADD DUP3 SSTORE SWAP1 DUP3 MSTORE SWAP2 SWAP1 KECCAK256 ADD PUSH2 0x17E4 DUP4 DUP3 PUSH2 0x32EF JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xE PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x5 ADD DUP2 SWAP1 SSTORE PUSH2 0x1810 DUP2 PUSH3 0x69780 PUSH2 0x3212 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xE PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x6 ADD SWAP3 SWAP1 SWAP3 SSTORE POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xD PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x3 ADD SLOAD PUSH2 0x185B SWAP1 PUSH1 0x1 PUSH2 0x3212 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xD PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP3 KECCAK256 PUSH1 0x3 DUP2 ADD SWAP4 SWAP1 SWAP4 SSTORE PUSH1 0x5 SWAP1 SWAP3 ADD DUP1 SLOAD PUSH1 0x1 DUP2 ADD DUP3 SSTORE SWAP1 DUP3 MSTORE SWAP2 SWAP1 KECCAK256 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND CALLER OR SWAP1 SSTORE JUMP JUMPDEST PUSH1 0x4 SLOAD PUSH1 0x8 SLOAD PUSH1 0x60 SWAP2 SWAP1 PUSH1 0x0 SWAP1 DUP2 SWAP1 PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x18CB JUMPI PUSH2 0x18CB PUSH2 0x2F6E JUMP JUMPDEST PUSH1 0x40 MLOAD SWAP1 DUP1 DUP3 MSTORE DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD DUP3 ADD PUSH1 0x40 MSTORE DUP1 ISZERO PUSH2 0x1904 JUMPI DUP2 PUSH1 0x20 ADD JUMPDEST PUSH2 0x18F1 PUSH2 0x2CFC JUMP JUMPDEST DUP2 MSTORE PUSH1 0x20 ADD SWAP1 PUSH1 0x1 SWAP1 SUB SWAP1 DUP2 PUSH2 0x18E9 JUMPI SWAP1 POP JUMPDEST POP SWAP1 POP PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x1365 JUMPI PUSH1 0x0 PUSH1 0x4 DUP3 DUP2 SLOAD DUP2 LT PUSH2 0x1927 JUMPI PUSH2 0x1927 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP1 DUP4 MSTORE SWAP1 DUP3 SWAP1 MSTORE PUSH1 0x40 SWAP1 SWAP2 KECCAK256 PUSH1 0x6 ADD SLOAD SWAP1 SWAP2 POP PUSH1 0xFF AND ISZERO PUSH2 0x1BA8 JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP1 DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 DUP2 MLOAD PUSH2 0x120 DUP2 ADD SWAP1 SWAP3 MSTORE DUP1 SLOAD SWAP1 SWAP5 AND DUP2 MSTORE PUSH1 0x1 DUP5 ADD DUP1 SLOAD SWAP2 SWAP3 DUP4 ADD SWAP2 PUSH2 0x1998 SWAP1 PUSH2 0x3267 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x19C4 SWAP1 PUSH2 0x3267 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x1A11 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x19E6 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x1A11 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x19F4 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD DUP4 PUSH1 0x2 ADD DUP1 SLOAD PUSH2 0x1A2A SWAP1 PUSH2 0x3267 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x1A56 SWAP1 PUSH2 0x3267 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x1AA3 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x1A78 JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x1AA3 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x1A86 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP SWAP2 DUP4 MSTORE POP POP PUSH1 0x3 DUP5 ADD SLOAD PUSH1 0x20 DUP3 ADD MSTORE PUSH1 0x4 DUP5 ADD SLOAD PUSH1 0x40 DUP3 ADD MSTORE PUSH1 0x5 DUP5 ADD SLOAD PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x6 DUP5 ADD SLOAD PUSH1 0xFF AND ISZERO ISZERO PUSH1 0x80 DUP3 ADD MSTORE PUSH1 0xB DUP5 ADD DUP1 SLOAD PUSH1 0xA0 SWAP1 SWAP3 ADD SWAP2 PUSH2 0x1AED SWAP1 PUSH2 0x3267 JUMP JUMPDEST DUP1 PUSH1 0x1F ADD PUSH1 0x20 DUP1 SWAP2 DIV MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD PUSH2 0x1B19 SWAP1 PUSH2 0x3267 JUMP JUMPDEST DUP1 ISZERO PUSH2 0x1B66 JUMPI DUP1 PUSH1 0x1F LT PUSH2 0x1B3B JUMPI PUSH2 0x100 DUP1 DUP4 SLOAD DIV MUL DUP4 MSTORE SWAP2 PUSH1 0x20 ADD SWAP2 PUSH2 0x1B66 JUMP JUMPDEST DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD DUP2 MSTORE SWAP1 PUSH1 0x1 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x1B49 JUMPI DUP3 SWAP1 SUB PUSH1 0x1F AND DUP3 ADD SWAP2 JUMPDEST POP POP POP POP POP DUP2 MSTORE PUSH1 0x20 ADD DUP4 PUSH1 0xD ADD SLOAD DUP2 MSTORE POP SWAP1 POP DUP1 DUP6 DUP8 DUP2 MLOAD DUP2 LT PUSH2 0x1B8D JUMPI PUSH2 0x1B8D PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x20 SWAP1 DUP2 MUL SWAP2 SWAP1 SWAP2 ADD ADD MSTORE PUSH2 0x1BA3 PUSH1 0x1 DUP8 PUSH2 0x3212 JUMP JUMPDEST SWAP6 POP POP POP JUMPDEST POP DUP1 PUSH2 0x1BB3 DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x190A JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x6 ADD DUP1 SLOAD PUSH1 0xFF NOT AND PUSH1 0x1 SWAP1 DUP2 OR SWAP1 SWAP2 SSTORE PUSH1 0x9 DUP1 SLOAD SWAP2 SWAP3 SWAP1 SWAP2 PUSH2 0x1BF7 SWAP1 DUP5 SWAP1 PUSH2 0x3212 JUMP JUMPDEST SWAP1 SWAP2 SSTORE POP POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 DUP1 SLOAD PUSH1 0xFF NOT AND PUSH1 0x1 OR SWAP1 SSTORE JUMP JUMPDEST PUSH1 0x0 PUSH1 0x9 SLOAD PUSH1 0x33 PUSH2 0x1C31 SWAP2 SWAP1 PUSH2 0x33C5 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x3 ADD SLOAD PUSH2 0x1C58 SWAP1 PUSH1 0x64 PUSH2 0x33C5 JUMP JUMPDEST LT PUSH2 0x1C65 JUMPI POP PUSH1 0x1 SWAP2 SWAP1 POP JUMP JUMPDEST POP PUSH1 0x0 SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xD PUSH1 0x20 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x4 DUP2 ADD SLOAD PUSH1 0x3 SWAP1 SWAP2 ADD SLOAD PUSH2 0x1C9A SWAP2 SWAP1 PUSH2 0x3212 JUMP JUMPDEST SWAP1 POP PUSH2 0x1CA7 DUP2 PUSH1 0x33 PUSH2 0x33C5 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xD PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x3 ADD SLOAD PUSH2 0x1CCE SWAP1 PUSH1 0x64 PUSH2 0x33C5 JUMP JUMPDEST LT PUSH2 0x1CFE JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xD PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xB ADD DUP1 SLOAD PUSH1 0xFF NOT AND PUSH1 0x1 OR SWAP1 SSTORE PUSH2 0x94B JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xD PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xB ADD DUP1 SLOAD PUSH1 0xFF NOT AND SWAP1 SSTORE JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xE PUSH1 0x20 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x2 DUP2 ADD SLOAD PUSH1 0x1 SWAP1 SWAP2 ADD SLOAD PUSH2 0x1D50 SWAP2 SWAP1 PUSH2 0x3212 JUMP JUMPDEST SWAP1 POP PUSH2 0x1D5D DUP2 PUSH1 0x33 PUSH2 0x33C5 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xE PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x1 ADD SLOAD PUSH2 0x1D84 SWAP1 PUSH1 0x64 PUSH2 0x33C5 JUMP JUMPDEST LT PUSH2 0x1DB4 JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xE PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x7 ADD DUP1 SLOAD PUSH1 0xFF NOT AND PUSH1 0x1 OR SWAP1 SSTORE PUSH2 0x94B JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xE PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x7 ADD DUP1 SLOAD PUSH1 0xFF NOT AND SWAP1 SSTORE JUMP JUMPDEST PUSH1 0x5 SLOAD PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x1E2C JUMPI PUSH1 0x5 DUP1 SLOAD DUP1 PUSH2 0x1DF8 JUMPI PUSH2 0x1DF8 PUSH2 0x33AF JUMP JUMPDEST PUSH1 0x0 DUP3 DUP2 MSTORE PUSH1 0x20 SWAP1 KECCAK256 DUP2 ADD PUSH1 0x0 NOT SWAP1 DUP2 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND SWAP1 SSTORE ADD SWAP1 SSTORE DUP1 PUSH2 0x1E24 DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x1DDF JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x7 ADD SLOAD DUP2 LT ISZERO PUSH2 0x1ECB JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x7 ADD DUP1 SLOAD PUSH1 0x3 SWAP2 DUP4 SWAP2 DUP6 SWAP1 DUP2 LT PUSH2 0x1E85 JUMPI PUSH2 0x1E85 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP2 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 DUP1 SLOAD PUSH1 0xFF NOT AND SWAP2 ISZERO ISZERO SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE DUP1 PUSH2 0x1EC3 DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x1E30 JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x8 ADD SLOAD DUP2 LT ISZERO PUSH2 0x1F6A JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x8 ADD DUP1 SLOAD PUSH1 0x3 SWAP2 DUP4 SWAP2 DUP6 SWAP1 DUP2 LT PUSH2 0x1F24 JUMPI PUSH2 0x1F24 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP2 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 DUP1 SLOAD PUSH1 0xFF NOT AND SWAP2 ISZERO ISZERO SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE DUP1 PUSH2 0x1F62 DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x1ECF JUMP JUMPDEST POP POP POP JUMP JUMPDEST PUSH1 0xC SLOAD PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x94B JUMPI PUSH1 0xC DUP1 SLOAD DUP1 PUSH2 0x1F8E JUMPI PUSH2 0x1F8E PUSH2 0x33AF JUMP JUMPDEST PUSH1 0x0 DUP3 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0xF PUSH1 0x0 NOT SWAP1 SWAP4 ADD SWAP3 DUP4 MUL ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND DUP2 SSTORE SWAP1 PUSH2 0x1FBF PUSH1 0x1 DUP4 ADD DUP3 PUSH2 0x2D53 JUMP JUMPDEST PUSH2 0x1FCD PUSH1 0x2 DUP4 ADD PUSH1 0x0 PUSH2 0x2D53 JUMP JUMPDEST PUSH1 0x0 PUSH1 0x3 DUP4 ADD DUP2 SWAP1 SSTORE PUSH1 0x4 DUP4 ADD DUP2 SWAP1 SSTORE PUSH1 0x5 DUP4 ADD DUP2 SWAP1 SSTORE PUSH1 0x6 DUP4 ADD DUP1 SLOAD PUSH1 0xFF NOT AND SWAP1 SSTORE PUSH2 0x1FFE SWAP1 PUSH1 0x7 DUP5 ADD SWAP1 PUSH2 0x2D8D JUMP JUMPDEST PUSH2 0x200C PUSH1 0x8 DUP4 ADD PUSH1 0x0 PUSH2 0x2D8D JUMP JUMPDEST PUSH1 0xA DUP3 ADD PUSH1 0x0 SWAP1 SSTORE PUSH1 0xB DUP3 ADD PUSH1 0x0 PUSH2 0x2024 SWAP2 SWAP1 PUSH2 0x2D53 JUMP JUMPDEST POP PUSH1 0x0 PUSH1 0xC DUP3 ADD DUP2 SWAP1 SSTORE PUSH1 0xD DUP3 ADD SSTORE PUSH1 0xE ADD DUP1 SLOAD PUSH1 0xFF NOT AND SWAP1 SSTORE SWAP1 SSTORE DUP1 PUSH2 0x204A DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x1F75 JUMP JUMPDEST PUSH1 0x60 PUSH1 0x0 JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x7 ADD SLOAD DUP2 LT ISZERO PUSH2 0x20FE JUMPI PUSH1 0x1 PUSH1 0x3 PUSH1 0x0 DUP1 PUSH1 0x0 DUP8 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x7 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x20B8 JUMPI PUSH2 0x20B8 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP2 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 DUP1 SLOAD PUSH1 0xFF NOT AND SWAP2 ISZERO ISZERO SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE DUP1 PUSH2 0x20F6 DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x2057 JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x8 ADD SLOAD DUP2 LT ISZERO PUSH2 0x21A9 JUMPI PUSH1 0x1 PUSH1 0x3 PUSH1 0x0 DUP1 PUSH1 0x0 DUP8 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 MSTORE PUSH1 0x20 ADD SWAP1 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 KECCAK256 PUSH1 0x8 ADD DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x2163 JUMPI PUSH2 0x2163 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP2 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 DUP1 SLOAD PUSH1 0xFF NOT AND SWAP2 ISZERO ISZERO SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE DUP1 PUSH2 0x21A1 DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x2102 JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST PUSH1 0x4 SLOAD DUP2 LT ISZERO PUSH2 0x2261 JUMPI PUSH1 0x3 PUSH1 0x0 PUSH1 0x4 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x21CE JUMPI PUSH2 0x21CE PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD DUP2 KECCAK256 SLOAD PUSH1 0xFF AND ISZERO ISZERO SWAP1 SUB PUSH2 0x224F JUMPI PUSH1 0x5 PUSH1 0x4 DUP3 DUP2 SLOAD DUP2 LT PUSH2 0x2213 JUMPI PUSH2 0x2213 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD DUP4 SLOAD PUSH1 0x1 DUP2 ADD DUP6 SSTORE SWAP4 DUP4 MSTORE SWAP2 KECCAK256 SWAP1 SWAP2 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP3 AND SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE JUMPDEST DUP1 PUSH2 0x2259 DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x21AD JUMP JUMPDEST POP PUSH1 0x5 DUP1 SLOAD DUP1 PUSH1 0x20 MUL PUSH1 0x20 ADD PUSH1 0x40 MLOAD SWAP1 DUP2 ADD PUSH1 0x40 MSTORE DUP1 SWAP3 SWAP2 SWAP1 DUP2 DUP2 MSTORE PUSH1 0x20 ADD DUP3 DUP1 SLOAD DUP1 ISZERO PUSH2 0x22B8 JUMPI PUSH1 0x20 MUL DUP3 ADD SWAP2 SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 JUMPDEST DUP2 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 MSTORE PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 PUSH1 0x20 ADD DUP1 DUP4 GT PUSH2 0x229A JUMPI JUMPDEST POP POP POP POP POP SWAP1 POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0xD PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND SWAP1 SWAP2 OR DUP2 SSTORE PUSH1 0x1 ADD PUSH2 0x22FA DUP5 DUP3 PUSH2 0x32EF JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xD PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x2 ADD PUSH2 0x2320 DUP4 DUP3 PUSH2 0x32EF JUMP JUMPDEST POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xD PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x9 ADD DUP2 SWAP1 SSTORE PUSH2 0x234C DUP2 PUSH3 0x69780 PUSH2 0x3212 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP6 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xD PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xA ADD SSTORE PUSH1 0xB SLOAD PUSH2 0x2376 SWAP1 PUSH1 0x1 PUSH2 0x3212 JUMP JUMPDEST PUSH1 0xB SSTORE POP POP POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xD PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xB ADD SLOAD PUSH1 0xFF AND ISZERO ISZERO PUSH1 0x1 SUB PUSH2 0x94D JUMPI PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x6 ADD DUP1 SLOAD PUSH1 0xFF NOT AND SWAP1 SSTORE PUSH1 0x9 DUP1 SLOAD PUSH1 0x1 SWAP3 SWAP1 PUSH2 0x23DD SWAP1 DUP5 SWAP1 PUSH2 0x323B JUMP JUMPDEST SWAP1 SWAP2 SSTORE POP POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x2 PUSH1 0x20 MSTORE PUSH1 0x40 DUP2 KECCAK256 DUP1 SLOAD PUSH1 0xFF NOT AND SWAP1 SSTORE DUP1 JUMPDEST PUSH1 0x4 SLOAD DUP2 LT ISZERO PUSH2 0x2542 JUMPI PUSH1 0x0 DUP1 PUSH1 0x4 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x2424 JUMPI PUSH2 0x2424 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0x6 ADD SLOAD PUSH1 0xFF AND DUP1 ISZERO PUSH2 0x2497 JUMPI POP PUSH1 0x0 DUP1 PUSH1 0x4 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x246C JUMPI PUSH2 0x246C PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xC ADD SLOAD DUP3 LT JUMPDEST ISZERO PUSH2 0x2530 JUMPI PUSH1 0x0 DUP1 PUSH1 0x4 DUP4 DUP2 SLOAD DUP2 LT PUSH2 0x24B2 JUMPI PUSH2 0x24B2 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xC ADD SLOAD PUSH1 0x4 DUP1 SLOAD SWAP2 SWAP4 POP PUSH1 0x6 SWAP2 DUP4 SWAP1 DUP2 LT PUSH2 0x24F4 JUMPI PUSH2 0x24F4 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD DUP4 SLOAD PUSH1 0x1 DUP2 ADD DUP6 SSTORE SWAP4 DUP4 MSTORE SWAP2 KECCAK256 SWAP1 SWAP2 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP3 AND SWAP2 SWAP1 SWAP2 OR SWAP1 SSTORE JUMPDEST DUP1 PUSH2 0x253A DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x2404 JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST PUSH1 0x6 SLOAD DUP2 LT ISZERO PUSH2 0x2562 JUMPI DUP1 PUSH2 0x255A DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x2546 JUMP JUMPDEST POP PUSH1 0x6 SLOAD PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0xFD7 JUMPI PUSH1 0x6 DUP1 SLOAD DUP1 PUSH2 0x2582 JUMPI PUSH2 0x2582 PUSH2 0x33AF JUMP JUMPDEST PUSH1 0x0 DUP3 DUP2 MSTORE PUSH1 0x20 SWAP1 KECCAK256 DUP2 ADD PUSH1 0x0 NOT SWAP1 DUP2 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND SWAP1 SSTORE ADD SWAP1 SSTORE DUP1 PUSH2 0x25AE DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x2569 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xE PUSH1 0x20 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x1 SWAP1 DUP2 ADD SLOAD PUSH2 0x25DD SWAP2 PUSH2 0x3212 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB SWAP1 SWAP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xE PUSH1 0x20 SWAP1 DUP2 MSTORE PUSH1 0x40 DUP3 KECCAK256 PUSH1 0x1 DUP1 DUP3 ADD SWAP5 SWAP1 SWAP5 SSTORE PUSH1 0x3 ADD DUP1 SLOAD SWAP4 DUP5 ADD DUP2 SSTORE DUP3 MSTORE SWAP1 KECCAK256 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND CALLER OR SWAP1 SSTORE JUMP JUMPDEST PUSH1 0x0 JUMPDEST PUSH1 0x5 SLOAD DUP2 LT ISZERO PUSH2 0x94D JUMPI PUSH1 0xA SLOAD PUSH1 0x0 DUP1 PUSH1 0x5 DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x2648 JUMPI PUSH2 0x2648 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xA ADD SLOAD PUSH2 0x267A SWAP2 SWAP1 PUSH2 0x323B JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x5 DUP5 DUP2 SLOAD DUP2 LT PUSH2 0x2690 JUMPI PUSH2 0x2690 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xA ADD SSTORE DUP1 PUSH2 0x26C2 DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x2625 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 CALLER DUP5 MSTORE PUSH1 0x9 ADD SWAP1 SWAP2 MSTORE SWAP1 KECCAK256 SLOAD PUSH1 0xFF AND PUSH1 0x2 EQ SWAP1 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0xD ADD SLOAD DUP4 SWAP1 DUP3 SUB PUSH2 0x2733 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x13FF SWAP1 PUSH2 0x33DC JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x6 ADD SLOAD PUSH1 0xFF AND ISZERO PUSH2 0x279F JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x1E PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x4F7267616E697A6174696F6E20616C7265616479207665726966696564210000 PUSH1 0x44 DUP3 ADD MSTORE PUSH1 0x64 ADD PUSH2 0x13FF JUMP JUMPDEST CALLER PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xD ADD SLOAD ISZERO DUP1 ISZERO SWAP1 PUSH2 0x27D2 JUMPI POP CALLER PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x6 ADD SLOAD PUSH1 0xFF AND JUMPDEST PUSH2 0x27EE JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x13FF SWAP1 PUSH2 0x3420 JUMP JUMPDEST PUSH2 0x27F7 DUP2 PUSH2 0x26CA JUMP JUMPDEST ISZERO DUP1 ISZERO PUSH2 0x280A JUMPI POP PUSH2 0x2808 DUP2 PUSH2 0x136D JUMP JUMPDEST ISZERO JUMPDEST PUSH2 0x2826 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x13FF SWAP1 PUSH2 0x347D JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x3 ADD DUP1 SLOAD PUSH1 0x1 SWAP3 SWAP1 PUSH2 0x2852 SWAP1 DUP5 SWAP1 PUSH2 0x3212 JUMP JUMPDEST SWAP1 SWAP2 SSTORE POP POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 PUSH1 0x7 DUP2 ADD DUP1 SLOAD PUSH1 0x1 DUP2 ADD DUP3 SSTORE SWAP1 DUP6 MSTORE DUP4 DUP6 KECCAK256 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND CALLER SWAP1 DUP2 OR SWAP1 SWAP2 SSTORE DUP5 MSTORE PUSH1 0x9 ADD SWAP1 SWAP2 MSTORE SWAP1 KECCAK256 DUP1 SLOAD PUSH1 0xFF NOT AND PUSH1 0x2 OR SWAP1 SSTORE PUSH2 0x28B5 DUP5 DUP5 PUSH2 0x1766 JUMP JUMPDEST ISZERO PUSH2 0x28CD JUMPI PUSH2 0x28C3 DUP5 PUSH2 0x1C20 JUMP JUMPDEST POP PUSH1 0x1 SWAP2 POP PUSH2 0x28D2 JUMP JUMPDEST PUSH1 0x0 SWAP2 POP JUMPDEST POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x4 DUP2 ADD SLOAD PUSH1 0x3 SWAP1 SWAP2 ADD SLOAD PUSH1 0x9 SLOAD PUSH2 0x2909 SWAP2 SWAP1 PUSH2 0x323B JUMP JUMPDEST PUSH2 0x1795 SWAP2 SWAP1 PUSH2 0x323B JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0xE PUSH1 0x20 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x7 ADD SLOAD PUSH1 0xFF AND ISZERO ISZERO SWAP1 SUB PUSH2 0x94D JUMPI PUSH1 0x0 JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x7 ADD SLOAD DUP2 LT ISZERO PUSH2 0x2A2F JUMPI PUSH1 0xA SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x7 ADD DUP1 SLOAD DUP3 SWAP2 SWAP1 DUP6 SWAP1 DUP2 LT PUSH2 0x2993 JUMPI PUSH2 0x2993 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xA ADD SLOAD PUSH2 0x29C5 SWAP2 SWAP1 PUSH2 0x323B JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x7 ADD DUP1 SLOAD DUP3 SWAP2 SWAP1 DUP6 SWAP1 DUP2 LT PUSH2 0x29F5 JUMPI PUSH2 0x29F5 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xA ADD SSTORE DUP1 PUSH2 0x2A27 DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x293D JUMP JUMPDEST POP PUSH1 0x0 JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x8 ADD SLOAD DUP2 LT ISZERO PUSH2 0x94B JUMPI PUSH1 0xA SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x8 ADD DUP1 SLOAD DUP3 SWAP2 SWAP1 DUP6 SWAP1 DUP2 LT PUSH2 0x2A89 JUMPI PUSH2 0x2A89 PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xA ADD SLOAD PUSH2 0x2ABB SWAP2 SWAP1 PUSH2 0x3212 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP4 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x8 ADD DUP1 SLOAD DUP3 SWAP2 SWAP1 DUP6 SWAP1 DUP2 LT PUSH2 0x2AEB JUMPI PUSH2 0x2AEB PUSH2 0x3225 JUMP JUMPDEST PUSH1 0x0 SWAP2 DUP3 MSTORE PUSH1 0x20 DUP1 DUP4 KECCAK256 SWAP1 SWAP2 ADD SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE DUP3 ADD SWAP3 SWAP1 SWAP3 MSTORE PUSH1 0x40 ADD SWAP1 KECCAK256 PUSH1 0xA ADD SSTORE DUP1 PUSH2 0x2B1D DUP2 PUSH2 0x324E JUMP JUMPDEST SWAP2 POP POP PUSH2 0x2A33 JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP3 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0xD ADD SLOAD DUP4 SWAP1 DUP3 SUB PUSH2 0x2B61 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x13FF SWAP1 PUSH2 0x33DC JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x6 ADD SLOAD PUSH1 0xFF AND ISZERO PUSH2 0x2BCD JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x20 PUSH1 0x4 DUP3 ADD MSTORE PUSH1 0x1E PUSH1 0x24 DUP3 ADD MSTORE PUSH32 0x4F7267616E697A6174696F6E20616C7265616479207665726966696564210000 PUSH1 0x44 DUP3 ADD MSTORE PUSH1 0x64 ADD PUSH2 0x13FF JUMP JUMPDEST CALLER PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0xD ADD SLOAD ISZERO DUP1 ISZERO SWAP1 PUSH2 0x2C00 JUMPI POP CALLER PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 SWAP1 KECCAK256 PUSH1 0x6 ADD SLOAD PUSH1 0xFF AND JUMPDEST PUSH2 0x2C1C JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x13FF SWAP1 PUSH2 0x3420 JUMP JUMPDEST PUSH2 0x2C25 DUP2 PUSH2 0x26CA JUMP JUMPDEST ISZERO DUP1 ISZERO PUSH2 0x2C38 JUMPI POP PUSH2 0x2C36 DUP2 PUSH2 0x136D JUMP JUMPDEST ISZERO JUMPDEST PUSH2 0x2C54 JUMPI PUSH1 0x40 MLOAD PUSH3 0x461BCD PUSH1 0xE5 SHL DUP2 MSTORE PUSH1 0x4 ADD PUSH2 0x13FF SWAP1 PUSH2 0x347D JUMP JUMPDEST PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 SWAP1 MSTORE PUSH1 0x40 DUP2 KECCAK256 PUSH1 0x4 ADD DUP1 SLOAD PUSH1 0x1 SWAP3 SWAP1 PUSH2 0x2C80 SWAP1 DUP5 SWAP1 PUSH2 0x3212 JUMP JUMPDEST SWAP1 SWAP2 SSTORE POP POP PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP5 AND PUSH1 0x0 SWAP1 DUP2 MSTORE PUSH1 0x20 DUP2 DUP2 MSTORE PUSH1 0x40 DUP1 DUP4 KECCAK256 PUSH1 0x8 DUP2 ADD DUP1 SLOAD PUSH1 0x1 DUP2 DUP2 ADD DUP4 SSTORE SWAP2 DUP7 MSTORE DUP5 DUP7 KECCAK256 ADD DUP1 SLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB NOT AND CALLER SWAP1 DUP2 OR SWAP1 SWAP2 SSTORE DUP6 MSTORE PUSH1 0x9 SWAP1 SWAP2 ADD SWAP1 SWAP3 MSTORE SWAP1 SWAP2 KECCAK256 DUP1 SLOAD PUSH1 0xFF NOT AND SWAP1 SWAP2 OR SWAP1 SSTORE PUSH2 0x2CE7 DUP5 DUP5 PUSH2 0x1766 JUMP JUMPDEST ISZERO PUSH2 0x28CD JUMPI PUSH2 0x2CF5 DUP5 PUSH2 0x1C20 JUMP JUMPDEST SWAP2 POP PUSH2 0x28D2 JUMP JUMPDEST PUSH1 0x40 MLOAD DUP1 PUSH2 0x120 ADD PUSH1 0x40 MSTORE DUP1 PUSH1 0x0 PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 ISZERO ISZERO DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x60 DUP2 MSTORE PUSH1 0x20 ADD PUSH1 0x0 DUP2 MSTORE POP SWAP1 JUMP JUMPDEST POP DUP1 SLOAD PUSH2 0x2D5F SWAP1 PUSH2 0x3267 JUMP JUMPDEST PUSH1 0x0 DUP3 SSTORE DUP1 PUSH1 0x1F LT PUSH2 0x2D6F JUMPI POP POP JUMP JUMPDEST PUSH1 0x1F ADD PUSH1 0x20 SWAP1 DIV SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 DUP2 ADD SWAP1 PUSH2 0x94D SWAP2 SWAP1 PUSH2 0x2DA7 JUMP JUMPDEST POP DUP1 SLOAD PUSH1 0x0 DUP3 SSTORE SWAP1 PUSH1 0x0 MSTORE PUSH1 0x20 PUSH1 0x0 KECCAK256 SWAP1 DUP2 ADD SWAP1 PUSH2 0x94D SWAP2 SWAP1 JUMPDEST JUMPDEST DUP1 DUP3 GT ISZERO PUSH2 0x2DBC JUMPI PUSH1 0x0 DUP2 SSTORE PUSH1 0x1 ADD PUSH2 0x2DA8 JUMP JUMPDEST POP SWAP1 JUMP JUMPDEST DUP1 CALLDATALOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB DUP2 AND DUP2 EQ PUSH2 0x2DD7 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP3 DUP5 SUB SLT ISZERO PUSH2 0x2DEE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2DF7 DUP3 PUSH2 0x2DC0 JUMP JUMPDEST SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x2E11 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x2E1A DUP4 PUSH2 0x2DC0 JUMP JUMPDEST SWAP2 POP PUSH1 0x20 DUP4 ADD CALLDATALOAD DUP1 ISZERO ISZERO DUP2 EQ PUSH2 0x2E2F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP1 SWAP2 POP POP SWAP3 POP SWAP3 SWAP1 POP JUMP JUMPDEST PUSH1 0x0 DUP2 MLOAD DUP1 DUP5 MSTORE PUSH1 0x0 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x2E60 JUMPI PUSH1 0x20 DUP2 DUP6 ADD DUP2 ADD MLOAD DUP7 DUP4 ADD DUP3 ADD MSTORE ADD PUSH2 0x2E44 JUMP JUMPDEST POP PUSH1 0x0 PUSH1 0x20 DUP3 DUP7 ADD ADD MSTORE PUSH1 0x20 PUSH1 0x1F NOT PUSH1 0x1F DUP4 ADD AND DUP6 ADD ADD SWAP2 POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 PUSH1 0x20 DUP1 DUP4 ADD DUP2 DUP5 MSTORE DUP1 DUP6 MLOAD DUP1 DUP4 MSTORE PUSH1 0x40 SWAP3 POP DUP3 DUP7 ADD SWAP2 POP DUP3 DUP2 PUSH1 0x5 SHL DUP8 ADD ADD DUP5 DUP9 ADD PUSH1 0x0 JUMPDEST DUP4 DUP2 LT ISZERO PUSH2 0x2F60 JUMPI DUP9 DUP4 SUB PUSH1 0x3F NOT ADD DUP6 MSTORE DUP2 MLOAD DUP1 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP5 MSTORE PUSH2 0x120 DUP9 DUP3 ADD MLOAD DUP2 DUP11 DUP8 ADD MSTORE PUSH2 0x2EDF DUP3 DUP8 ADD DUP3 PUSH2 0x2E3A JUMP JUMPDEST SWAP2 POP POP DUP8 DUP3 ADD MLOAD DUP6 DUP3 SUB DUP10 DUP8 ADD MSTORE PUSH2 0x2EF7 DUP3 DUP3 PUSH2 0x2E3A JUMP JUMPDEST PUSH1 0x60 DUP5 DUP2 ADD MLOAD SWAP1 DUP9 ADD MSTORE PUSH1 0x80 DUP1 DUP6 ADD MLOAD SWAP1 DUP9 ADD MSTORE PUSH1 0xA0 DUP1 DUP6 ADD MLOAD SWAP1 DUP9 ADD MSTORE PUSH1 0xC0 DUP1 DUP6 ADD MLOAD ISZERO ISZERO SWAP1 DUP9 ADD MSTORE PUSH1 0xE0 DUP1 DUP6 ADD MLOAD DUP9 DUP4 SUB DUP3 DUP11 ADD MSTORE SWAP2 SWAP4 POP SWAP2 POP PUSH2 0x2F3D DUP4 DUP3 PUSH2 0x2E3A JUMP JUMPDEST PUSH2 0x100 SWAP5 DUP6 ADD MLOAD SWAP8 SWAP1 SWAP5 ADD SWAP7 SWAP1 SWAP7 MSTORE POP POP SWAP5 DUP8 ADD SWAP5 SWAP3 POP SWAP1 DUP7 ADD SWAP1 PUSH1 0x1 ADD PUSH2 0x2EA7 JUMP JUMPDEST POP SWAP1 SWAP9 SWAP8 POP POP POP POP POP POP POP POP JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x41 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST PUSH1 0x0 DUP3 PUSH1 0x1F DUP4 ADD SLT PUSH2 0x2F95 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP2 CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x2FB0 JUMPI PUSH2 0x2FB0 PUSH2 0x2F6E JUMP JUMPDEST PUSH1 0x40 MLOAD PUSH1 0x1F DUP4 ADD PUSH1 0x1F NOT SWAP1 DUP2 AND PUSH1 0x3F ADD AND DUP2 ADD SWAP1 DUP3 DUP3 GT DUP2 DUP4 LT OR ISZERO PUSH2 0x2FD8 JUMPI PUSH2 0x2FD8 PUSH2 0x2F6E JUMP JUMPDEST DUP2 PUSH1 0x40 MSTORE DUP4 DUP2 MSTORE DUP7 PUSH1 0x20 DUP6 DUP9 ADD ADD GT ISZERO PUSH2 0x2FF1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST DUP4 PUSH1 0x20 DUP8 ADD PUSH1 0x20 DUP4 ADD CALLDATACOPY PUSH1 0x0 PUSH1 0x20 DUP6 DUP4 ADD ADD MSTORE DUP1 SWAP5 POP POP POP POP POP SWAP3 SWAP2 POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0xA0 DUP7 DUP9 SUB SLT ISZERO PUSH2 0x3029 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x3032 DUP7 PUSH2 0x2DC0 JUMP JUMPDEST SWAP5 POP PUSH1 0x20 DUP7 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x304F JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x305B DUP10 DUP4 DUP11 ADD PUSH2 0x2F84 JUMP JUMPDEST SWAP6 POP PUSH1 0x40 DUP9 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x3071 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x307D DUP10 DUP4 DUP11 ADD PUSH2 0x2F84 JUMP JUMPDEST SWAP5 POP PUSH1 0x60 DUP9 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x3093 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x30A0 DUP9 DUP3 DUP10 ADD PUSH2 0x2F84 JUMP JUMPDEST SWAP6 SWAP9 SWAP5 SWAP8 POP SWAP3 SWAP6 PUSH1 0x80 ADD CALLDATALOAD SWAP4 SWAP3 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x40 DUP4 DUP6 SUB SLT ISZERO PUSH2 0x30C5 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x30CE DUP4 PUSH2 0x2DC0 JUMP JUMPDEST SWAP5 PUSH1 0x20 SWAP4 SWAP1 SWAP4 ADD CALLDATALOAD SWAP4 POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 PUSH1 0x60 DUP5 DUP7 SUB SLT ISZERO PUSH2 0x30F1 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x30FA DUP5 PUSH2 0x2DC0 JUMP JUMPDEST SWAP3 POP PUSH1 0x20 DUP5 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x3116 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x3122 DUP7 DUP3 DUP8 ADD PUSH2 0x2F84 JUMP JUMPDEST SWAP3 POP POP PUSH1 0x40 DUP5 ADD CALLDATALOAD SWAP1 POP SWAP3 POP SWAP3 POP SWAP3 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE DUP3 MLOAD DUP3 DUP3 ADD DUP2 SWAP1 MSTORE PUSH1 0x0 SWAP2 SWAP1 DUP5 DUP3 ADD SWAP1 PUSH1 0x40 DUP6 ADD SWAP1 DUP5 JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x3174 JUMPI DUP4 MLOAD PUSH1 0x1 PUSH1 0x1 PUSH1 0xA0 SHL SUB AND DUP4 MSTORE SWAP3 DUP5 ADD SWAP3 SWAP2 DUP5 ADD SWAP2 PUSH1 0x1 ADD PUSH2 0x314F JUMP JUMPDEST POP SWAP1 SWAP7 SWAP6 POP POP POP POP POP POP JUMP JUMPDEST PUSH1 0x0 DUP1 PUSH1 0x0 DUP1 PUSH1 0x80 DUP6 DUP8 SUB SLT ISZERO PUSH2 0x3196 JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x319F DUP6 PUSH2 0x2DC0 JUMP JUMPDEST SWAP4 POP PUSH1 0x20 DUP6 ADD CALLDATALOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP1 DUP3 GT ISZERO PUSH2 0x31BC JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST PUSH2 0x31C8 DUP9 DUP4 DUP10 ADD PUSH2 0x2F84 JUMP JUMPDEST SWAP5 POP PUSH1 0x40 DUP8 ADD CALLDATALOAD SWAP2 POP DUP1 DUP3 GT ISZERO PUSH2 0x31DE JUMPI PUSH1 0x0 DUP1 REVERT JUMPDEST POP PUSH2 0x31EB DUP8 DUP3 DUP9 ADD PUSH2 0x2F84 JUMP JUMPDEST SWAP5 SWAP8 SWAP4 SWAP7 POP SWAP4 SWAP5 PUSH1 0x60 ADD CALLDATALOAD SWAP4 POP POP POP JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x11 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST DUP1 DUP3 ADD DUP1 DUP3 GT ISZERO PUSH2 0x1795 JUMPI PUSH2 0x1795 PUSH2 0x31FC JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x32 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST DUP2 DUP2 SUB DUP2 DUP2 GT ISZERO PUSH2 0x1795 JUMPI PUSH2 0x1795 PUSH2 0x31FC JUMP JUMPDEST PUSH1 0x0 PUSH1 0x1 DUP3 ADD PUSH2 0x3260 JUMPI PUSH2 0x3260 PUSH2 0x31FC JUMP JUMPDEST POP PUSH1 0x1 ADD SWAP1 JUMP JUMPDEST PUSH1 0x1 DUP2 DUP2 SHR SWAP1 DUP3 AND DUP1 PUSH2 0x327B JUMPI PUSH1 0x7F DUP3 AND SWAP2 POP JUMPDEST PUSH1 0x20 DUP3 LT DUP2 SUB PUSH2 0x329B JUMPI PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x22 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST POP SWAP2 SWAP1 POP JUMP JUMPDEST PUSH1 0x1F DUP3 GT ISZERO PUSH2 0x1F6A JUMPI PUSH1 0x0 DUP2 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP2 ADD PUSH1 0x20 DUP7 LT ISZERO PUSH2 0x32C8 JUMPI POP DUP1 JUMPDEST PUSH1 0x1F DUP6 ADD PUSH1 0x5 SHR DUP3 ADD SWAP2 POP JUMPDEST DUP2 DUP2 LT ISZERO PUSH2 0x32E7 JUMPI DUP3 DUP2 SSTORE PUSH1 0x1 ADD PUSH2 0x32D4 JUMP JUMPDEST POP POP POP POP POP POP JUMP JUMPDEST DUP2 MLOAD PUSH8 0xFFFFFFFFFFFFFFFF DUP2 GT ISZERO PUSH2 0x3309 JUMPI PUSH2 0x3309 PUSH2 0x2F6E JUMP JUMPDEST PUSH2 0x331D DUP2 PUSH2 0x3317 DUP5 SLOAD PUSH2 0x3267 JUMP JUMPDEST DUP5 PUSH2 0x32A1 JUMP JUMPDEST PUSH1 0x20 DUP1 PUSH1 0x1F DUP4 GT PUSH1 0x1 DUP2 EQ PUSH2 0x3352 JUMPI PUSH1 0x0 DUP5 ISZERO PUSH2 0x333A JUMPI POP DUP6 DUP4 ADD MLOAD JUMPDEST PUSH1 0x0 NOT PUSH1 0x3 DUP7 SWAP1 SHL SHR NOT AND PUSH1 0x1 DUP6 SWAP1 SHL OR DUP6 SSTORE PUSH2 0x32E7 JUMP JUMPDEST PUSH1 0x0 DUP6 DUP2 MSTORE PUSH1 0x20 DUP2 KECCAK256 PUSH1 0x1F NOT DUP7 AND SWAP2 JUMPDEST DUP3 DUP2 LT ISZERO PUSH2 0x3381 JUMPI DUP9 DUP7 ADD MLOAD DUP3 SSTORE SWAP5 DUP5 ADD SWAP5 PUSH1 0x1 SWAP1 SWAP2 ADD SWAP1 DUP5 ADD PUSH2 0x3362 JUMP JUMPDEST POP DUP6 DUP3 LT ISZERO PUSH2 0x339F JUMPI DUP8 DUP6 ADD MLOAD PUSH1 0x0 NOT PUSH1 0x3 DUP9 SWAP1 SHL PUSH1 0xF8 AND SHR NOT AND DUP2 SSTORE JUMPDEST POP POP POP POP POP PUSH1 0x1 SWAP1 DUP2 SHL ADD SWAP1 SSTORE POP JUMP JUMPDEST PUSH4 0x4E487B71 PUSH1 0xE0 SHL PUSH1 0x0 MSTORE PUSH1 0x31 PUSH1 0x4 MSTORE PUSH1 0x24 PUSH1 0x0 REVERT JUMPDEST DUP1 DUP3 MUL DUP2 ISZERO DUP3 DUP3 DIV DUP5 EQ OR PUSH2 0x1795 JUMPI PUSH2 0x1795 PUSH2 0x31FC JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x24 SWAP1 DUP3 ADD MSTORE PUSH32 0x4F7267616E697A6174696F6E206164647265737320646F6573206E6F74206578 PUSH1 0x40 DUP3 ADD MSTORE PUSH4 0x69737421 PUSH1 0xE0 SHL PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x3A SWAP1 DUP3 ADD MSTORE PUSH32 0x566F746572206F7267616E697A6174696F6E206973206E6F7420766572696669 PUSH1 0x40 DUP3 ADD MSTORE PUSH32 0x65642C206E6F74207065726D697474656420746F20766F746521000000000000 PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP JUMPDEST PUSH1 0x20 DUP1 DUP3 MSTORE PUSH1 0x2E SWAP1 DUP3 ADD MSTORE PUSH32 0x566F746572206F7267616E697A6174696F6E2063616E6E6F7420766F7465206D PUSH1 0x40 DUP3 ADD MSTORE PUSH14 0x6F7265207468616E206F6E636521 PUSH1 0x90 SHL PUSH1 0x60 DUP3 ADD MSTORE PUSH1 0x80 ADD SWAP1 JUMP INVALID LOG2 PUSH5 0x6970667358 0x22 SLT KECCAK256 0xDA 0xA6 0xAF OR DUP15 SHL CALLDATASIZE 0xD9 PUSH9 0x1B3304DA3C4EE706CA SHL EXTCODEHASH DIFFICULTY SWAP5 RETURN DUP1 0x2E 0x4D SWAP10 0xE ADDRESS SWAP2 STATICCALL CALLDATALOAD PUSH5 0x736F6C6343 STOP ADDMOD GT STOP CALLER ", + "sourceMap": "96:14609:1:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7158:241;;;;;;;;;;-1:-1:-1;7158:241:1;;;;;:::i;:::-;;:::i;8012:931::-;;;;;;;;;;-1:-1:-1;8012:931:1;;;;;:::i;:::-;;:::i;11312:257::-;;;;;;;;;;-1:-1:-1;11312:257:1;;;;;:::i;:::-;;:::i;1100:2250::-;;;;;;;;;;-1:-1:-1;1100:2250:1;;;;;:::i;:::-;;:::i;5206:1314:0:-;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3240:192;;;;;;;;;;-1:-1:-1;3240:192:0;;;;;:::i;:::-;;:::i;:::-;;;3502:14:2;;3495:22;3477:41;;3465:2;3450:18;3240:192:0;3337:187:2;7704:885:0;;;;;;;;;;-1:-1:-1;7704:885:0;;;;;:::i;:::-;;:::i;13341:1165:1:-;;;;;;;;;;-1:-1:-1;13341:1165:1;;;;;:::i;:::-;;:::i;3543:274:0:-;;;;;;;;;;-1:-1:-1;3543:274:0;;;;;:::i;:::-;;:::i;10399:488:1:-;;;;;;;;;;-1:-1:-1;10399:488:1;;;;;:::i;:::-;;:::i;1202:33:0:-;;;;;;;;;;;;;;;;;;;6151:25:2;;;6139:2;6124:18;1202:33:0;6005:177:2;6844:233:1;;;;;;;;;;-1:-1:-1;6844:233:1;;;;;:::i;:::-;;:::i;2325:129:0:-;;;;;;;;;;-1:-1:-1;2325:129:0;;;;;:::i;:::-;-1:-1:-1;;;;;2415:23:0;2388:7;2415:23;;;;;;;;;;:31;;;;2325:129;3917:1189;;;;;;;;;;;;;:::i;3470:203:1:-;;;;;;;;;;-1:-1:-1;3470:203:1;;;;;:::i;:::-;;:::i;9689:289:0:-;;;;;;;;;;-1:-1:-1;9689:289:0;;;;;:::i;:::-;;:::i;7486:403:1:-;;;;;;;;;;-1:-1:-1;7486:403:1;;;;;:::i;:::-;;:::i;1749:120:0:-;;;;;;;;;;-1:-1:-1;1830:10:0;1792:4;1816:25;;;;;;;;;;:45;;;;;1749:120;;11663:443:1;;;;;;;;;;-1:-1:-1;11663:443:1;;;;;:::i;:::-;;:::i;5002:641::-;;;;;;;;;;-1:-1:-1;5002:641:1;;;;;:::i;:::-;;:::i;6600:201:0:-;;;;;;;;;;;;;:::i;2130:100::-;;;;;;;;;;;;2192:10;2178:13;:25;;;;;;;;;;:37;;:44;;-1:-1:-1;;2178:44:0;2218:4;2178:44;;;2130:100;3801:759:1;;;;;;;;;;-1:-1:-1;3801:759:1;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;6111:654::-;;;;;;;;;;-1:-1:-1;6111:654:1;;;;;:::i;:::-;;:::i;9109:1141::-;;;;;;;;;;-1:-1:-1;9109:1141:1;;;;;:::i;:::-;;:::i;10974:248::-;;;;;;;;;;-1:-1:-1;10974:248:1;;;;;:::i;:::-;;:::i;2552:133:0:-;;;;;;;;;;-1:-1:-1;2552:133:0;;;;;:::i;:::-;-1:-1:-1;;;;;2644:23:0;2617:7;2644:23;;;;;;;;;;:33;;;;2552:133;4662:273:1;;;;;;;;;;;;;:::i;2975:190:0:-;;;;;;;;;;-1:-1:-1;2975:190:0;;;;;:::i;:::-;;:::i;8642:456::-;;;;;;;;;;-1:-1:-1;8642:456:0;;;;;:::i;:::-;;:::i;1958:110::-;;;;;;;;;;-1:-1:-1;2037:10:0;1999:4;2023:25;;;;;;;;;;:37;;;;;1958:110;;2693:209;;;;;;;;;;-1:-1:-1;2693:209:0;;;;;:::i;:::-;;:::i;12226:957:1:-;;;;;;;;;;-1:-1:-1;12226:957:1;;;;;:::i;:::-;;:::i;9153:457:0:-;;;;;;;;;;-1:-1:-1;9153:457:0;;;;;:::i;:::-;;:::i;1140:20::-;;;;;;;;;;-1:-1:-1;1140:20:0;;;;-1:-1:-1;;;;;1140:20:0;;;;;;-1:-1:-1;;;;;7705:32:2;;;7687:51;;7675:2;7660:18;1140:20:0;7541:203:2;7158:241:1;-1:-1:-1;;;;;7275:25:1;;;;;;:12;:25;;;;;:35;;;:52;;7326:1;7275:52;:::i;:::-;-1:-1:-1;;;;;7224:25:1;;;;;;;:12;:25;;;;;;;:35;;;:103;;;;7338:36;;;;:53;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;7338:53:1;7380:10;7338:53;;;7158:241::o;8012:931::-;-1:-1:-1;;;;;8080:25:1;;;;;;:12;:25;;;;;:36;;;;;8076:860;;;8156:9;8133:386;-1:-1:-1;;;;;8192:26:1;;:13;:26;;;;;;;;;;:35;;:42;8188:46;;8133:386;;;8483:20;;-1:-1:-1;;;;;8388:26:1;;8374:13;8388:26;;;;;;;;;;:35;;:38;;8374:13;;8388:35;8424:1;;8388:38;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;8388:38:1;8374:53;;;;;;;;;;;;:85;;;:129;;;;:::i;:::-;-1:-1:-1;;;;;8305:26:1;;8291:13;8305:26;;;;;;;;;;:35;;:38;;8291:13;;8305:35;8341:1;;8305:38;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;8305:38:1;8291:53;;;;;;;;;;;;:59;;:212;8253:3;;;;:::i;:::-;;;;8133:386;;;;8556:9;8533:392;-1:-1:-1;;;;;8592:26:1;;:13;:26;;;;;;;;;;:37;;:44;8588:48;;8533:392;;;8889:20;;-1:-1:-1;;;;;8792:26:1;;8778:13;8792:26;;;;;;;;;;:37;;:40;;8778:13;;8792:37;8830:1;;8792:40;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;8792:40:1;8778:55;;;;;;;;;;;;:87;;;:131;;;;:::i;:::-;-1:-1:-1;;;;;8707:26:1;;8693:13;8707:26;;;;;;;;;;:37;;:40;;8693:13;;8707:37;8745:1;;8707:40;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;8707:40:1;8693:55;;;;;;;;;;;;:61;;:216;8655:3;;;;:::i;:::-;;;;8533:392;;;;8076:860;8012:931;:::o;11312:257::-;-1:-1:-1;;;;;11433:31:1;;;;;;:18;:31;;;;;:41;;;:58;;11490:1;11433:58;:::i;:::-;-1:-1:-1;;;;;11376:31:1;;;;;;;:18;:31;;;;;;;:41;;;:115;;;;11502:42;;;;:59;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;11502:59:1;11550:10;11502:59;;;11312:257::o;1100:2250::-;1183:8;1179:2164;;;1208:11;1243:9;1238:577;-1:-1:-1;;;;;1262:26:1;;:13;:26;;;;;;;;;;:34;;;1258:38;;1238:577;;;-1:-1:-1;;;;;1420:26:1;;1406:13;1420:26;;;;;;;;;;:35;;:38;;1406:13;;1420:35;1456:1;;1420:38;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;1420:38:1;1406:53;;;;;;;;;;;;:86;;;:111;;1420:38;1406:111;:::i;:::-;-1:-1:-1;;;;;1336:26:1;;1322:13;1336:26;;;;;;;;;;:35;;:38;;1322:13;;1336:35;1372:1;;1336:38;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;1336:38:1;1322:53;;;;;;;;;;;;:60;;:195;1548:20;;1542:26;;:3;:26;:::i;:::-;1536:32;;1779:20;;1670:13;:53;1684:13;:26;1698:11;-1:-1:-1;;;;;1684:26:1;-1:-1:-1;;;;;1684:26:1;;;;;;;;;;;;:35;;1720:1;1684:38;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;1684:38:1;1670:53;;;;;;;;;;;;:85;;;:129;;;;:::i;:::-;-1:-1:-1;;;;;1601:26:1;;1587:13;1601:26;;;;;;;;;;:35;;:38;;1587:13;;1601:35;1637:1;;1601:38;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;1601:38:1;1587:53;;;;;;;;;;;;:59;;:212;1298:3;;;;:::i;:::-;;;;1238:577;;;-1:-1:-1;;;;;;1881:26:1;;:13;:26;;;;;;;;;;:32;;;:55;;1933:3;;1881:55;:::i;:::-;-1:-1:-1;;;;;1829:26:1;;:13;:26;;;;;;;;;;:32;;:107;;;;1951:301;-1:-1:-1;;;;;1975:26:1;;:13;:26;;;;;;;;;;:36;;;1971:40;;1951:301;;;-1:-1:-1;;;;;2137:26:1;;2123:13;2137:26;;;;;;;;;;:37;;:40;;2235:1;;2123:13;;;2175:1;;2137:40;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;2137:40:1;2123:55;;;;;;;;;;;;:88;;;:113;;;;:::i;:::-;-1:-1:-1;;;;;2051:26:1;;2037:13;2051:26;;;;;;;;;;:37;;:40;;2037:13;;2051:37;2089:1;;2051:40;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;2051:40:1;2037:55;;;;;;;;;;;;:62;;:199;2013:3;;;;:::i;:::-;;;;1951:301;;;;1193:1070;1179:2164;;;2284:11;2319:9;2314:587;-1:-1:-1;;;;;2338:26:1;;:13;:26;;;;;;;;;;:36;;;2334:40;;2314:587;;;-1:-1:-1;;;;;2500:26:1;;2486:13;2500:26;;;;;;;;;;:37;;:40;;2486:13;;2500:37;2538:1;;2500:40;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;2500:40:1;2486:55;;;;;;;;;;;;:88;;;:113;;2500:40;2486:113;:::i;:::-;-1:-1:-1;;;;;2414:26:1;;2400:13;2414:26;;;;;;;;;;:37;;:40;;2400:13;;2414:37;2452:1;;2414:40;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;2414:40:1;2400:55;;;;;;;;;;;;:62;;:199;2630:20;;2624:26;;:3;:26;:::i;:::-;2618:32;;2865:20;;2754:13;:55;2768:13;:26;2782:11;-1:-1:-1;;;;;2768:26:1;-1:-1:-1;;;;;2768:26:1;;;;;;;;;;;;:37;;2806:1;2768:40;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;2768:40:1;2754:55;;;;;;;;;;;;:87;;;:131;;;;:::i;:::-;-1:-1:-1;;;;;2683:26:1;;2669:13;2683:26;;;;;;;;;;:37;;:40;;2669:13;;2683:37;2721:1;;2683:40;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;2683:40:1;2669:55;;;;;;;;;;;;:61;;:216;2376:3;;;;:::i;:::-;;;;2314:587;;;-1:-1:-1;;;;;;2967:26:1;;:13;:26;;;;;;;;;;:32;;;:55;;3019:3;;2967:55;:::i;:::-;-1:-1:-1;;;;;2915:26:1;;:13;:26;;;;;;;;;;:32;;:107;;;;3037:295;-1:-1:-1;;;;;3061:26:1;;:13;:26;;;;;;;;;;:34;;;3057:38;;3037:295;;;-1:-1:-1;;;;;3219:26:1;;3205:13;3219:26;;;;;;;;;;:35;;:38;;3315:1;;3205:13;;;3255:1;;3219:38;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;3219:38:1;3205:53;;;;;;;;;;;;:86;;;:111;;;;:::i;:::-;-1:-1:-1;;;;;3135:26:1;;3121:13;3135:26;;;;;;;;;;:35;;:38;;3121:13;;3135:35;3171:1;;3135:38;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;3135:38:1;3121:53;;;;;;;;;;;;:60;;:195;3097:3;;;;:::i;:::-;;;;3037:295;;;;2269:1074;1100:2250;;:::o;5206:1314:0:-;5344:19;:26;5504:16;;5293:19;;5344:26;5330:11;;;;5475:45;;5344:26;5475:45;:::i;:::-;5444:87;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;5407:124;;5547:9;5542:939;5566:3;5562:1;:7;5542:939;;;5591:16;5610:19;5630:1;5610:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;5610:22:0;5652:23;;;;;;;;;;;:43;;;5610:22;;-1:-1:-1;5652:43:0;;5647:823;;5744:635;;;;;;;;-1:-1:-1;;;;;5791:23:0;;;5716:25;5791:23;;;;;;;;;;:35;;;;;5744:635;;5855:23;;;;;;5791:35;5855:28;;;5744:635;;5716:25;;5744:635;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5915:13;:23;5929:8;-1:-1:-1;;;;;5915:23:0;-1:-1:-1;;;;;5915:23:0;;;;;;;;;;;;:31;;5744:635;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;5744:635:0;;;-1:-1:-1;;;;;;;5978:23:0;;:13;:23;;;5744:635;5978:23;;;;;;;:31;;;;5744:635;;;;6043:33;;;;5744:635;;;;;;;6105:29;;;;5744:635;;;;6178:43;;;;;;5744:635;;;;;;6250:23;;;;:28;;5744:635;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6319:13;:23;6333:8;-1:-1:-1;;;;;6319:23:0;-1:-1:-1;;;;;6319:23:0;;;;;;;;;;;;:40;;;5744:635;;;5716:663;;6420:7;6398:14;6413:3;6398:19;;;;;;;;:::i;:::-;;;;;;;;;;:29;6446:8;6453:1;6446:8;;:::i;:::-;;;5697:773;5647:823;-1:-1:-1;5571:3:0;;;;:::i;:::-;;;;5542:939;;;-1:-1:-1;6498:14:0;5206:1314;-1:-1:-1;;;5206:1314:0:o;3240:192::-;-1:-1:-1;;;;;3374:26:0;3308:4;3374:26;;;;;;;;;;;3346:10;3374:45;;:33;;:45;;;;;;;;;:50;;3240:192::o;7704:885::-;-1:-1:-1;;;;;7949:35:0;;:13;:35;;;;;;;;;;:52;;;:57;7927:139;;;;-1:-1:-1;;;7927:139:0;;9003:2:2;7927:139:0;;;8985:21:2;;;9022:18;;;9015:30;9081:34;9061:18;;;9054:62;9133:18;;7927:139:0;;;;;;;;;-1:-1:-1;;;;;8079:35:0;;:13;:35;;;;;;;;;;:70;;-1:-1:-1;;;;;;8079:70:0;;;;;;;8160:40;:60;8203:17;8160:40;:60;:::i;:::-;-1:-1:-1;;;;;;8231:35:0;;:13;:35;;;;;;;;;;:43;;:58;8277:12;8231:43;:58;:::i;:::-;-1:-1:-1;;;;;;8300:35:0;;:13;:35;;;;;;;;;;:40;;:54;8343:11;8300:40;:54;:::i;:::-;-1:-1:-1;8420:13:0;:4;8427:6;8420:13;:::i;:::-;-1:-1:-1;;;;;8365:35:0;;:13;:35;;;;;;;;;;:52;;:68;8488:34;8379:20;8488:12;:34::i;:::-;:36;;8523:1;8488:36;:::i;:::-;-1:-1:-1;;;;;8444:35:0;;;:13;:35;;;;;;;;;;:41;;:80;;;;8535:19;:46;;;;;;;;;;;;;;;-1:-1:-1;;;;;;8535:46:0;;;;;;;-1:-1:-1;;;;7704:885:0:o;13341:1165:1:-;-1:-1:-1;;;;;13429:31:1;;;;;;:18;:31;;;;;:44;;;;;:53;;;;13425:1074;;-1:-1:-1;;;;;13499:26:1;;13548:5;13499:26;;;;;;;;;;:46;;:54;;-1:-1:-1;;13499:54:1;;;13568:18;:23;;13499:54;;13548:5;13568:23;;13499:54;;13568:23;:::i;:::-;;;;-1:-1:-1;;;;;;;13606:27:1;;13636:5;13606:27;;;:14;:27;;;;;:35;;-1:-1:-1;;13606:35:1;;;13636:5;13690:441;13714:19;:26;13710:30;;13690:441;;;13792:13;:37;13806:19;13826:1;13806:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;13806:22:1;13792:37;;;;;;;;;;;;:57;;;;;:138;;;;;13886:13;:37;13900:19;13920:1;13900:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;13900:22:1;13886:37;;;;;;;;;;;;:44;;;13874:56;;13792:138;13766:350;;;13985:13;:37;13999:19;14019:1;13999:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;13999:22:1;13985:37;;;;;;;;;;;;:44;;;14073:19;:22;;13985:44;;-1:-1:-1;14052:15:1;;14093:1;;14073:22;;;;;;:::i;:::-;;;;;;;;;;;;;14052:44;;14073:22;14052:44;;;;;;;;;;;;;;-1:-1:-1;;;;;;14052:44:1;-1:-1:-1;;;;;14073:22:1;;;14052:44;;;;;;13766:350;13742:3;;;;:::i;:::-;;;;13690:441;;;;14152:9;14147:174;14171:15;:22;14167:26;;14147:174;;;14195:3;;;;:::i;:::-;;;;14147:174;;;-1:-1:-1;14356:15:1;:22;14337:16;14393:95;14417:8;14413:1;:12;14393:95;;;14451:15;:21;;;;;;;:::i;:::-;;;;;;;;;;-1:-1:-1;;14451:21:1;;;;;-1:-1:-1;;;;;;14451:21:1;;;;;;14427:3;;;;:::i;:::-;;;;14393:95;;3543:274:0;-1:-1:-1;;;;;3670:23:0;;3649:4;3670:23;;;;;;;;;;:40;;;:55;-1:-1:-1;3666:144:0;;;-1:-1:-1;3749:4:0;3742:11;;3666:144;-1:-1:-1;3793:5:0;3666:144;3543:274;;;;:::o;10399:488:1:-;-1:-1:-1;;;;;10551:31:1;;;;;;:18;:31;;;;;;;:57;;-1:-1:-1;;;;;;10551:57:1;;;;;;10619:35;;;;:45;;10551:57;10619:45;;;;;;;;;;;;10660:3;10619:45;;:::i;:::-;-1:-1:-1;;;;;;10675:31:1;;;;;;:18;:31;;;;;:67;;:87;;;10840:39;10745:17;10873:6;10840:39;:::i;:::-;-1:-1:-1;;;;;10773:31:1;;;;;;;:18;:31;;;;;:51;;:106;;;;-1:-1:-1;;10399:488:1:o;6844:233::-;-1:-1:-1;;;;;6957:25:1;;;;;;:12;:25;;;;;:33;;;:50;;7006:1;6957:50;:::i;:::-;-1:-1:-1;;;;;6908:25:1;;;;;;;:12;:25;;;;;;;:33;;;:99;;;;7018:34;;;;:51;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;7018:51:1;7058:10;7018:51;;;6844:233::o;3917:1189:0:-;4053:19;:26;4168:16;;4002:19;;4053:26;4039:11;;;;4151:34;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;4116:69;;4201:9;4196:873;4220:3;4216:1;:7;4196:873;;;4245:16;4264:19;4284:1;4264:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;4264:22:0;4305:23;;;;;;;;;;;:43;;;4264:22;;-1:-1:-1;4305:43:0;;4301:757;;;-1:-1:-1;;;;;4400:23:0;;;4369:28;4400:23;;;;;;;;;;;4474:491;;;;;;;;4521:19;;;;;4474:491;;4521:19;4569:12;;4474:491;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4613:7;:15;;4474:491;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;4474:491:0;;;-1:-1:-1;;4660:15:0;;;;4474:491;;;;4709:17;;;;4474:491;;;;4755:13;;;;4474:491;;;;4812:27;;;;;;4474:491;;;;;;4868:12;;;4474:491;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4921:7;:24;;;4474:491;;;4442:523;;5004:11;4984:12;4997:3;4984:17;;;;;;;;:::i;:::-;;;;;;;;;;:31;5034:8;5041:1;5034:8;;:::i;:::-;;;4350:708;;4301:757;-1:-1:-1;4225:3:0;;;;:::i;:::-;;;;4196:873;;3470:203:1;-1:-1:-1;;;;;3533:26:1;;:13;:26;;;;;;;;;;:46;;:53;;-1:-1:-1;;3533:53:1;3582:4;3533:53;;;;;;3597:18;:23;;3582:4;;3597:18;;:23;;3582:4;;3597:23;:::i;:::-;;;;-1:-1:-1;;;;;;;3631:27:1;;;;;:14;:27;;;;;:34;;-1:-1:-1;;3631:34:1;3661:4;3631:34;;;3470:203::o;9689:289:0:-;9791:4;9875:18;;9896:2;9875:23;;;;:::i;:::-;-1:-1:-1;;;;;9831:26:0;;:13;:26;;;;;;;;;;:34;;;:40;;9868:3;9831:40;:::i;:::-;:67;9813:135;;-1:-1:-1;9932:4:0;;9689:289;-1:-1:-1;9689:289:0:o;9813:135::-;-1:-1:-1;9965:5:0;;9689:289;-1:-1:-1;9689:289:0:o;7486:403:1:-;-1:-1:-1;;;;;7625:25:1;;7555:18;7625:25;;;:12;:25;;;;;:35;;;;7576:33;;;;;:84;;7625:35;7576:84;:::i;:::-;7555:105;-1:-1:-1;7718:15:1;7555:105;7731:2;7718:15;:::i;:::-;-1:-1:-1;;;;;7675:25:1;;;;;;:12;:25;;;;;:33;;;:39;;7711:3;7675:39;:::i;:::-;:58;7671:211;;-1:-1:-1;;;;;7750:25:1;;;;;;:12;:25;;;;;:36;;:43;;-1:-1:-1;;7750:43:1;7789:4;7750:43;;;7671:211;;;-1:-1:-1;;;;;;7826:25:1;7865:5;7826:25;;;:12;:25;;;;;:36;;:44;;-1:-1:-1;;7826:44:1;;;7486:403::o;11663:443::-;-1:-1:-1;;;;;11814:31:1;;11738:18;11814:31;;;:18;:31;;;;;:41;;;;11759:39;;;;;:96;;11814:41;11759:96;:::i;:::-;11738:117;-1:-1:-1;11919:15:1;11738:117;11932:2;11919:15;:::i;:::-;-1:-1:-1;;;;;11870:31:1;;;;;;:18;:31;;;;;:39;;;:45;;11912:3;11870:45;:::i;:::-;:64;11866:233;;-1:-1:-1;;;;;11951:31:1;;;;;;:18;:31;;;;;:44;;:51;;-1:-1:-1;;11951:51:1;11998:4;11951:51;;;11866:233;;;-1:-1:-1;;;;;;12035:31:1;12082:5;12035:31;;;:18;:31;;;;;:44;;:52;;-1:-1:-1;;12035:52:1;;;11663:443::o;5002:641::-;5088:15;:22;5069:16;5121:87;5145:8;5141:1;:12;5121:87;;;5175:15;:21;;;;;;;:::i;:::-;;;;;;;;;;-1:-1:-1;;5175:21:1;;;;;-1:-1:-1;;;;;;5175:21:1;;;;;;5155:3;;;;:::i;:::-;;;;5121:87;;;;5237:9;5218:202;-1:-1:-1;;;;;5269:26:1;;:13;:26;;;;;;;;;;:35;;:42;5265:46;;5218:202;;;-1:-1:-1;;;;;5361:26:1;;5403:5;5361:26;;;;;;;;;;:35;;:38;;5356:4;;5403:5;;5397:1;;5361:38;;;;;;:::i;:::-;;;;;;;;;;;;;;-1:-1:-1;;;;;5361:38:1;5356:44;;;;;;;;;;;;:52;;-1:-1:-1;;5356:52:1;;;;;;;;;;5326:3;;;;:::i;:::-;;;;5218:202;;;;5449:9;5430:206;-1:-1:-1;;;;;5481:26:1;;:13;:26;;;;;;;;;;:37;;:44;5477:48;;5430:206;;;-1:-1:-1;;;;;5575:26:1;;5619:5;5575:26;;;;;;;;;;:37;;:40;;5570:4;;5619:5;;5613:1;;5575:40;;;;;;:::i;:::-;;;;;;;;;;;;;;-1:-1:-1;;;;;5575:40:1;5570:46;;;;;;;;;;;;:54;;-1:-1:-1;;5570:54:1;;;;;;;;;;5540:3;;;;:::i;:::-;;;;5430:206;;;;5058:585;5002:641;:::o;6600:201:0:-;6670:17;:24;6651:16;6705:89;6729:8;6725:1;:12;6705:89;;;6759:17;:23;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;6759:23:0;;;;;;;;;-1:-1:-1;;;;;;6759:23:0;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;6759:23:0;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;6759:23:0;;;;;;;;;;;;;;;-1:-1:-1;;6759:23:0;;;;;6739:3;;;;:::i;:::-;;;;6705:89;;3801:759:1;3856:16;3904:9;3885:201;-1:-1:-1;;;;;3936:26:1;;:13;:26;;;;;;;;;;:35;;:42;3932:46;;3885:201;;;4070:4;4023;:44;4028:13;:26;4042:11;-1:-1:-1;;;;;4028:26:1;-1:-1:-1;;;;;4028:26:1;;;;;;;;;;;;:35;;4064:1;4028:38;;;;;;;;:::i;:::-;;;;;;;;;;;;;;-1:-1:-1;;;;;4028:38:1;4023:44;;;;;;;;;;;;:51;;-1:-1:-1;;4023:51:1;;;;;;;;;;3993:3;;;;:::i;:::-;;;;3885:201;;;;4115:9;4096:205;-1:-1:-1;;;;;4147:26:1;;:13;:26;;;;;;;;;;:37;;:44;4143:48;;4096:205;;;4285:4;4236;:46;4241:13;:26;4255:11;-1:-1:-1;;;;;4241:26:1;-1:-1:-1;;;;;4241:26:1;;;;;;;;;;;;:37;;4279:1;4241:40;;;;;;;;:::i;:::-;;;;;;;;;;;;;;-1:-1:-1;;;;;4241:40:1;4236:46;;;;;;;;;;;;:53;;-1:-1:-1;;4236:53:1;;;;;;;;;;4206:3;;;;:::i;:::-;;;;4096:205;;;;4318:9;4313:205;4337:19;:26;4333:30;;4313:205;;;4389:4;:28;4394:19;4414:1;4394:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;4394:22:1;4389:28;;;;;;;;;;;;;;;:37;;;;4385:122;;4447:15;4468:19;4488:1;4468:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;4447:44;;4468:22;4447:44;;;;;;;;;;;;;;-1:-1:-1;;;;;;4447:44:1;-1:-1:-1;;;;;4468:22:1;;;4447:44;;;;;;4385:122;4365:3;;;;:::i;:::-;;;;4313:205;;;;4537:15;4530:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4530:22:1;;;;;;;;;;;;;;;;;;;;;;;3801:759;;;:::o;6111:654::-;-1:-1:-1;;;;;6311:34:1;;;;;;:12;:34;;;;;:69;;-1:-1:-1;;;;;;6311:69:1;;;;;;;6391:42;:57;6436:12;6391:42;:57;:::i;:::-;-1:-1:-1;;;;;;6459:34:1;;;;;;:12;:34;;;;;:39;;:53;6501:11;6459:39;:53;:::i;:::-;-1:-1:-1;;;;;;6523:34:1;;;;;;:12;:34;;;;;:45;;:65;;;6658:39;6571:17;6691:6;6658:39;:::i;:::-;-1:-1:-1;;;;;6599:34:1;;;;;;:12;:34;;;;;:43;;:98;6733:20;;:24;;6756:1;6733:24;:::i;:::-;6710:20;:47;-1:-1:-1;;;;6111:654:1:o;9109:1141::-;-1:-1:-1;;;;;9182:25:1;;;;;;:12;:25;;;;;:36;;;;;:44;;:36;:44;9178:1065;;-1:-1:-1;;;;;9243:26:1;;9292:5;9243:26;;;;;;;;;;:46;;:54;;-1:-1:-1;;9243:54:1;;;9312:18;:23;;9243:54;;9292:5;9312:23;;9243:54;;9312:23;:::i;:::-;;;;-1:-1:-1;;;;;;;9350:27:1;;9380:5;9350:27;;;:14;:27;;;;;:35;;-1:-1:-1;;9350:35:1;;;9380:5;9434:441;9458:19;:26;9454:30;;9434:441;;;9536:13;:37;9550:19;9570:1;9550:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;9550:22:1;9536:37;;;;;;;;;;;;:57;;;;;:138;;;;;9630:13;:37;9644:19;9664:1;9644:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;9644:22:1;9630:37;;;;;;;;;;;;:44;;;9618:56;;9536:138;9510:350;;;9729:13;:37;9743:19;9763:1;9743:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;9743:22:1;9729:37;;;;;;;;;;;;:44;;;9817:19;:22;;9729:44;;-1:-1:-1;9796:15:1;;9837:1;;9817:22;;;;;;:::i;:::-;;;;;;;;;;;;;9796:44;;9817:22;9796:44;;;;;;;;;;;;;;-1:-1:-1;;;;;;9796:44:1;-1:-1:-1;;;;;9817:22:1;;;9796:44;;;;;;9510:350;9486:3;;;;:::i;:::-;;;;9434:441;;;;9896:9;9891:174;9915:15;:22;9911:26;;9891:174;;;9939:3;;;;:::i;:::-;;;;9891:174;;;-1:-1:-1;10100:15:1;:22;10081:16;10137:95;10161:8;10157:1;:12;10137:95;;;10195:15;:21;;;;;;;:::i;:::-;;;;;;;;;;-1:-1:-1;;10195:21:1;;;;;-1:-1:-1;;;;;;10195:21:1;;;;;;10171:3;;;;:::i;:::-;;;;10137:95;;10974:248;-1:-1:-1;;;;;11090:31:1;;;;;;:18;:31;;;;;:39;;;;;:56;;;:::i;:::-;-1:-1:-1;;;;;11035:31:1;;;;;;;:18;:31;;;;;;;:39;;;;:111;;;;11157:40;;:57;;;;;;;;;;;;;;-1:-1:-1;;;;;;11157:57:1;11203:10;11157:57;;;10974:248::o;4662:273::-;4715:9;4710:218;4734:15;:22;4730:26;;4710:218;;;4896:20;;4837:13;:33;4851:15;4867:1;4851:18;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;4851:18:1;4837:33;;;;;;;;;;;;:39;;;:79;;;;:::i;:::-;4778:13;:33;4792:15;4808:1;4792:18;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;4792:18:1;4778:33;;;;;;;;;;;;:39;;:138;4758:3;;;;:::i;:::-;;;;4710:218;;2975:190:0;-1:-1:-1;;;;;3107:26:0;3041:4;3107:26;;;;;;;;;;;3079:10;3107:45;;:33;;:45;;;;;;;;3156:1;3107:50;;2975:190::o;8642:456::-;-1:-1:-1;;;;;6886:23:0;;8762:4;6886:23;;;;;;;;;;:40;;;8742:8;;6886:45;;6864:131;;;;-1:-1:-1;;;6864:131:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;7029:23:0;;:13;:23;;;;;;;;;;:43;;;;;7028:44;7006:124;;;;-1:-1:-1;;;7006:124:0;;12278:2:2;7006:124:0;;;12260:21:2;12317:2;12297:18;;;12290:30;12356:32;12336:18;;;12329:60;12406:18;;7006:124:0;12076:354:2;7006:124:0;7177:10;7163:13;:25;;;;;;;;;;:42;;;:47;;;;:113;;-1:-1:-1;7245:10:0;7231:13;:25;;;;;;;;;;:45;;;;;7163:113;7141:221;;;;-1:-1:-1;;;7141:221:0;;;;;;;:::i;:::-;7396:24;7411:8;7396:14;:24::i;:::-;7395:25;:56;;;;;7425:26;7442:8;7425:16;:26::i;:::-;7424:27;7395:56;7373:152;;;;-1:-1:-1;;;7373:152:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;8778:23:0;::::1;:13;:23:::0;;;::::1;::::0;;;;;;:31:::1;;:36:::0;;8813:1:::1;::::0;8778:13;:36:::1;::::0;8813:1;;8778:36:::1;:::i;:::-;::::0;;;-1:-1:-1;;;;;;;8825:23:0;::::1;:13;:23:::0;;;::::1;::::0;;;;;;;:32:::1;::::0;::::1;:49:::0;;::::1;::::0;::::1;::::0;;;;;;;;::::1;::::0;;-1:-1:-1;;;;;;8825:49:0::1;8863:10;8825:49:::0;;::::1;::::0;;;8885:42;;:30:::1;;:42:::0;;;;;:46;;-1:-1:-1;;8885:46:0::1;8930:1;8885:46;::::0;;8946:34:::1;8839:8:::0;8967:12;8946:10:::1;:34::i;:::-;8942:126;;;8997:33;9021:8;8997:23;:33::i;:::-;;9052:4;9045:11;;;;8942:126;9085:5;9078:12;;7536:1;8642:456:::0;;;;;:::o;2693:209::-;-1:-1:-1;;;;;2644:23:0;;2754:7;2644:23;;;;;;;;;;:33;;;;2415:31;;;;;2794:18;;:58;;2415:31;2794:58;:::i;:::-;:100;;;;:::i;12226:957:1:-;-1:-1:-1;;;;;12303:31:1;;;;;;:18;:31;;;;;:44;;;;;:53;;;;12299:877;;12396:9;12373:386;-1:-1:-1;;;;;12432:26:1;;:13;:26;;;;;;;;;;:35;;:42;12428:46;;12373:386;;;12723:20;;-1:-1:-1;;;;;12628:26:1;;12614:13;12628:26;;;;;;;;;;:35;;:38;;12614:13;;12628:35;12664:1;;12628:38;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;12628:38:1;12614:53;;;;;;;;;;;;:85;;;:129;;;;:::i;:::-;-1:-1:-1;;;;;12545:26:1;;12531:13;12545:26;;;;;;;;;;:35;;:38;;12531:13;;12545:35;12581:1;;12545:38;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;12545:38:1;12531:53;;;;;;;;;;;;:59;;:212;12493:3;;;;:::i;:::-;;;;12373:386;;;;12796:9;12773:392;-1:-1:-1;;;;;12832:26:1;;:13;:26;;;;;;;;;;:37;;:44;12828:48;;12773:392;;;13129:20;;-1:-1:-1;;;;;13032:26:1;;13018:13;13032:26;;;;;;;;;;:37;;:40;;13018:13;;13032:37;13070:1;;13032:40;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;13032:40:1;13018:55;;;;;;;;;;;;:87;;;:131;;;;:::i;:::-;-1:-1:-1;;;;;12947:26:1;;12933:13;12947:26;;;;;;;;;;:37;;:40;;12933:13;;12947:37;12985:1;;12947:40;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;12947:40:1;12933:55;;;;;;;;;;;;:61;;:216;12895:3;;;;:::i;:::-;;;;12773:392;;9153:457:0;-1:-1:-1;;;;;6886:23:0;;9275:4;6886:23;;;;;;;;;;:40;;;9256:8;;6886:45;;6864:131;;;;-1:-1:-1;;;6864:131:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;7029:23:0;;:13;:23;;;;;;;;;;:43;;;;;7028:44;7006:124;;;;-1:-1:-1;;;7006:124:0;;12278:2:2;7006:124:0;;;12260:21:2;12317:2;12297:18;;;12290:30;12356:32;12336:18;;;12329:60;12406:18;;7006:124:0;12076:354:2;7006:124:0;7177:10;7163:13;:25;;;;;;;;;;:42;;;:47;;;;:113;;-1:-1:-1;7245:10:0;7231:13;:25;;;;;;;;;;:45;;;;;7163:113;7141:221;;;;-1:-1:-1;;;7141:221:0;;;;;;;:::i;:::-;7396:24;7411:8;7396:14;:24::i;:::-;7395:25;:56;;;;;7425:26;7442:8;7425:16;:26::i;:::-;7424:27;7395:56;7373:152;;;;-1:-1:-1;;;7373:152:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;9292:23:0;::::1;:13;:23:::0;;;::::1;::::0;;;;;;:33:::1;;:38:::0;;9329:1:::1;::::0;9292:13;:38:::1;::::0;9329:1;;9292:38:::1;:::i;:::-;::::0;;;-1:-1:-1;;;;;;;9341:23:0;::::1;:13;:23:::0;;;::::1;::::0;;;;;;;:34:::1;::::0;::::1;:51:::0;;::::1;::::0;;::::1;::::0;;;;;;;;::::1;::::0;;-1:-1:-1;;;;;;9341:51:0::1;9381:10;9341:51:::0;;::::1;::::0;;;9403:42;;:30:::1;::::0;;::::1;:42:::0;;;;;;:46;;-1:-1:-1;;9403:46:0::1;::::0;;::::1;::::0;;9464:34:::1;9355:8:::0;9485:12;9464:10:::1;:34::i;:::-;9460:120;;;9522:33;9546:8;9522:23;:33::i;:::-;9515:40;;;;-1:-1:-1::0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:173:2:-;82:20;;-1:-1:-1;;;;;131:31:2;;121:42;;111:70;;177:1;174;167:12;111:70;14:173;;;:::o;192:186::-;251:6;304:2;292:9;283:7;279:23;275:32;272:52;;;320:1;317;310:12;272:52;343:29;362:9;343:29;:::i;:::-;333:39;192:186;-1:-1:-1;;;192:186:2:o;383:347::-;448:6;456;509:2;497:9;488:7;484:23;480:32;477:52;;;525:1;522;515:12;477:52;548:29;567:9;548:29;:::i;:::-;538:39;;627:2;616:9;612:18;599:32;674:5;667:13;660:21;653:5;650:32;640:60;;696:1;693;686:12;640:60;719:5;709:15;;;383:347;;;;;:::o;844:423::-;886:3;924:5;918:12;951:6;946:3;939:19;976:1;986:162;1000:6;997:1;994:13;986:162;;;1062:4;1118:13;;;1114:22;;1108:29;1090:11;;;1086:20;;1079:59;1015:12;986:162;;;990:3;1193:1;1186:4;1177:6;1172:3;1168:16;1164:27;1157:38;1256:4;1249:2;1245:7;1240:2;1232:6;1228:15;1224:29;1219:3;1215:39;1211:50;1204:57;;;844:423;;;;:::o;1368:1964::-;1562:4;1591:2;1631;1620:9;1616:18;1661:2;1650:9;1643:21;1684:6;1719;1713:13;1750:6;1742;1735:22;1776:2;1766:12;;1809:2;1798:9;1794:18;1787:25;;1871:2;1861:6;1858:1;1854:14;1843:9;1839:30;1835:39;1909:2;1901:6;1897:15;1930:1;1940:1363;1954:6;1951:1;1948:13;1940:1363;;;2019:22;;;-1:-1:-1;;2015:36:2;2003:49;;2075:13;;2149:9;;-1:-1:-1;;;;;801:31:2;789:44;;2111:6;2214:2;2210;2206:11;2200:18;2255:2;2250;2242:6;2238:15;2231:27;2285:48;2329:2;2321:6;2317:15;2303:12;2285:48;:::i;:::-;2271:62;;;2382:2;2378;2374:11;2368:18;2435:6;2427;2423:19;2418:2;2410:6;2406:15;2399:44;2470:41;2504:6;2488:14;2470:41;:::i;:::-;2534:4;2581:11;;;2575:18;2558:15;;;2551:43;2617:4;2664:11;;;2658:18;2641:15;;;2634:43;2700:4;2747:11;;;2741:18;2724:15;;;2717:43;2783:4;2828:11;;;2822:18;1342:13;1335:21;2885:15;;;1323:34;2924:4;2969:11;;;2963:18;3018:19;;;3001:15;;;2994:44;2456:55;;-1:-1:-1;2924:4:2;-1:-1:-1;3065:41:2;2456:55;2963:18;3065:41;:::i;:::-;3130:6;3180:12;;;3174:19;3156:16;;;;3149:45;;;;-1:-1:-1;;3281:12:2;;;;3051:55;-1:-1:-1;3246:15:2;;;;1976:1;1969:9;1940:1363;;;-1:-1:-1;3320:6:2;;1368:1964;-1:-1:-1;;;;;;;;1368:1964:2:o;3529:127::-;3590:10;3585:3;3581:20;3578:1;3571:31;3621:4;3618:1;3611:15;3645:4;3642:1;3635:15;3661:719;3704:5;3757:3;3750:4;3742:6;3738:17;3734:27;3724:55;;3775:1;3772;3765:12;3724:55;3811:6;3798:20;3837:18;3874:2;3870;3867:10;3864:36;;;3880:18;;:::i;:::-;3955:2;3949:9;3923:2;4009:13;;-1:-1:-1;;4005:22:2;;;4029:2;4001:31;3997:40;3985:53;;;4053:18;;;4073:22;;;4050:46;4047:72;;;4099:18;;:::i;:::-;4139:10;4135:2;4128:22;4174:2;4166:6;4159:18;4220:3;4213:4;4208:2;4200:6;4196:15;4192:26;4189:35;4186:55;;;4237:1;4234;4227:12;4186:55;4301:2;4294:4;4286:6;4282:17;4275:4;4267:6;4263:17;4250:54;4348:1;4341:4;4336:2;4328:6;4324:15;4320:26;4313:37;4368:6;4359:15;;;;;;3661:719;;;;:::o;4385:887::-;4510:6;4518;4526;4534;4542;4595:3;4583:9;4574:7;4570:23;4566:33;4563:53;;;4612:1;4609;4602:12;4563:53;4635:29;4654:9;4635:29;:::i;:::-;4625:39;;4715:2;4704:9;4700:18;4687:32;4738:18;4779:2;4771:6;4768:14;4765:34;;;4795:1;4792;4785:12;4765:34;4818:50;4860:7;4851:6;4840:9;4836:22;4818:50;:::i;:::-;4808:60;;4921:2;4910:9;4906:18;4893:32;4877:48;;4950:2;4940:8;4937:16;4934:36;;;4966:1;4963;4956:12;4934:36;4989:52;5033:7;5022:8;5011:9;5007:24;4989:52;:::i;:::-;4979:62;;5094:2;5083:9;5079:18;5066:32;5050:48;;5123:2;5113:8;5110:16;5107:36;;;5139:1;5136;5129:12;5107:36;;5162:52;5206:7;5195:8;5184:9;5180:24;5162:52;:::i;:::-;4385:887;;;;-1:-1:-1;4385:887:2;;5261:3;5246:19;5233:33;;4385:887;-1:-1:-1;;;4385:887:2:o;5277:254::-;5345:6;5353;5406:2;5394:9;5385:7;5381:23;5377:32;5374:52;;;5422:1;5419;5412:12;5374:52;5445:29;5464:9;5445:29;:::i;:::-;5435:39;5521:2;5506:18;;;;5493:32;;-1:-1:-1;;;5277:254:2:o;5536:464::-;5623:6;5631;5639;5692:2;5680:9;5671:7;5667:23;5663:32;5660:52;;;5708:1;5705;5698:12;5660:52;5731:29;5750:9;5731:29;:::i;:::-;5721:39;;5811:2;5800:9;5796:18;5783:32;5838:18;5830:6;5827:30;5824:50;;;5870:1;5867;5860:12;5824:50;5893;5935:7;5926:6;5915:9;5911:22;5893:50;:::i;:::-;5883:60;;;5990:2;5979:9;5975:18;5962:32;5952:42;;5536:464;;;;;:::o;6187:658::-;6358:2;6410:21;;;6480:13;;6383:18;;;6502:22;;;6329:4;;6358:2;6581:15;;;;6555:2;6540:18;;;6329:4;6624:195;6638:6;6635:1;6632:13;6624:195;;;6703:13;;-1:-1:-1;;;;;6699:39:2;6687:52;;6794:15;;;;6759:12;;;;6735:1;6653:9;6624:195;;;-1:-1:-1;6836:3:2;;6187:658;-1:-1:-1;;;;;;6187:658:2:o;6850:686::-;6956:6;6964;6972;6980;7033:3;7021:9;7012:7;7008:23;7004:33;7001:53;;;7050:1;7047;7040:12;7001:53;7073:29;7092:9;7073:29;:::i;:::-;7063:39;;7153:2;7142:9;7138:18;7125:32;7176:18;7217:2;7209:6;7206:14;7203:34;;;7233:1;7230;7223:12;7203:34;7256:50;7298:7;7289:6;7278:9;7274:22;7256:50;:::i;:::-;7246:60;;7359:2;7348:9;7344:18;7331:32;7315:48;;7388:2;7378:8;7375:16;7372:36;;;7404:1;7401;7394:12;7372:36;;7427:52;7471:7;7460:8;7449:9;7445:24;7427:52;:::i;:::-;6850:686;;;;-1:-1:-1;7417:62:2;;7526:2;7511:18;7498:32;;-1:-1:-1;;;6850:686:2:o;7749:127::-;7810:10;7805:3;7801:20;7798:1;7791:31;7841:4;7838:1;7831:15;7865:4;7862:1;7855:15;7881:125;7946:9;;;7967:10;;;7964:36;;;7980:18;;:::i;8011:127::-;8072:10;8067:3;8063:20;8060:1;8053:31;8103:4;8100:1;8093:15;8127:4;8124:1;8117:15;8143:128;8210:9;;;8231:11;;;8228:37;;;8245:18;;:::i;8276:135::-;8315:3;8336:17;;;8333:43;;8356:18;;:::i;:::-;-1:-1:-1;8403:1:2;8392:13;;8276:135::o;8416:380::-;8495:1;8491:12;;;;8538;;;8559:61;;8613:4;8605:6;8601:17;8591:27;;8559:61;8666:2;8658:6;8655:14;8635:18;8632:38;8629:161;;8712:10;8707:3;8703:20;8700:1;8693:31;8747:4;8744:1;8737:15;8775:4;8772:1;8765:15;8629:161;;8416:380;;;:::o;9288:545::-;9390:2;9385:3;9382:11;9379:448;;;9426:1;9451:5;9447:2;9440:17;9496:4;9492:2;9482:19;9566:2;9554:10;9550:19;9547:1;9543:27;9537:4;9533:38;9602:4;9590:10;9587:20;9584:47;;;-1:-1:-1;9625:4:2;9584:47;9680:2;9675:3;9671:12;9668:1;9664:20;9658:4;9654:31;9644:41;;9735:82;9753:2;9746:5;9743:13;9735:82;;;9798:17;;;9779:1;9768:13;9735:82;;;9739:3;;;9288:545;;;:::o;10009:1352::-;10135:3;10129:10;10162:18;10154:6;10151:30;10148:56;;;10184:18;;:::i;:::-;10213:97;10303:6;10263:38;10295:4;10289:11;10263:38;:::i;:::-;10257:4;10213:97;:::i;:::-;10365:4;;10429:2;10418:14;;10446:1;10441:663;;;;11148:1;11165:6;11162:89;;;-1:-1:-1;11217:19:2;;;11211:26;11162:89;-1:-1:-1;;9966:1:2;9962:11;;;9958:24;9954:29;9944:40;9990:1;9986:11;;;9941:57;11264:81;;10411:944;;10441:663;9235:1;9228:14;;;9272:4;9259:18;;-1:-1:-1;;10477:20:2;;;10595:236;10609:7;10606:1;10603:14;10595:236;;;10698:19;;;10692:26;10677:42;;10790:27;;;;10758:1;10746:14;;;;10625:19;;10595:236;;;10599:3;10859:6;10850:7;10847:19;10844:201;;;10920:19;;;10914:26;-1:-1:-1;;11003:1:2;10999:14;;;11015:3;10995:24;10991:37;10987:42;10972:58;10957:74;;10844:201;-1:-1:-1;;;;;11091:1:2;11075:14;;;11071:22;11058:36;;-1:-1:-1;10009:1352:2:o;11366:127::-;11427:10;11422:3;11418:20;11415:1;11408:31;11458:4;11455:1;11448:15;11482:4;11479:1;11472:15;11498:168;11571:9;;;11602;;11619:15;;;11613:22;;11599:37;11589:71;;11640:18;;:::i;11671:400::-;11873:2;11855:21;;;11912:2;11892:18;;;11885:30;11951:34;11946:2;11931:18;;11924:62;-1:-1:-1;;;12017:2:2;12002:18;;11995:34;12061:3;12046:19;;11671:400::o;12435:422::-;12637:2;12619:21;;;12676:2;12656:18;;;12649:30;12715:34;12710:2;12695:18;;12688:62;12786:28;12781:2;12766:18;;12759:56;12847:3;12832:19;;12435:422::o;12862:410::-;13064:2;13046:21;;;13103:2;13083:18;;;13076:30;13142:34;13137:2;13122:18;;13115:62;-1:-1:-1;;;13208:2:2;13193:18;;13186:44;13262:3;13247:19;;12862:410::o" + }, + "gasEstimates": { + "creation": { + "codeDepositCost": "2713800", + "executionCost": "infinite", + "totalCost": "infinite" + }, + "external": { + "": "208", + "RemoveCharityIfFinancialReportFraud(address)": "infinite", + "RemoveCharityIfFraud(address)": "infinite", + "admin()": "2469", + "changeIsStakedPaid()": "24478", + "checkFinancialReportStatus(address)": "infinite", + "checkIfDownvoted(address)": "2709", + "checkIfUpvoted(address)": "2730", + "checkVerificationStatus(address)": "infinite", + "checkViolationStatus(address)": "infinite", + "countOfDownvotes(address)": "2591", + "countOfUpvotes(address)": "2591", + "countOfViews(address)": "infinite", + "cutStakeOfNotVoted()": "infinite", + "distributeStake(address,bool)": "infinite", + "downVote(address,uint256)": "infinite", + "emptyListOrganization()": "infinite", + "emptyNotVotedArray(address)": "infinite", + "isStaked()": "2425", + "isVerified()": "2427", + "markAsVerified(address)": "73334", + "notVoted(address)": "infinite", + "registerFinancialReport(address,string,uint256)": "infinite", + "registerOrg(address,string,string,string,uint256)": "infinite", + "registerViolation(address,string,string,uint256)": "infinite", + "reportUpVote(address)": "73430", + "reportsDownVote(address)": "73394", + "totalOrganizations()": "2385", + "unverifiedOrganizationsList()": "infinite", + "upVote(address,uint256)": "infinite", + "upvotedOnFinancialReport(address)": "infinite", + "upvotedOnVerify(address)": "infinite", + "verifiedOrganizationsList()": "infinite", + "violationDownVote(address)": "73350", + "violationUpVote(address)": "73415", + "votingDone(address,uint256)": "2680" + } + }, + "methodIdentifiers": { + "RemoveCharityIfFinancialReportFraud(address)": "4438d4b0", + "RemoveCharityIfFraud(address)": "ae51c2bc", + "admin()": "f851a440", + "changeIsStakedPaid()": "a1b0ffe0", + "checkFinancialReportStatus(address)": "80e179e9", + "checkIfDownvoted(address)": "3e85747e", + "checkIfUpvoted(address)": "c9dfca10", + "checkVerificationStatus(address)": "6fc3911c", + "checkViolationStatus(address)": "71206274", + "countOfDownvotes(address)": "b7627e41", + "countOfUpvotes(address)": "5cf9303f", + "countOfViews(address)": "e75176b5", + "cutStakeOfNotVoted()": "bc489aa9", + "distributeStake(address,bool)": "1e477180", + "downVote(address,uint256)": "f15c01dd", + "emptyListOrganization()": "8fc0ed2f", + "emptyNotVotedArray(address)": "8e349519", + "isStaked()": "e3323aba", + "isVerified()": "80007e83", + "markAsVerified(address)": "62ae7ac7", + "notVoted(address)": "a52da85d", + "registerFinancialReport(address,string,uint256)": "482bd55b", + "registerOrg(address,string,string,string,uint256)": "440370fe", + "registerViolation(address,string,string,uint256)": "ac64fcde", + "reportUpVote(address)": "b5e801d5", + "reportsDownVote(address)": "14cb11e8", + "totalOrganizations()": "4cf5d552", + "unverifiedOrganizationsList()": "2d80468d", + "upVote(address,uint256)": "e2579114", + "upvotedOnFinancialReport(address)": "ef2d5847", + "upvotedOnVerify(address)": "0a54ecbf", + "verifiedOrganizationsList()": "5d0161f1", + "violationDownVote(address)": "0037556e", + "violationUpVote(address)": "55779b65", + "votingDone(address,uint256)": "4648df2a" + } + }, + "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"RemoveCharityIfFinancialReportFraud\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"RemoveCharityIfFraud\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"admin\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"changeIsStakedPaid\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"checkFinancialReportStatus\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"checkIfDownvoted\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"checkIfUpvoted\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"checkVerificationStatus\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"checkViolationStatus\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_addr\",\"type\":\"address\"}],\"name\":\"countOfDownvotes\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_addr\",\"type\":\"address\"}],\"name\":\"countOfUpvotes\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_addr\",\"type\":\"address\"}],\"name\":\"countOfViews\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cutStakeOfNotVoted\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"category\",\"type\":\"bool\"}],\"name\":\"distributeStake\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_addr\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"current_time\",\"type\":\"uint256\"}],\"name\":\"downVote\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"emptyListOrganization\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"emptyNotVotedArray\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isStaked\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isVerified\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"markAsVerified\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"notVoted\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"cid\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"registration_time\",\"type\":\"uint256\"}],\"name\":\"registerFinancialReport\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"organization_address\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"organization_name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"document_cid\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"description\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"time\",\"type\":\"uint256\"}],\"name\":\"registerOrg\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"organization_address\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"document_cid\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"description\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"registration_time\",\"type\":\"uint256\"}],\"name\":\"registerViolation\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"reportUpVote\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"reportsDownVote\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalOrganizations\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"unverifiedOrganizationsList\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"doc_cid\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"upvotes\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"downvotes\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"views\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"verification_status\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"desc\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"application_time\",\"type\":\"uint256\"}],\"internalType\":\"struct OrgCreation.OrgDetails[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_addr\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"current_time\",\"type\":\"uint256\"}],\"name\":\"upVote\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"upvotedOnFinancialReport\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"upvotedOnVerify\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"verifiedOrganizationsList\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"doc_cid\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"upvotes\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"downvotes\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"views\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"verification_status\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"desc\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"application_time\",\"type\":\"uint256\"}],\"internalType\":\"struct OrgCreation.OrgDetails[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"violationDownVote\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"violationUpVote\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_addr\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"current_time\",\"type\":\"uint256\"}],\"name\":\"votingDone\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol\":\"OrgOperation\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol\":{\"keccak256\":\"0xdcf694b024d1a1255aacfa75604c32dd739639437ac64a3f894d050574d09e3c\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://1dc8b0de720c0d4666c6194d912b2db2afb0d94b26bc96e2fc61c03378fb4863\",\"dweb:/ipfs/QmXr9bM4FCXd6CxWyw3Jhxv7kugvK1hfMZpiG1HP3JYjeq\"]},\"c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol\":{\"keccak256\":\"0xdb52d6debab963822324052d360a47f0cc0102cbc6a46cbfa38ba7d613d482ff\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://2e6239cf5f40bc233b2d1432f1c553c36a3f17d5373cee21b3a51fb832294e33\",\"dweb:/ipfs/QmTWqjHLM2NAtWA8wYa4Kkq418epgkpWdTYPWy6FhVevYZ\"]}},\"version\":1}", + "storageLayout": { + "storage": [ + { + "astId": 60, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "orgIdentifier", + "offset": 0, + "slot": "0", + "type": "t_mapping(t_address,t_struct(Organization)36_storage)" + }, + { + "astId": 66, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "voters", + "offset": 0, + "slot": "1", + "type": "t_mapping(t_address,t_mapping(t_address,t_uint256))" + }, + { + "astId": 70, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "verifiedOrgMap", + "offset": 0, + "slot": "2", + "type": "t_mapping(t_address,t_bool)" + }, + { + "astId": 74, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "temp", + "offset": 0, + "slot": "3", + "type": "t_mapping(t_address,t_bool)" + }, + { + "astId": 77, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "organizationAddress", + "offset": 0, + "slot": "4", + "type": "t_array(t_address)dyn_storage" + }, + { + "astId": 80, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "notVotedAddress", + "offset": 0, + "slot": "5", + "type": "t_array(t_address)dyn_storage" + }, + { + "astId": 83, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "maxPointAddress", + "offset": 0, + "slot": "6", + "type": "t_array(t_address)dyn_storage" + }, + { + "astId": 85, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "admin", + "offset": 0, + "slot": "7", + "type": "t_address" + }, + { + "astId": 88, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "verified_org_cnt", + "offset": 0, + "slot": "8", + "type": "t_uint256" + }, + { + "astId": 90, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "totalOrganizations", + "offset": 0, + "slot": "9", + "type": "t_uint256" + }, + { + "astId": 92, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "stakeToBeDistributed", + "offset": 0, + "slot": "10", + "type": "t_uint256" + }, + { + "astId": 94, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "registeredViolations", + "offset": 0, + "slot": "11", + "type": "t_uint256" + }, + { + "astId": 98, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "listOrganizations", + "offset": 0, + "slot": "12", + "type": "t_array(t_struct(Organization)36_storage)dyn_storage" + }, + { + "astId": 842, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "violationMap", + "offset": 0, + "slot": "13", + "type": "t_mapping(t_address,t_struct(Violation)815_storage)" + }, + { + "astId": 847, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "financialReportMap", + "offset": 0, + "slot": "14", + "type": "t_mapping(t_address,t_struct(FinancialReport)837_storage)" + } + ], + "types": { + "t_address": { + "encoding": "inplace", + "label": "address", + "numberOfBytes": "20" + }, + "t_array(t_address)dyn_storage": { + "base": "t_address", + "encoding": "dynamic_array", + "label": "address[]", + "numberOfBytes": "32" + }, + "t_array(t_string_storage)dyn_storage": { + "base": "t_string_storage", + "encoding": "dynamic_array", + "label": "string[]", + "numberOfBytes": "32" + }, + "t_array(t_struct(Organization)36_storage)dyn_storage": { + "base": "t_struct(Organization)36_storage", + "encoding": "dynamic_array", + "label": "struct OrgCreation.Organization[]", + "numberOfBytes": "32" + }, + "t_bool": { + "encoding": "inplace", + "label": "bool", + "numberOfBytes": "1" + }, + "t_mapping(t_address,t_bool)": { + "encoding": "mapping", + "key": "t_address", + "label": "mapping(address => bool)", + "numberOfBytes": "32", + "value": "t_bool" + }, + "t_mapping(t_address,t_mapping(t_address,t_uint256))": { + "encoding": "mapping", + "key": "t_address", + "label": "mapping(address => mapping(address => uint256))", + "numberOfBytes": "32", + "value": "t_mapping(t_address,t_uint256)" + }, + "t_mapping(t_address,t_struct(FinancialReport)837_storage)": { + "encoding": "mapping", + "key": "t_address", + "label": "mapping(address => struct OrgOperation.FinancialReport)", + "numberOfBytes": "32", + "value": "t_struct(FinancialReport)837_storage" + }, + "t_mapping(t_address,t_struct(Organization)36_storage)": { + "encoding": "mapping", + "key": "t_address", + "label": "mapping(address => struct OrgCreation.Organization)", + "numberOfBytes": "32", + "value": "t_struct(Organization)36_storage" + }, + "t_mapping(t_address,t_struct(Violation)815_storage)": { + "encoding": "mapping", + "key": "t_address", + "label": "mapping(address => struct OrgOperation.Violation)", + "numberOfBytes": "32", + "value": "t_struct(Violation)815_storage" + }, + "t_mapping(t_address,t_uint256)": { + "encoding": "mapping", + "key": "t_address", + "label": "mapping(address => uint256)", + "numberOfBytes": "32", + "value": "t_uint256" + }, + "t_mapping(t_address,t_uint8)": { + "encoding": "mapping", + "key": "t_address", + "label": "mapping(address => uint8)", + "numberOfBytes": "32", + "value": "t_uint8" + }, + "t_string_storage": { + "encoding": "bytes", + "label": "string", + "numberOfBytes": "32" + }, + "t_struct(FinancialReport)837_storage": { + "encoding": "inplace", + "label": "struct OrgOperation.FinancialReport", + "members": [ + { + "astId": 817, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "org_address", + "offset": 0, + "slot": "0", + "type": "t_address" + }, + { + "astId": 819, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "upvotes", + "offset": 0, + "slot": "1", + "type": "t_uint256" + }, + { + "astId": 821, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "downvotes", + "offset": 0, + "slot": "2", + "type": "t_uint256" + }, + { + "astId": 824, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "upvoters", + "offset": 0, + "slot": "3", + "type": "t_array(t_address)dyn_storage" + }, + { + "astId": 827, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "downvoters", + "offset": 0, + "slot": "4", + "type": "t_array(t_address)dyn_storage" + }, + { + "astId": 829, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "reportUploadStartTime", + "offset": 0, + "slot": "5", + "type": "t_uint256" + }, + { + "astId": 831, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "reportUploadEndTime", + "offset": 0, + "slot": "6", + "type": "t_uint256" + }, + { + "astId": 833, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "isReportTrue", + "offset": 0, + "slot": "7", + "type": "t_bool" + }, + { + "astId": 836, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "cid", + "offset": 0, + "slot": "8", + "type": "t_array(t_string_storage)dyn_storage" + } + ], + "numberOfBytes": "288" + }, + "t_struct(Organization)36_storage": { + "encoding": "inplace", + "label": "struct OrgCreation.Organization", + "members": [ + { + "astId": 3, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "org_address", + "offset": 0, + "slot": "0", + "type": "t_address" + }, + { + "astId": 5, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "name", + "offset": 0, + "slot": "1", + "type": "t_string_storage" + }, + { + "astId": 7, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "doc_cid", + "offset": 0, + "slot": "2", + "type": "t_string_storage" + }, + { + "astId": 9, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "upvotes", + "offset": 0, + "slot": "3", + "type": "t_uint256" + }, + { + "astId": 11, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "downvotes", + "offset": 0, + "slot": "4", + "type": "t_uint256" + }, + { + "astId": 13, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "views", + "offset": 0, + "slot": "5", + "type": "t_uint256" + }, + { + "astId": 15, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "verification_status", + "offset": 0, + "slot": "6", + "type": "t_bool" + }, + { + "astId": 18, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "upvoters", + "offset": 0, + "slot": "7", + "type": "t_array(t_address)dyn_storage" + }, + { + "astId": 21, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "downvoters", + "offset": 0, + "slot": "8", + "type": "t_array(t_address)dyn_storage" + }, + { + "astId": 25, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "voters", + "offset": 0, + "slot": "9", + "type": "t_mapping(t_address,t_uint8)" + }, + { + "astId": 27, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "stake", + "offset": 0, + "slot": "10", + "type": "t_uint256" + }, + { + "astId": 29, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "desc", + "offset": 0, + "slot": "11", + "type": "t_string_storage" + }, + { + "astId": 31, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "points", + "offset": 0, + "slot": "12", + "type": "t_uint256" + }, + { + "astId": 33, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "application_time", + "offset": 0, + "slot": "13", + "type": "t_uint256" + }, + { + "astId": 35, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "isStakePaid", + "offset": 0, + "slot": "14", + "type": "t_bool" + } + ], + "numberOfBytes": "480" + }, + "t_struct(Violation)815_storage": { + "encoding": "inplace", + "label": "struct OrgOperation.Violation", + "members": [ + { + "astId": 786, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "org_address", + "offset": 0, + "slot": "0", + "type": "t_address" + }, + { + "astId": 788, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "doc_cid", + "offset": 0, + "slot": "1", + "type": "t_string_storage" + }, + { + "astId": 790, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "desc", + "offset": 0, + "slot": "2", + "type": "t_string_storage" + }, + { + "astId": 792, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "upvotes", + "offset": 0, + "slot": "3", + "type": "t_uint256" + }, + { + "astId": 794, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "downvotes", + "offset": 0, + "slot": "4", + "type": "t_uint256" + }, + { + "astId": 797, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "upvoters", + "offset": 0, + "slot": "5", + "type": "t_array(t_address)dyn_storage" + }, + { + "astId": 800, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "downvoters", + "offset": 0, + "slot": "6", + "type": "t_array(t_address)dyn_storage" + }, + { + "astId": 802, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "number", + "offset": 0, + "slot": "7", + "type": "t_uint256" + }, + { + "astId": 804, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "isOpen", + "offset": 0, + "slot": "8", + "type": "t_bool" + }, + { + "astId": 806, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "start_time", + "offset": 0, + "slot": "9", + "type": "t_uint256" + }, + { + "astId": 808, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "end_time", + "offset": 0, + "slot": "10", + "type": "t_uint256" + }, + { + "astId": 810, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "isViolated", + "offset": 0, + "slot": "11", + "type": "t_bool" + }, + { + "astId": 814, + "contract": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol:OrgOperation", + "label": "voters", + "offset": 0, + "slot": "12", + "type": "t_mapping(t_address,t_uint256)" + } + ], + "numberOfBytes": "416" + }, + "t_uint256": { + "encoding": "inplace", + "label": "uint256", + "numberOfBytes": "32" + }, + "t_uint8": { + "encoding": "inplace", + "label": "uint8", + "numberOfBytes": "1" + } + } + }, + "userdoc": { + "kind": "user", + "methods": {}, + "version": 1 + } + } + } + }, + "sources": { + "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol": { + "ast": { + "absolutePath": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol", + "exportedSymbols": { + "OrgCreation": [ + 779 + ] + }, + "id": 780, + "license": "UNLICENSED", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1, + "literals": [ + "solidity", + "^", + "0.8", + ".9" + ], + "nodeType": "PragmaDirective", + "src": "40:23:0" + }, + { + "abstract": false, + "baseContracts": [], + "canonicalName": "OrgCreation", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": true, + "id": 779, + "linearizedBaseContracts": [ + 779 + ], + "name": "OrgCreation", + "nameLocation": "76:11:0", + "nodeType": "ContractDefinition", + "nodes": [ + { + "canonicalName": "OrgCreation.Organization", + "id": 36, + "members": [ + { + "constant": false, + "id": 3, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "134:11:0", + "nodeType": "VariableDeclaration", + "scope": 36, + "src": "126:19:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 2, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "126:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 5, + "mutability": "mutable", + "name": "name", + "nameLocation": "163:4:0", + "nodeType": "VariableDeclaration", + "scope": 36, + "src": "156:11:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + }, + "typeName": { + "id": 4, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "156:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 7, + "mutability": "mutable", + "name": "doc_cid", + "nameLocation": "185:7:0", + "nodeType": "VariableDeclaration", + "scope": 36, + "src": "178:14:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + }, + "typeName": { + "id": 6, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "178:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 9, + "mutability": "mutable", + "name": "upvotes", + "nameLocation": "211:7:0", + "nodeType": "VariableDeclaration", + "scope": 36, + "src": "203:15:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 8, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "203:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 11, + "mutability": "mutable", + "name": "downvotes", + "nameLocation": "237:9:0", + "nodeType": "VariableDeclaration", + "scope": 36, + "src": "229:17:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 10, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "229:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 13, + "mutability": "mutable", + "name": "views", + "nameLocation": "265:5:0", + "nodeType": "VariableDeclaration", + "scope": 36, + "src": "257:13:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 12, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "257:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 15, + "mutability": "mutable", + "name": "verification_status", + "nameLocation": "286:19:0", + "nodeType": "VariableDeclaration", + "scope": 36, + "src": "281:24:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 14, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "281:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 18, + "mutability": "mutable", + "name": "upvoters", + "nameLocation": "326:8:0", + "nodeType": "VariableDeclaration", + "scope": 36, + "src": "316:18:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 16, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "316:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 17, + "nodeType": "ArrayTypeName", + "src": "316:9:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 21, + "mutability": "mutable", + "name": "downvoters", + "nameLocation": "355:10:0", + "nodeType": "VariableDeclaration", + "scope": 36, + "src": "345:20:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 19, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "345:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 20, + "nodeType": "ArrayTypeName", + "src": "345:9:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 25, + "mutability": "mutable", + "name": "voters", + "nameLocation": "402:6:0", + "nodeType": "VariableDeclaration", + "scope": 36, + "src": "376:32:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint8_$", + "typeString": "mapping(address => uint8)" + }, + "typeName": { + "id": 24, + "keyType": { + "id": 22, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "384:7:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "376:25:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint8_$", + "typeString": "mapping(address => uint8)" + }, + "valueType": { + "id": 23, + "name": "uint8", + "nodeType": "ElementaryTypeName", + "src": "395:5:0", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 27, + "mutability": "mutable", + "name": "stake", + "nameLocation": "427:5:0", + "nodeType": "VariableDeclaration", + "scope": 36, + "src": "419:13:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 26, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "419:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 29, + "mutability": "mutable", + "name": "desc", + "nameLocation": "450:4:0", + "nodeType": "VariableDeclaration", + "scope": 36, + "src": "443:11:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + }, + "typeName": { + "id": 28, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "443:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 31, + "mutability": "mutable", + "name": "points", + "nameLocation": "473:6:0", + "nodeType": "VariableDeclaration", + "scope": 36, + "src": "465:14:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 30, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "465:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 33, + "mutability": "mutable", + "name": "application_time", + "nameLocation": "498:16:0", + "nodeType": "VariableDeclaration", + "scope": 36, + "src": "490:24:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 32, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "490:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 35, + "mutability": "mutable", + "name": "isStakePaid", + "nameLocation": "530:11:0", + "nodeType": "VariableDeclaration", + "scope": 36, + "src": "525:16:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 34, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "525:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "name": "Organization", + "nameLocation": "102:12:0", + "nodeType": "StructDefinition", + "scope": 779, + "src": "95:454:0", + "visibility": "public" + }, + { + "canonicalName": "OrgCreation.OrgDetails", + "id": 55, + "members": [ + { + "constant": false, + "id": 38, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "596:11:0", + "nodeType": "VariableDeclaration", + "scope": 55, + "src": "588:19:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 37, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "588:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 40, + "mutability": "mutable", + "name": "name", + "nameLocation": "625:4:0", + "nodeType": "VariableDeclaration", + "scope": 55, + "src": "618:11:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + }, + "typeName": { + "id": 39, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "618:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 42, + "mutability": "mutable", + "name": "doc_cid", + "nameLocation": "647:7:0", + "nodeType": "VariableDeclaration", + "scope": 55, + "src": "640:14:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + }, + "typeName": { + "id": 41, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "640:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 44, + "mutability": "mutable", + "name": "upvotes", + "nameLocation": "673:7:0", + "nodeType": "VariableDeclaration", + "scope": 55, + "src": "665:15:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 43, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "665:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 46, + "mutability": "mutable", + "name": "downvotes", + "nameLocation": "699:9:0", + "nodeType": "VariableDeclaration", + "scope": 55, + "src": "691:17:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 45, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "691:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 48, + "mutability": "mutable", + "name": "views", + "nameLocation": "727:5:0", + "nodeType": "VariableDeclaration", + "scope": 55, + "src": "719:13:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 47, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "719:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 50, + "mutability": "mutable", + "name": "verification_status", + "nameLocation": "748:19:0", + "nodeType": "VariableDeclaration", + "scope": 55, + "src": "743:24:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 49, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "743:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 52, + "mutability": "mutable", + "name": "desc", + "nameLocation": "785:4:0", + "nodeType": "VariableDeclaration", + "scope": 55, + "src": "778:11:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + }, + "typeName": { + "id": 51, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "778:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 54, + "mutability": "mutable", + "name": "application_time", + "nameLocation": "808:16:0", + "nodeType": "VariableDeclaration", + "scope": 55, + "src": "800:24:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 53, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "800:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "name": "OrgDetails", + "nameLocation": "566:10:0", + "nodeType": "StructDefinition", + "scope": 779, + "src": "559:273:0", + "visibility": "public" + }, + { + "constant": false, + "id": 60, + "mutability": "mutable", + "name": "orgIdentifier", + "nameLocation": "875:13:0", + "nodeType": "VariableDeclaration", + "scope": 779, + "src": "842:46:0", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization)" + }, + "typeName": { + "id": 59, + "keyType": { + "id": 56, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "850:7:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "842:32:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization)" + }, + "valueType": { + "id": 58, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 57, + "name": "Organization", + "nameLocations": [ + "861:12:0" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 36, + "src": "861:12:0" + }, + "referencedDeclaration": 36, + "src": "861:12:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage_ptr", + "typeString": "struct OrgCreation.Organization" + } + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 66, + "mutability": "mutable", + "name": "voters", + "nameLocation": "943:6:0", + "nodeType": "VariableDeclaration", + "scope": 779, + "src": "895:54:0", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + }, + "typeName": { + "id": 65, + "keyType": { + "id": 61, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "903:7:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "895:47:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_mapping$_t_address_$_t_uint256_$_$", + "typeString": "mapping(address => mapping(address => uint256))" + }, + "valueType": { + "id": 64, + "keyType": { + "id": 62, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "922:7:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "914:27:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "valueType": { + "id": 63, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "933:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 70, + "mutability": "mutable", + "name": "verifiedOrgMap", + "nameLocation": "981:14:0", + "nodeType": "VariableDeclaration", + "scope": 779, + "src": "956:39:0", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + }, + "typeName": { + "id": 69, + "keyType": { + "id": 67, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "964:7:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "956:24:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + }, + "valueType": { + "id": 68, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "975:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 74, + "mutability": "mutable", + "name": "temp", + "nameLocation": "1027:4:0", + "nodeType": "VariableDeclaration", + "scope": 779, + "src": "1002:29:0", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + }, + "typeName": { + "id": 73, + "keyType": { + "id": 71, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1010:7:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "1002:24:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + }, + "valueType": { + "id": 72, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1021:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 77, + "mutability": "mutable", + "name": "organizationAddress", + "nameLocation": "1050:19:0", + "nodeType": "VariableDeclaration", + "scope": 779, + "src": "1040:29:0", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 75, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1040:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 76, + "nodeType": "ArrayTypeName", + "src": "1040:9:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 80, + "mutability": "mutable", + "name": "notVotedAddress", + "nameLocation": "1086:15:0", + "nodeType": "VariableDeclaration", + "scope": 779, + "src": "1076:25:0", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 78, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1076:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 79, + "nodeType": "ArrayTypeName", + "src": "1076:9:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 83, + "mutability": "mutable", + "name": "maxPointAddress", + "nameLocation": "1118:15:0", + "nodeType": "VariableDeclaration", + "scope": 779, + "src": "1108:25:0", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 81, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1108:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 82, + "nodeType": "ArrayTypeName", + "src": "1108:9:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "functionSelector": "f851a440", + "id": 85, + "mutability": "mutable", + "name": "admin", + "nameLocation": "1155:5:0", + "nodeType": "VariableDeclaration", + "scope": 779, + "src": "1140:20:0", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 84, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1140:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "public" + }, + { + "constant": false, + "id": 88, + "mutability": "mutable", + "name": "verified_org_cnt", + "nameLocation": "1175:16:0", + "nodeType": "VariableDeclaration", + "scope": 779, + "src": "1167:26:0", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 86, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1167:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "value": { + "hexValue": "31", + "id": 87, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1192:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "visibility": "internal" + }, + { + "constant": false, + "functionSelector": "4cf5d552", + "id": 90, + "mutability": "mutable", + "name": "totalOrganizations", + "nameLocation": "1217:18:0", + "nodeType": "VariableDeclaration", + "scope": 779, + "src": "1202:33:0", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 89, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1202:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "public" + }, + { + "constant": false, + "id": 92, + "mutability": "mutable", + "name": "stakeToBeDistributed", + "nameLocation": "1250:20:0", + "nodeType": "VariableDeclaration", + "scope": 779, + "src": "1242:28:0", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 91, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1242:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 94, + "mutability": "mutable", + "name": "registeredViolations", + "nameLocation": "1285:20:0", + "nodeType": "VariableDeclaration", + "scope": 779, + "src": "1277:28:0", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 93, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1277:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 98, + "mutability": "mutable", + "name": "listOrganizations", + "nameLocation": "1329:17:0", + "nodeType": "VariableDeclaration", + "scope": 779, + "src": "1314:32:0", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_Organization_$36_storage_$dyn_storage", + "typeString": "struct OrgCreation.Organization[]" + }, + "typeName": { + "baseType": { + "id": 96, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 95, + "name": "Organization", + "nameLocations": [ + "1314:12:0" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 36, + "src": "1314:12:0" + }, + "referencedDeclaration": 36, + "src": "1314:12:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage_ptr", + "typeString": "struct OrgCreation.Organization" + } + }, + "id": 97, + "nodeType": "ArrayTypeName", + "src": "1314:14:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_Organization_$36_storage_$dyn_storage_ptr", + "typeString": "struct OrgCreation.Organization[]" + } + }, + "visibility": "internal" + }, + { + "body": { + "id": 136, + "nodeType": "Block", + "src": "1369:258:0", + "statements": [ + { + "expression": { + "id": 104, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 101, + "name": "admin", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 85, + "src": "1380:5:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "expression": { + "id": 102, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "1388:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 103, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1392:6:0", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "1388:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "1380:18:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 105, + "nodeType": "ExpressionStatement", + "src": "1380:18:0" + }, + { + "expression": { + "id": 112, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 106, + "name": "stakeToBeDistributed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 92, + "src": "1409:20:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_rational_500000000000000000_by_1", + "typeString": "int_const 500000000000000000" + }, + "id": 111, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "35", + "id": 107, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1432:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_5_by_1", + "typeString": "int_const 5" + }, + "value": "5" + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_rational_100000000000000000_by_1", + "typeString": "int_const 100000000000000000" + }, + "id": 110, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "leftExpression": { + "hexValue": "3130", + "id": 108, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1436:2:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_10_by_1", + "typeString": "int_const 10" + }, + "value": "10" + }, + "nodeType": "BinaryOperation", + "operator": "**", + "rightExpression": { + "hexValue": "3137", + "id": 109, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1440:2:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_17_by_1", + "typeString": "int_const 17" + }, + "value": "17" + }, + "src": "1436:6:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_100000000000000000_by_1", + "typeString": "int_const 100000000000000000" + } + }, + "src": "1432:10:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_500000000000000000_by_1", + "typeString": "int_const 500000000000000000" + } + }, + "src": "1409:33:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 113, + "nodeType": "ExpressionStatement", + "src": "1409:33:0" + }, + { + "expression": { + "id": 116, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 114, + "name": "registeredViolations", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 94, + "src": "1453:20:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "30", + "id": 115, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1476:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "1453:24:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 117, + "nodeType": "ExpressionStatement", + "src": "1453:24:0" + }, + { + "expression": { + "arguments": [ + { + "expression": { + "id": 119, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "1500:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 120, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1504:6:0", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "1500:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "hexValue": "4f776e6572", + "id": 121, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1511:7:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_929f3fd6848015f83b9210c89f7744e3941acae1195c8bf9f5798c090dc8f497", + "typeString": "literal_string \"Owner\"" + }, + "value": "Owner" + }, + { + "hexValue": "4e6f6e65", + "id": 122, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1519:6:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_8dfce459feaf97691d19cf3eb6893df6359803fdb7503df5d8cce17ab890999d", + "typeString": "literal_string \"None\"" + }, + "value": "None" + }, + { + "hexValue": "4465736372697074696f6e", + "id": 123, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1526:13:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_95e794640ff3efd16bfe738f1a9bf2886d166af549121f57d6e14af6b513f45d", + "typeString": "literal_string \"Description\"" + }, + "value": "Description" + }, + { + "expression": { + "id": 124, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967292, + "src": "1540:5:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 125, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1546:9:0", + "memberName": "timestamp", + "nodeType": "MemberAccess", + "src": "1540:15:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_stringliteral_929f3fd6848015f83b9210c89f7744e3941acae1195c8bf9f5798c090dc8f497", + "typeString": "literal_string \"Owner\"" + }, + { + "typeIdentifier": "t_stringliteral_8dfce459feaf97691d19cf3eb6893df6359803fdb7503df5d8cce17ab890999d", + "typeString": "literal_string \"None\"" + }, + { + "typeIdentifier": "t_stringliteral_95e794640ff3efd16bfe738f1a9bf2886d166af549121f57d6e14af6b513f45d", + "typeString": "literal_string \"Description\"" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 118, + "name": "registerOrg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 650, + "src": "1488:11:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_string_memory_ptr_$_t_uint256_$returns$__$", + "typeString": "function (address,string memory,string memory,string memory,uint256)" + } + }, + "id": 126, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "1488:68:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 127, + "nodeType": "ExpressionStatement", + "src": "1488:68:0" + }, + { + "expression": { + "id": 134, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 128, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "1567:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 131, + "indexExpression": { + "expression": { + "id": 129, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "1581:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 130, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1585:6:0", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "1581:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1567:25:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 132, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "1593:19:0", + "memberName": "verification_status", + "nodeType": "MemberAccess", + "referencedDeclaration": 15, + "src": "1567:45:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 133, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1615:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "1567:52:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 135, + "nodeType": "ExpressionStatement", + "src": "1567:52:0" + } + ] + }, + "id": 137, + "implemented": true, + "kind": "constructor", + "modifiers": [], + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 99, + "nodeType": "ParameterList", + "parameters": [], + "src": "1366:2:0" + }, + "returnParameters": { + "id": 100, + "nodeType": "ParameterList", + "parameters": [], + "src": "1369:0:0" + }, + "scope": 779, + "src": "1355:272:0", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 148, + "nodeType": "Block", + "src": "1798:71:0", + "statements": [ + { + "expression": { + "expression": { + "baseExpression": { + "id": 142, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "1816:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 145, + "indexExpression": { + "expression": { + "id": 143, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "1830:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 144, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1834:6:0", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "1830:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1816:25:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 146, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1842:19:0", + "memberName": "verification_status", + "nodeType": "MemberAccess", + "referencedDeclaration": 15, + "src": "1816:45:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 141, + "id": 147, + "nodeType": "Return", + "src": "1809:52:0" + } + ] + }, + "functionSelector": "80007e83", + "id": 149, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "isVerified", + "nameLocation": "1758:10:0", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 138, + "nodeType": "ParameterList", + "parameters": [], + "src": "1768:2:0" + }, + "returnParameters": { + "id": 141, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 140, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 149, + "src": "1792:4:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 139, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1792:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "1791:6:0" + }, + "scope": 779, + "src": "1749:120:0", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 160, + "nodeType": "Block", + "src": "2005:63:0", + "statements": [ + { + "expression": { + "expression": { + "baseExpression": { + "id": 154, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "2023:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 157, + "indexExpression": { + "expression": { + "id": 155, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "2037:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 156, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2041:6:0", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "2037:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2023:25:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 158, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2049:11:0", + "memberName": "isStakePaid", + "nodeType": "MemberAccess", + "referencedDeclaration": 35, + "src": "2023:37:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 153, + "id": 159, + "nodeType": "Return", + "src": "2016:44:0" + } + ] + }, + "functionSelector": "e3323aba", + "id": 161, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "isStaked", + "nameLocation": "1967:8:0", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 150, + "nodeType": "ParameterList", + "parameters": [], + "src": "1975:2:0" + }, + "returnParameters": { + "id": 153, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 152, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 161, + "src": "1999:4:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 151, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1999:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "1998:6:0" + }, + "scope": 779, + "src": "1958:110:0", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 172, + "nodeType": "Block", + "src": "2167:63:0", + "statements": [ + { + "expression": { + "id": 170, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 164, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "2178:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 167, + "indexExpression": { + "expression": { + "id": 165, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "2192:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 166, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2196:6:0", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "2192:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2178:25:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 168, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "2204:11:0", + "memberName": "isStakePaid", + "nodeType": "MemberAccess", + "referencedDeclaration": 35, + "src": "2178:37:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 169, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2218:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "2178:44:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 171, + "nodeType": "ExpressionStatement", + "src": "2178:44:0" + } + ] + }, + "functionSelector": "a1b0ffe0", + "id": 173, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "changeIsStakedPaid", + "nameLocation": "2139:18:0", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 162, + "nodeType": "ParameterList", + "parameters": [], + "src": "2157:2:0" + }, + "returnParameters": { + "id": 163, + "nodeType": "ParameterList", + "parameters": [], + "src": "2167:0:0" + }, + "scope": 779, + "src": "2130:100:0", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 185, + "nodeType": "Block", + "src": "2397:57:0", + "statements": [ + { + "expression": { + "expression": { + "baseExpression": { + "id": 180, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "2415:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 182, + "indexExpression": { + "id": 181, + "name": "org_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 175, + "src": "2429:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2415:23:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 183, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2439:7:0", + "memberName": "upvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 9, + "src": "2415:31:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 179, + "id": 184, + "nodeType": "Return", + "src": "2408:38:0" + } + ] + }, + "functionSelector": "5cf9303f", + "id": 186, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "countOfUpvotes", + "nameLocation": "2334:14:0", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 176, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 175, + "mutability": "mutable", + "name": "org_addr", + "nameLocation": "2357:8:0", + "nodeType": "VariableDeclaration", + "scope": 186, + "src": "2349:16:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 174, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2349:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2348:18:0" + }, + "returnParameters": { + "id": 179, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 178, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 186, + "src": "2388:7:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 177, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2388:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2387:9:0" + }, + "scope": 779, + "src": "2325:129:0", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 198, + "nodeType": "Block", + "src": "2626:59:0", + "statements": [ + { + "expression": { + "expression": { + "baseExpression": { + "id": 193, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "2644:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 195, + "indexExpression": { + "id": 194, + "name": "org_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 188, + "src": "2658:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2644:23:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 196, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2668:9:0", + "memberName": "downvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 11, + "src": "2644:33:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 192, + "id": 197, + "nodeType": "Return", + "src": "2637:40:0" + } + ] + }, + "functionSelector": "b7627e41", + "id": 199, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "countOfDownvotes", + "nameLocation": "2561:16:0", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 189, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 188, + "mutability": "mutable", + "name": "org_addr", + "nameLocation": "2586:8:0", + "nodeType": "VariableDeclaration", + "scope": 199, + "src": "2578:16:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 187, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2578:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2577:18:0" + }, + "returnParameters": { + "id": 192, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 191, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 199, + "src": "2617:7:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 190, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2617:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2616:9:0" + }, + "scope": 779, + "src": "2552:133:0", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 216, + "nodeType": "Block", + "src": "2763:139:0", + "statements": [ + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 214, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 210, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 206, + "name": "totalOrganizations", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 90, + "src": "2794:18:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "arguments": [ + { + "id": 208, + "name": "org_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 201, + "src": "2843:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 207, + "name": "countOfUpvotes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 186, + "src": "2828:14:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view returns (uint256)" + } + }, + "id": 209, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2828:24:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2794:58:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "arguments": [ + { + "id": 212, + "name": "org_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 201, + "src": "2885:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 211, + "name": "countOfDownvotes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 199, + "src": "2868:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view returns (uint256)" + } + }, + "id": 213, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "2868:26:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2794:100:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "functionReturnParameters": 205, + "id": 215, + "nodeType": "Return", + "src": "2774:120:0" + } + ] + }, + "functionSelector": "e75176b5", + "id": 217, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "countOfViews", + "nameLocation": "2702:12:0", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 202, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 201, + "mutability": "mutable", + "name": "org_addr", + "nameLocation": "2723:8:0", + "nodeType": "VariableDeclaration", + "scope": 217, + "src": "2715:16:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 200, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2715:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2714:18:0" + }, + "returnParameters": { + "id": 205, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 204, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 217, + "src": "2754:7:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 203, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2754:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "2753:9:0" + }, + "scope": 779, + "src": "2693:209:0", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 238, + "nodeType": "Block", + "src": "3047:118:0", + "statements": [ + { + "assignments": [ + 225 + ], + "declarations": [ + { + "constant": false, + "id": 225, + "mutability": "mutable", + "name": "voter_addr", + "nameLocation": "3066:10:0", + "nodeType": "VariableDeclaration", + "scope": 238, + "src": "3058:18:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 224, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3058:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 228, + "initialValue": { + "expression": { + "id": 226, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "3079:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 227, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3083:6:0", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "3079:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3058:31:0" + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "id": 236, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 229, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "3107:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 231, + "indexExpression": { + "id": 230, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 219, + "src": "3121:11:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3107:26:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 232, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3134:6:0", + "memberName": "voters", + "nodeType": "MemberAccess", + "referencedDeclaration": 25, + "src": "3107:33:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint8_$", + "typeString": "mapping(address => uint8)" + } + }, + "id": 234, + "indexExpression": { + "id": 233, + "name": "voter_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 225, + "src": "3141:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3107:45:0", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "32", + "id": 235, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3156:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "src": "3107:50:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 223, + "id": 237, + "nodeType": "Return", + "src": "3100:57:0" + } + ] + }, + "functionSelector": "c9dfca10", + "id": 239, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "checkIfUpvoted", + "nameLocation": "2984:14:0", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 220, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 219, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "3007:11:0", + "nodeType": "VariableDeclaration", + "scope": 239, + "src": "2999:19:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 218, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2999:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "2998:21:0" + }, + "returnParameters": { + "id": 223, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 222, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 239, + "src": "3041:4:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 221, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "3041:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "3040:6:0" + }, + "scope": 779, + "src": "2975:190:0", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 260, + "nodeType": "Block", + "src": "3314:118:0", + "statements": [ + { + "assignments": [ + 247 + ], + "declarations": [ + { + "constant": false, + "id": 247, + "mutability": "mutable", + "name": "voter_addr", + "nameLocation": "3333:10:0", + "nodeType": "VariableDeclaration", + "scope": 260, + "src": "3325:18:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 246, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3325:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 250, + "initialValue": { + "expression": { + "id": 248, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "3346:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 249, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3350:6:0", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "3346:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "3325:31:0" + }, + { + "expression": { + "commonType": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + }, + "id": 258, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 251, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "3374:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 253, + "indexExpression": { + "id": 252, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 241, + "src": "3388:11:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3374:26:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 254, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3401:6:0", + "memberName": "voters", + "nodeType": "MemberAccess", + "referencedDeclaration": 25, + "src": "3374:33:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint8_$", + "typeString": "mapping(address => uint8)" + } + }, + "id": 256, + "indexExpression": { + "id": 255, + "name": "voter_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 247, + "src": "3408:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3374:45:0", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "31", + "id": 257, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3423:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "3374:50:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 245, + "id": 259, + "nodeType": "Return", + "src": "3367:57:0" + } + ] + }, + "functionSelector": "3e85747e", + "id": 261, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "checkIfDownvoted", + "nameLocation": "3249:16:0", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 242, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 241, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "3274:11:0", + "nodeType": "VariableDeclaration", + "scope": 261, + "src": "3266:19:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 240, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3266:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "3265:21:0" + }, + "returnParameters": { + "id": 245, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 244, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 261, + "src": "3308:4:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 243, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "3308:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "3307:6:0" + }, + "scope": 779, + "src": "3240:192:0", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 283, + "nodeType": "Block", + "src": "3655:162:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 275, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 270, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "3670:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 272, + "indexExpression": { + "id": 271, + "name": "org_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 263, + "src": "3684:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3670:23:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 273, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3694:16:0", + "memberName": "application_time", + "nodeType": "MemberAccess", + "referencedDeclaration": 33, + "src": "3670:40:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 274, + "name": "current_time", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 265, + "src": "3713:12:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3670:55:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 281, + "nodeType": "Block", + "src": "3771:39:0", + "statements": [ + { + "expression": { + "hexValue": "66616c7365", + "id": 279, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3793:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "functionReturnParameters": 269, + "id": 280, + "nodeType": "Return", + "src": "3786:12:0" + } + ] + }, + "id": 282, + "nodeType": "IfStatement", + "src": "3666:144:0", + "trueBody": { + "id": 278, + "nodeType": "Block", + "src": "3727:38:0", + "statements": [ + { + "expression": { + "hexValue": "74727565", + "id": 276, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3749:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 269, + "id": 277, + "nodeType": "Return", + "src": "3742:11:0" + } + ] + } + } + ] + }, + "functionSelector": "4648df2a", + "id": 284, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "votingDone", + "nameLocation": "3552:10:0", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 266, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 263, + "mutability": "mutable", + "name": "org_addr", + "nameLocation": "3581:8:0", + "nodeType": "VariableDeclaration", + "scope": 284, + "src": "3573:16:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 262, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3573:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 265, + "mutability": "mutable", + "name": "current_time", + "nameLocation": "3608:12:0", + "nodeType": "VariableDeclaration", + "scope": 284, + "src": "3600:20:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 264, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3600:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "3562:65:0" + }, + "returnParameters": { + "id": 269, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 268, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 284, + "src": "3649:4:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 267, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "3649:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "3648:6:0" + }, + "scope": 779, + "src": "3543:274:0", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 379, + "nodeType": "Block", + "src": "4028:1078:0", + "statements": [ + { + "assignments": [ + 292 + ], + "declarations": [ + { + "constant": false, + "id": 292, + "mutability": "mutable", + "name": "len", + "nameLocation": "4047:3:0", + "nodeType": "VariableDeclaration", + "scope": 379, + "src": "4039:11:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 291, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4039:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 295, + "initialValue": { + "expression": { + "id": 293, + "name": "organizationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 77, + "src": "4053:19:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 294, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4073:6:0", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "4053:26:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4039:40:0" + }, + { + "assignments": [ + 297 + ], + "declarations": [ + { + "constant": false, + "id": 297, + "mutability": "mutable", + "name": "cnt", + "nameLocation": "4098:3:0", + "nodeType": "VariableDeclaration", + "scope": 379, + "src": "4090:11:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 296, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4090:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 299, + "initialValue": { + "hexValue": "30", + "id": 298, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4104:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "4090:15:0" + }, + { + "assignments": [ + 304 + ], + "declarations": [ + { + "constant": false, + "id": 304, + "mutability": "mutable", + "name": "verified_org", + "nameLocation": "4136:12:0", + "nodeType": "VariableDeclaration", + "scope": 379, + "src": "4116:32:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr", + "typeString": "struct OrgCreation.OrgDetails[]" + }, + "typeName": { + "baseType": { + "id": 302, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 301, + "name": "OrgDetails", + "nameLocations": [ + "4116:10:0" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 55, + "src": "4116:10:0" + }, + "referencedDeclaration": 55, + "src": "4116:10:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_OrgDetails_$55_storage_ptr", + "typeString": "struct OrgCreation.OrgDetails" + } + }, + "id": 303, + "nodeType": "ArrayTypeName", + "src": "4116:12:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_OrgDetails_$55_storage_$dyn_storage_ptr", + "typeString": "struct OrgCreation.OrgDetails[]" + } + }, + "visibility": "internal" + } + ], + "id": 311, + "initialValue": { + "arguments": [ + { + "id": 309, + "name": "verified_org_cnt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 88, + "src": "4168:16:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 308, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "4151:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr_$", + "typeString": "function (uint256) pure returns (struct OrgCreation.OrgDetails memory[] memory)" + }, + "typeName": { + "baseType": { + "id": 306, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 305, + "name": "OrgDetails", + "nameLocations": [ + "4155:10:0" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 55, + "src": "4155:10:0" + }, + "referencedDeclaration": 55, + "src": "4155:10:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_OrgDetails_$55_storage_ptr", + "typeString": "struct OrgCreation.OrgDetails" + } + }, + "id": 307, + "nodeType": "ArrayTypeName", + "src": "4155:12:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_OrgDetails_$55_storage_$dyn_storage_ptr", + "typeString": "struct OrgCreation.OrgDetails[]" + } + } + }, + "id": 310, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4151:34:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr", + "typeString": "struct OrgCreation.OrgDetails memory[] memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4116:69:0" + }, + { + "body": { + "id": 375, + "nodeType": "Block", + "src": "4230:839:0", + "statements": [ + { + "assignments": [ + 323 + ], + "declarations": [ + { + "constant": false, + "id": 323, + "mutability": "mutable", + "name": "org_addr", + "nameLocation": "4253:8:0", + "nodeType": "VariableDeclaration", + "scope": 375, + "src": "4245:16:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 322, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "4245:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 327, + "initialValue": { + "baseExpression": { + "id": 324, + "name": "organizationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 77, + "src": "4264:19:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 326, + "indexExpression": { + "id": 325, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 313, + "src": "4284:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4264:22:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4245:41:0" + }, + { + "condition": { + "expression": { + "baseExpression": { + "id": 328, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "4305:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 330, + "indexExpression": { + "id": 329, + "name": "org_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 323, + "src": "4319:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4305:23:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 331, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4329:19:0", + "memberName": "verification_status", + "nodeType": "MemberAccess", + "referencedDeclaration": 15, + "src": "4305:43:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 374, + "nodeType": "IfStatement", + "src": "4301:757:0", + "trueBody": { + "id": 373, + "nodeType": "Block", + "src": "4350:708:0", + "statements": [ + { + "assignments": [ + 334 + ], + "declarations": [ + { + "constant": false, + "id": 334, + "mutability": "mutable", + "name": "new_org", + "nameLocation": "4390:7:0", + "nodeType": "VariableDeclaration", + "scope": 373, + "src": "4369:28:0", + "stateVariable": false, + "storageLocation": "storage", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage_ptr", + "typeString": "struct OrgCreation.Organization" + }, + "typeName": { + "id": 333, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 332, + "name": "Organization", + "nameLocations": [ + "4369:12:0" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 36, + "src": "4369:12:0" + }, + "referencedDeclaration": 36, + "src": "4369:12:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage_ptr", + "typeString": "struct OrgCreation.Organization" + } + }, + "visibility": "internal" + } + ], + "id": 338, + "initialValue": { + "baseExpression": { + "id": 335, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "4400:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 337, + "indexExpression": { + "id": 336, + "name": "org_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 323, + "src": "4414:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4400:23:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4369:54:0" + }, + { + "assignments": [ + 341 + ], + "declarations": [ + { + "constant": false, + "id": 341, + "mutability": "mutable", + "name": "new_org_det", + "nameLocation": "4460:11:0", + "nodeType": "VariableDeclaration", + "scope": 373, + "src": "4442:29:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_OrgDetails_$55_memory_ptr", + "typeString": "struct OrgCreation.OrgDetails" + }, + "typeName": { + "id": 340, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 339, + "name": "OrgDetails", + "nameLocations": [ + "4442:10:0" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 55, + "src": "4442:10:0" + }, + "referencedDeclaration": 55, + "src": "4442:10:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_OrgDetails_$55_storage_ptr", + "typeString": "struct OrgCreation.OrgDetails" + } + }, + "visibility": "internal" + } + ], + "id": 362, + "initialValue": { + "arguments": [ + { + "expression": { + "id": 343, + "name": "new_org", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 334, + "src": "4521:7:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage_ptr", + "typeString": "struct OrgCreation.Organization storage pointer" + } + }, + "id": 344, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4529:11:0", + "memberName": "org_address", + "nodeType": "MemberAccess", + "referencedDeclaration": 3, + "src": "4521:19:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "expression": { + "id": 345, + "name": "new_org", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 334, + "src": "4569:7:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage_ptr", + "typeString": "struct OrgCreation.Organization storage pointer" + } + }, + "id": 346, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4577:4:0", + "memberName": "name", + "nodeType": "MemberAccess", + "referencedDeclaration": 5, + "src": "4569:12:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + { + "expression": { + "id": 347, + "name": "new_org", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 334, + "src": "4613:7:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage_ptr", + "typeString": "struct OrgCreation.Organization storage pointer" + } + }, + "id": 348, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4621:7:0", + "memberName": "doc_cid", + "nodeType": "MemberAccess", + "referencedDeclaration": 7, + "src": "4613:15:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + { + "expression": { + "id": 349, + "name": "new_org", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 334, + "src": "4660:7:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage_ptr", + "typeString": "struct OrgCreation.Organization storage pointer" + } + }, + "id": 350, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4668:7:0", + "memberName": "upvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 9, + "src": "4660:15:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "expression": { + "id": 351, + "name": "new_org", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 334, + "src": "4709:7:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage_ptr", + "typeString": "struct OrgCreation.Organization storage pointer" + } + }, + "id": 352, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4717:9:0", + "memberName": "downvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 11, + "src": "4709:17:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "expression": { + "id": 353, + "name": "new_org", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 334, + "src": "4755:7:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage_ptr", + "typeString": "struct OrgCreation.Organization storage pointer" + } + }, + "id": 354, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4763:5:0", + "memberName": "views", + "nodeType": "MemberAccess", + "referencedDeclaration": 13, + "src": "4755:13:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "expression": { + "id": 355, + "name": "new_org", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 334, + "src": "4812:7:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage_ptr", + "typeString": "struct OrgCreation.Organization storage pointer" + } + }, + "id": 356, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4820:19:0", + "memberName": "verification_status", + "nodeType": "MemberAccess", + "referencedDeclaration": 15, + "src": "4812:27:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "expression": { + "id": 357, + "name": "new_org", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 334, + "src": "4868:7:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage_ptr", + "typeString": "struct OrgCreation.Organization storage pointer" + } + }, + "id": 358, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4876:4:0", + "memberName": "desc", + "nodeType": "MemberAccess", + "referencedDeclaration": 29, + "src": "4868:12:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + { + "expression": { + "id": 359, + "name": "new_org", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 334, + "src": "4921:7:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage_ptr", + "typeString": "struct OrgCreation.Organization storage pointer" + } + }, + "id": 360, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4929:16:0", + "memberName": "application_time", + "nodeType": "MemberAccess", + "referencedDeclaration": 33, + "src": "4921:24:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + }, + { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 342, + "name": "OrgDetails", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 55, + "src": "4474:10:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_struct$_OrgDetails_$55_storage_ptr_$", + "typeString": "type(struct OrgCreation.OrgDetails storage pointer)" + } + }, + "id": 361, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "structConstructorCall", + "lValueRequested": false, + "nameLocations": [ + "4508:11:0", + "4563:4:0", + "4604:7:0", + "4651:7:0", + "4698:9:0", + "4749:5:0", + "4791:19:0", + "4862:4:0", + "4903:16:0" + ], + "names": [ + "org_address", + "name", + "doc_cid", + "upvotes", + "downvotes", + "views", + "verification_status", + "desc", + "application_time" + ], + "nodeType": "FunctionCall", + "src": "4474:491:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_OrgDetails_$55_memory_ptr", + "typeString": "struct OrgCreation.OrgDetails memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "4442:523:0" + }, + { + "expression": { + "id": 367, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 363, + "name": "verified_org", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 304, + "src": "4984:12:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr", + "typeString": "struct OrgCreation.OrgDetails memory[] memory" + } + }, + "id": 365, + "indexExpression": { + "id": 364, + "name": "cnt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 297, + "src": "4997:3:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "4984:17:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_OrgDetails_$55_memory_ptr", + "typeString": "struct OrgCreation.OrgDetails memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 366, + "name": "new_org_det", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 341, + "src": "5004:11:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_OrgDetails_$55_memory_ptr", + "typeString": "struct OrgCreation.OrgDetails memory" + } + }, + "src": "4984:31:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_OrgDetails_$55_memory_ptr", + "typeString": "struct OrgCreation.OrgDetails memory" + } + }, + "id": 368, + "nodeType": "ExpressionStatement", + "src": "4984:31:0" + }, + { + "expression": { + "id": 371, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 369, + "name": "cnt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 297, + "src": "5034:3:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "31", + "id": 370, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5041:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "5034:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 372, + "nodeType": "ExpressionStatement", + "src": "5034:8:0" + } + ] + } + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 318, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 316, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 313, + "src": "4216:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 317, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 292, + "src": "4220:3:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4216:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 376, + "initializationExpression": { + "assignments": [ + 313 + ], + "declarations": [ + { + "constant": false, + "id": 313, + "mutability": "mutable", + "name": "i", + "nameLocation": "4209:1:0", + "nodeType": "VariableDeclaration", + "scope": 376, + "src": "4201:9:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 312, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4201:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 315, + "initialValue": { + "hexValue": "30", + "id": 314, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4213:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "4201:13:0" + }, + "loopExpression": { + "expression": { + "id": 320, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "4225:3:0", + "subExpression": { + "id": 319, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 313, + "src": "4225:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 321, + "nodeType": "ExpressionStatement", + "src": "4225:3:0" + }, + "nodeType": "ForStatement", + "src": "4196:873:0" + }, + { + "expression": { + "id": 377, + "name": "verified_org", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 304, + "src": "5086:12:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr", + "typeString": "struct OrgCreation.OrgDetails memory[] memory" + } + }, + "functionReturnParameters": 290, + "id": 378, + "nodeType": "Return", + "src": "5079:19:0" + } + ] + }, + "functionSelector": "5d0161f1", + "id": 380, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "verifiedOrganizationsList", + "nameLocation": "3926:25:0", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 285, + "nodeType": "ParameterList", + "parameters": [], + "src": "3951:2:0" + }, + "returnParameters": { + "id": 290, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 289, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 380, + "src": "4002:19:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr", + "typeString": "struct OrgCreation.OrgDetails[]" + }, + "typeName": { + "baseType": { + "id": 287, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 286, + "name": "OrgDetails", + "nameLocations": [ + "4002:10:0" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 55, + "src": "4002:10:0" + }, + "referencedDeclaration": 55, + "src": "4002:10:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_OrgDetails_$55_storage_ptr", + "typeString": "struct OrgCreation.OrgDetails" + } + }, + "id": 288, + "nodeType": "ArrayTypeName", + "src": "4002:12:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_OrgDetails_$55_storage_$dyn_storage_ptr", + "typeString": "struct OrgCreation.OrgDetails[]" + } + }, + "visibility": "internal" + } + ], + "src": "4001:21:0" + }, + "scope": 779, + "src": "3917:1189:0", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 490, + "nodeType": "Block", + "src": "5319:1201:0", + "statements": [ + { + "assignments": [ + 388 + ], + "declarations": [ + { + "constant": false, + "id": 388, + "mutability": "mutable", + "name": "len", + "nameLocation": "5338:3:0", + "nodeType": "VariableDeclaration", + "scope": 490, + "src": "5330:11:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 387, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5330:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 391, + "initialValue": { + "expression": { + "id": 389, + "name": "organizationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 77, + "src": "5344:19:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 390, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5364:6:0", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "5344:26:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5330:40:0" + }, + { + "assignments": [ + 393 + ], + "declarations": [ + { + "constant": false, + "id": 393, + "mutability": "mutable", + "name": "cnt", + "nameLocation": "5389:3:0", + "nodeType": "VariableDeclaration", + "scope": 490, + "src": "5381:11:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 392, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5381:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 395, + "initialValue": { + "hexValue": "30", + "id": 394, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5395:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "5381:15:0" + }, + { + "assignments": [ + 400 + ], + "declarations": [ + { + "constant": false, + "id": 400, + "mutability": "mutable", + "name": "unverified_org", + "nameLocation": "5427:14:0", + "nodeType": "VariableDeclaration", + "scope": 490, + "src": "5407:34:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr", + "typeString": "struct OrgCreation.OrgDetails[]" + }, + "typeName": { + "baseType": { + "id": 398, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 397, + "name": "OrgDetails", + "nameLocations": [ + "5407:10:0" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 55, + "src": "5407:10:0" + }, + "referencedDeclaration": 55, + "src": "5407:10:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_OrgDetails_$55_storage_ptr", + "typeString": "struct OrgCreation.OrgDetails" + } + }, + "id": 399, + "nodeType": "ArrayTypeName", + "src": "5407:12:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_OrgDetails_$55_storage_$dyn_storage_ptr", + "typeString": "struct OrgCreation.OrgDetails[]" + } + }, + "visibility": "internal" + } + ], + "id": 410, + "initialValue": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 408, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "id": 405, + "name": "organizationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 77, + "src": "5475:19:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 406, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5495:6:0", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "5475:26:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 407, + "name": "verified_org_cnt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 88, + "src": "5504:16:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5475:45:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 404, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "5444:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_objectcreation_pure$_t_uint256_$returns$_t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr_$", + "typeString": "function (uint256) pure returns (struct OrgCreation.OrgDetails memory[] memory)" + }, + "typeName": { + "baseType": { + "id": 402, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 401, + "name": "OrgDetails", + "nameLocations": [ + "5448:10:0" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 55, + "src": "5448:10:0" + }, + "referencedDeclaration": 55, + "src": "5448:10:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_OrgDetails_$55_storage_ptr", + "typeString": "struct OrgCreation.OrgDetails" + } + }, + "id": 403, + "nodeType": "ArrayTypeName", + "src": "5448:12:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_OrgDetails_$55_storage_$dyn_storage_ptr", + "typeString": "struct OrgCreation.OrgDetails[]" + } + } + }, + "id": 409, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5444:87:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr", + "typeString": "struct OrgCreation.OrgDetails memory[] memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5407:124:0" + }, + { + "body": { + "id": 486, + "nodeType": "Block", + "src": "5576:905:0", + "statements": [ + { + "assignments": [ + 422 + ], + "declarations": [ + { + "constant": false, + "id": 422, + "mutability": "mutable", + "name": "org_addr", + "nameLocation": "5599:8:0", + "nodeType": "VariableDeclaration", + "scope": 486, + "src": "5591:16:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 421, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5591:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "id": 426, + "initialValue": { + "baseExpression": { + "id": 423, + "name": "organizationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 77, + "src": "5610:19:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 425, + "indexExpression": { + "id": 424, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 412, + "src": "5630:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5610:22:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5591:41:0" + }, + { + "condition": { + "id": 431, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "5651:44:0", + "subExpression": { + "expression": { + "baseExpression": { + "id": 427, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "5652:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 429, + "indexExpression": { + "id": 428, + "name": "org_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 422, + "src": "5666:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5652:23:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 430, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5676:19:0", + "memberName": "verification_status", + "nodeType": "MemberAccess", + "referencedDeclaration": 15, + "src": "5652:43:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 485, + "nodeType": "IfStatement", + "src": "5647:823:0", + "trueBody": { + "id": 484, + "nodeType": "Block", + "src": "5697:773:0", + "statements": [ + { + "assignments": [ + 434 + ], + "declarations": [ + { + "constant": false, + "id": 434, + "mutability": "mutable", + "name": "new_org", + "nameLocation": "5734:7:0", + "nodeType": "VariableDeclaration", + "scope": 484, + "src": "5716:25:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_OrgDetails_$55_memory_ptr", + "typeString": "struct OrgCreation.OrgDetails" + }, + "typeName": { + "id": 433, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 432, + "name": "OrgDetails", + "nameLocations": [ + "5716:10:0" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 55, + "src": "5716:10:0" + }, + "referencedDeclaration": 55, + "src": "5716:10:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_OrgDetails_$55_storage_ptr", + "typeString": "struct OrgCreation.OrgDetails" + } + }, + "visibility": "internal" + } + ], + "id": 473, + "initialValue": { + "arguments": [ + { + "expression": { + "baseExpression": { + "id": 436, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "5791:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 438, + "indexExpression": { + "id": 437, + "name": "org_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 422, + "src": "5805:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5791:23:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 439, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5815:11:0", + "memberName": "org_address", + "nodeType": "MemberAccess", + "referencedDeclaration": 3, + "src": "5791:35:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "expression": { + "baseExpression": { + "id": 440, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "5855:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 442, + "indexExpression": { + "id": 441, + "name": "org_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 422, + "src": "5869:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5855:23:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 443, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5879:4:0", + "memberName": "name", + "nodeType": "MemberAccess", + "referencedDeclaration": 5, + "src": "5855:28:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + { + "expression": { + "baseExpression": { + "id": 444, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "5915:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 446, + "indexExpression": { + "id": 445, + "name": "org_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 422, + "src": "5929:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5915:23:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 447, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5939:7:0", + "memberName": "doc_cid", + "nodeType": "MemberAccess", + "referencedDeclaration": 7, + "src": "5915:31:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + { + "expression": { + "baseExpression": { + "id": 448, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "5978:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 450, + "indexExpression": { + "id": 449, + "name": "org_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 422, + "src": "5992:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5978:23:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 451, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6002:7:0", + "memberName": "upvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 9, + "src": "5978:31:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "expression": { + "baseExpression": { + "id": 452, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "6043:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 454, + "indexExpression": { + "id": 453, + "name": "org_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 422, + "src": "6057:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6043:23:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 455, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6067:9:0", + "memberName": "downvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 11, + "src": "6043:33:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "expression": { + "baseExpression": { + "id": 456, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "6105:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 458, + "indexExpression": { + "id": 457, + "name": "org_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 422, + "src": "6119:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6105:23:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 459, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6129:5:0", + "memberName": "views", + "nodeType": "MemberAccess", + "referencedDeclaration": 13, + "src": "6105:29:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + { + "expression": { + "baseExpression": { + "id": 460, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "6178:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 462, + "indexExpression": { + "id": 461, + "name": "org_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 422, + "src": "6192:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6178:23:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 463, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6202:19:0", + "memberName": "verification_status", + "nodeType": "MemberAccess", + "referencedDeclaration": 15, + "src": "6178:43:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "expression": { + "baseExpression": { + "id": 464, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "6250:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 466, + "indexExpression": { + "id": 465, + "name": "org_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 422, + "src": "6264:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6250:23:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 467, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6274:4:0", + "memberName": "desc", + "nodeType": "MemberAccess", + "referencedDeclaration": 29, + "src": "6250:28:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + { + "expression": { + "baseExpression": { + "id": 468, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "6319:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 470, + "indexExpression": { + "id": 469, + "name": "org_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 422, + "src": "6333:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6319:23:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 471, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6343:16:0", + "memberName": "application_time", + "nodeType": "MemberAccess", + "referencedDeclaration": 33, + "src": "6319:40:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + }, + { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 435, + "name": "OrgDetails", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 55, + "src": "5744:10:0", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_struct$_OrgDetails_$55_storage_ptr_$", + "typeString": "type(struct OrgCreation.OrgDetails storage pointer)" + } + }, + "id": 472, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "structConstructorCall", + "lValueRequested": false, + "nameLocations": [ + "5778:11:0", + "5849:4:0", + "5906:7:0", + "5969:7:0", + "6032:9:0", + "6099:5:0", + "6157:19:0", + "6244:4:0", + "6301:16:0" + ], + "names": [ + "org_address", + "name", + "doc_cid", + "upvotes", + "downvotes", + "views", + "verification_status", + "desc", + "application_time" + ], + "nodeType": "FunctionCall", + "src": "5744:635:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_struct$_OrgDetails_$55_memory_ptr", + "typeString": "struct OrgCreation.OrgDetails memory" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5716:663:0" + }, + { + "expression": { + "id": 478, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 474, + "name": "unverified_org", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 400, + "src": "6398:14:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr", + "typeString": "struct OrgCreation.OrgDetails memory[] memory" + } + }, + "id": 476, + "indexExpression": { + "id": 475, + "name": "cnt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 393, + "src": "6413:3:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "6398:19:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_OrgDetails_$55_memory_ptr", + "typeString": "struct OrgCreation.OrgDetails memory" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 477, + "name": "new_org", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 434, + "src": "6420:7:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_OrgDetails_$55_memory_ptr", + "typeString": "struct OrgCreation.OrgDetails memory" + } + }, + "src": "6398:29:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_OrgDetails_$55_memory_ptr", + "typeString": "struct OrgCreation.OrgDetails memory" + } + }, + "id": 479, + "nodeType": "ExpressionStatement", + "src": "6398:29:0" + }, + { + "expression": { + "id": 482, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 480, + "name": "cnt", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 393, + "src": "6446:3:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "31", + "id": 481, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6453:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "6446:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 483, + "nodeType": "ExpressionStatement", + "src": "6446:8:0" + } + ] + } + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 417, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 415, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 412, + "src": "5562:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 416, + "name": "len", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 388, + "src": "5566:3:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5562:7:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 487, + "initializationExpression": { + "assignments": [ + 412 + ], + "declarations": [ + { + "constant": false, + "id": 412, + "mutability": "mutable", + "name": "i", + "nameLocation": "5555:1:0", + "nodeType": "VariableDeclaration", + "scope": 487, + "src": "5547:9:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 411, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5547:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 414, + "initialValue": { + "hexValue": "30", + "id": 413, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5559:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "5547:13:0" + }, + "loopExpression": { + "expression": { + "id": 419, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "5571:3:0", + "subExpression": { + "id": 418, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 412, + "src": "5571:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 420, + "nodeType": "ExpressionStatement", + "src": "5571:3:0" + }, + "nodeType": "ForStatement", + "src": "5542:939:0" + }, + { + "expression": { + "id": 488, + "name": "unverified_org", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 400, + "src": "6498:14:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr", + "typeString": "struct OrgCreation.OrgDetails memory[] memory" + } + }, + "functionReturnParameters": 386, + "id": 489, + "nodeType": "Return", + "src": "6491:21:0" + } + ] + }, + "functionSelector": "2d80468d", + "id": 491, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "unverifiedOrganizationsList", + "nameLocation": "5215:27:0", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 381, + "nodeType": "ParameterList", + "parameters": [], + "src": "5242:2:0" + }, + "returnParameters": { + "id": 386, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 385, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 491, + "src": "5293:19:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_OrgDetails_$55_memory_ptr_$dyn_memory_ptr", + "typeString": "struct OrgCreation.OrgDetails[]" + }, + "typeName": { + "baseType": { + "id": 383, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 382, + "name": "OrgDetails", + "nameLocations": [ + "5293:10:0" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 55, + "src": "5293:10:0" + }, + "referencedDeclaration": 55, + "src": "5293:10:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_OrgDetails_$55_storage_ptr", + "typeString": "struct OrgCreation.OrgDetails" + } + }, + "id": 384, + "nodeType": "ArrayTypeName", + "src": "5293:12:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_OrgDetails_$55_storage_$dyn_storage_ptr", + "typeString": "struct OrgCreation.OrgDetails[]" + } + }, + "visibility": "internal" + } + ], + "src": "5292:21:0" + }, + "scope": 779, + "src": "5206:1314:0", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 516, + "nodeType": "Block", + "src": "6640:161:0", + "statements": [ + { + "assignments": [ + 495 + ], + "declarations": [ + { + "constant": false, + "id": 495, + "mutability": "mutable", + "name": "timeLoop", + "nameLocation": "6659:8:0", + "nodeType": "VariableDeclaration", + "scope": 516, + "src": "6651:16:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 494, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6651:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 498, + "initialValue": { + "expression": { + "id": 496, + "name": "listOrganizations", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 98, + "src": "6670:17:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_Organization_$36_storage_$dyn_storage", + "typeString": "struct OrgCreation.Organization storage ref[] storage ref" + } + }, + "id": 497, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6688:6:0", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "6670:24:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "6651:43:0" + }, + { + "body": { + "id": 514, + "nodeType": "Block", + "src": "6744:50:0", + "statements": [ + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 509, + "name": "listOrganizations", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 98, + "src": "6759:17:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_struct$_Organization_$36_storage_$dyn_storage", + "typeString": "struct OrgCreation.Organization storage ref[] storage ref" + } + }, + "id": 511, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6777:3:0", + "memberName": "pop", + "nodeType": "MemberAccess", + "src": "6759:21:0", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypop_nonpayable$_t_array$_t_struct$_Organization_$36_storage_$dyn_storage_ptr_$returns$__$bound_to$_t_array$_t_struct$_Organization_$36_storage_$dyn_storage_ptr_$", + "typeString": "function (struct OrgCreation.Organization storage ref[] storage pointer)" + } + }, + "id": 512, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6759:23:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 513, + "nodeType": "ExpressionStatement", + "src": "6759:23:0" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 505, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 503, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 500, + "src": "6725:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 504, + "name": "timeLoop", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 495, + "src": "6729:8:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6725:12:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 515, + "initializationExpression": { + "assignments": [ + 500 + ], + "declarations": [ + { + "constant": false, + "id": 500, + "mutability": "mutable", + "name": "i", + "nameLocation": "6718:1:0", + "nodeType": "VariableDeclaration", + "scope": 515, + "src": "6710:9:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 499, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6710:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 502, + "initialValue": { + "hexValue": "30", + "id": 501, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6722:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "6710:13:0" + }, + "loopExpression": { + "expression": { + "id": 507, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "6739:3:0", + "subExpression": { + "id": 506, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 500, + "src": "6739:1:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 508, + "nodeType": "ExpressionStatement", + "src": "6739:3:0" + }, + "nodeType": "ForStatement", + "src": "6705:89:0" + } + ] + }, + "functionSelector": "8fc0ed2f", + "id": 517, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "emptyListOrganization", + "nameLocation": "6609:21:0", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 492, + "nodeType": "ParameterList", + "parameters": [], + "src": "6630:2:0" + }, + "returnParameters": { + "id": 493, + "nodeType": "ParameterList", + "parameters": [], + "src": "6640:0:0" + }, + "scope": 779, + "src": "6600:201:0", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 571, + "nodeType": "Block", + "src": "6853:692:0", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 527, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 522, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "6886:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 524, + "indexExpression": { + "id": 523, + "name": "org_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 519, + "src": "6900:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6886:23:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 525, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6910:16:0", + "memberName": "application_time", + "nodeType": "MemberAccess", + "referencedDeclaration": 33, + "src": "6886:40:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "hexValue": "30", + "id": 526, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6930:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "6886:45:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4f7267616e697a6174696f6e206164647265737320646f6573206e6f7420657869737421", + "id": 528, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6946:38:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_ddeb0b25a32bdbd6903219d580ec164d518abe435832e90b114c90315c52a2cf", + "typeString": "literal_string \"Organization address does not exist!\"" + }, + "value": "Organization address does not exist!" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_ddeb0b25a32bdbd6903219d580ec164d518abe435832e90b114c90315c52a2cf", + "typeString": "literal_string \"Organization address does not exist!\"" + } + ], + "id": 521, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "6864:7:0", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 529, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "6864:131:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 530, + "nodeType": "ExpressionStatement", + "src": "6864:131:0" + }, + { + "expression": { + "arguments": [ + { + "id": 536, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "7028:44:0", + "subExpression": { + "expression": { + "baseExpression": { + "id": 532, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "7029:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 534, + "indexExpression": { + "id": 533, + "name": "org_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 519, + "src": "7043:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7029:23:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 535, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7053:19:0", + "memberName": "verification_status", + "nodeType": "MemberAccess", + "referencedDeclaration": 15, + "src": "7029:43:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4f7267616e697a6174696f6e20616c726561647920766572696669656421", + "id": 537, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7087:32:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_53664b562d96b321f827bfb375320c905b5c20116fabd3735d276655e7a84701", + "typeString": "literal_string \"Organization already verified!\"" + }, + "value": "Organization already verified!" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_53664b562d96b321f827bfb375320c905b5c20116fabd3735d276655e7a84701", + "typeString": "literal_string \"Organization already verified!\"" + } + ], + "id": 531, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "7006:7:0", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 538, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7006:124:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 539, + "nodeType": "ExpressionStatement", + "src": "7006:124:0" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 553, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 547, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 541, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "7163:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 544, + "indexExpression": { + "expression": { + "id": 542, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "7177:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 543, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7181:6:0", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "7177:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7163:25:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 545, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7189:16:0", + "memberName": "application_time", + "nodeType": "MemberAccess", + "referencedDeclaration": 33, + "src": "7163:42:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "hexValue": "30", + "id": 546, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7209:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "7163:47:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "expression": { + "baseExpression": { + "id": 548, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "7231:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 551, + "indexExpression": { + "expression": { + "id": 549, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "7245:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 550, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7249:6:0", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "7245:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7231:25:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 552, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7257:19:0", + "memberName": "verification_status", + "nodeType": "MemberAccess", + "referencedDeclaration": 15, + "src": "7231:45:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7163:113:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "566f746572206f7267616e697a6174696f6e206973206e6f742076657269666965642c206e6f74207065726d697474656420746f20766f746521", + "id": 554, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7291:60:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_a8c8730adc0a679cd4a5e2b2364d02c0d62620d7a5cf6d44281730f36a7832c1", + "typeString": "literal_string \"Voter organization is not verified, not permitted to vote!\"" + }, + "value": "Voter organization is not verified, not permitted to vote!" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_a8c8730adc0a679cd4a5e2b2364d02c0d62620d7a5cf6d44281730f36a7832c1", + "typeString": "literal_string \"Voter organization is not verified, not permitted to vote!\"" + } + ], + "id": 540, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "7141:7:0", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 555, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7141:221:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 556, + "nodeType": "ExpressionStatement", + "src": "7141:221:0" + }, + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 566, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 561, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "7395:25:0", + "subExpression": { + "arguments": [ + { + "id": 559, + "name": "org_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 519, + "src": "7411:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 558, + "name": "checkIfUpvoted", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 239, + "src": "7396:14:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", + "typeString": "function (address) view returns (bool)" + } + }, + "id": 560, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7396:24:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "id": 565, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "!", + "prefix": true, + "src": "7424:27:0", + "subExpression": { + "arguments": [ + { + "id": 563, + "name": "org_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 519, + "src": "7442:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 562, + "name": "checkIfDownvoted", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 261, + "src": "7425:16:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", + "typeString": "function (address) view returns (bool)" + } + }, + "id": 564, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7425:26:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "7395:56:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "566f746572206f7267616e697a6174696f6e2063616e6e6f7420766f7465206d6f7265207468616e206f6e636521", + "id": 567, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7466:48:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_414be5daad95c532f9b7381e52ffca6776b0449e47c566018321a361a4b95d16", + "typeString": "literal_string \"Voter organization cannot vote more than once!\"" + }, + "value": "Voter organization cannot vote more than once!" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_414be5daad95c532f9b7381e52ffca6776b0449e47c566018321a361a4b95d16", + "typeString": "literal_string \"Voter organization cannot vote more than once!\"" + } + ], + "id": 557, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "7373:7:0", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 568, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7373:152:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 569, + "nodeType": "ExpressionStatement", + "src": "7373:152:0" + }, + { + "id": 570, + "nodeType": "PlaceholderStatement", + "src": "7536:1:0" + } + ] + }, + "id": 572, + "name": "isValidOrg", + "nameLocation": "6818:10:0", + "nodeType": "ModifierDefinition", + "parameters": { + "id": 520, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 519, + "mutability": "mutable", + "name": "org_addr", + "nameLocation": "6838:8:0", + "nodeType": "VariableDeclaration", + "scope": 572, + "src": "6830:16:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 518, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6830:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "6829:18:0" + }, + "src": "6809:736:0", + "virtual": false, + "visibility": "internal" + }, + { + "body": { + "id": 649, + "nodeType": "Block", + "src": "7916:673:0", + "statements": [ + { + "expression": { + "arguments": [ + { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 591, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 586, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "7949:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 588, + "indexExpression": { + "id": 587, + "name": "organization_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 574, + "src": "7963:20:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7949:35:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 589, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7985:16:0", + "memberName": "application_time", + "nodeType": "MemberAccess", + "referencedDeclaration": 33, + "src": "7949:52:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "30", + "id": 590, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8005:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "src": "7949:57:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + { + "hexValue": "4f7267616e697a6174696f6e20616c7265616479207265676973746572656421", + "id": 592, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "string", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8021:34:0", + "typeDescriptions": { + "typeIdentifier": "t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f", + "typeString": "literal_string \"Organization already registered!\"" + }, + "value": "Organization already registered!" + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + { + "typeIdentifier": "t_stringliteral_2f335d29e2ad5fc2d0ce28c813404f74d2100cf0b13bb9a2c76ef4d8aa715f8f", + "typeString": "literal_string \"Organization already registered!\"" + } + ], + "id": 585, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 4294967278, + 4294967278 + ], + "referencedDeclaration": 4294967278, + "src": "7927:7:0", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", + "typeString": "function (bool,string memory) pure" + } + }, + "id": 593, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7927:139:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 594, + "nodeType": "ExpressionStatement", + "src": "7927:139:0" + }, + { + "expression": { + "id": 600, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 595, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "8079:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 597, + "indexExpression": { + "id": 596, + "name": "organization_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 574, + "src": "8093:20:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8079:35:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 598, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "8115:11:0", + "memberName": "org_address", + "nodeType": "MemberAccess", + "referencedDeclaration": 3, + "src": "8079:47:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 599, + "name": "organization_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 574, + "src": "8129:20:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "8079:70:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 601, + "nodeType": "ExpressionStatement", + "src": "8079:70:0" + }, + { + "expression": { + "id": 607, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 602, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "8160:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 604, + "indexExpression": { + "id": 603, + "name": "organization_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 574, + "src": "8174:20:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8160:35:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 605, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "8196:4:0", + "memberName": "name", + "nodeType": "MemberAccess", + "referencedDeclaration": 5, + "src": "8160:40:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 606, + "name": "organization_name", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 576, + "src": "8203:17:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "src": "8160:60:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "id": 608, + "nodeType": "ExpressionStatement", + "src": "8160:60:0" + }, + { + "expression": { + "id": 614, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 609, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "8231:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 611, + "indexExpression": { + "id": 610, + "name": "organization_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 574, + "src": "8245:20:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8231:35:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 612, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "8267:7:0", + "memberName": "doc_cid", + "nodeType": "MemberAccess", + "referencedDeclaration": 7, + "src": "8231:43:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 613, + "name": "document_cid", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 578, + "src": "8277:12:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "src": "8231:58:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "id": 615, + "nodeType": "ExpressionStatement", + "src": "8231:58:0" + }, + { + "expression": { + "id": 621, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 616, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "8300:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 618, + "indexExpression": { + "id": 617, + "name": "organization_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 574, + "src": "8314:20:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8300:35:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 619, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "8336:4:0", + "memberName": "desc", + "nodeType": "MemberAccess", + "referencedDeclaration": 29, + "src": "8300:40:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 620, + "name": "description", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 580, + "src": "8343:11:0", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "src": "8300:54:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "id": 622, + "nodeType": "ExpressionStatement", + "src": "8300:54:0" + }, + { + "expression": { + "id": 630, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 623, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "8365:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 625, + "indexExpression": { + "id": 624, + "name": "organization_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 574, + "src": "8379:20:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8365:35:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 626, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "8401:16:0", + "memberName": "application_time", + "nodeType": "MemberAccess", + "referencedDeclaration": 33, + "src": "8365:52:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 629, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 627, + "name": "time", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 582, + "src": "8420:4:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "32", + "id": 628, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8427:6:0", + "subdenomination": "days", + "typeDescriptions": { + "typeIdentifier": "t_rational_172800_by_1", + "typeString": "int_const 172800" + }, + "value": "2" + }, + "src": "8420:13:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8365:68:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 631, + "nodeType": "ExpressionStatement", + "src": "8365:68:0" + }, + { + "expression": { + "id": 641, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 632, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "8444:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 634, + "indexExpression": { + "id": 633, + "name": "organization_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 574, + "src": "8458:20:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8444:35:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 635, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "8480:5:0", + "memberName": "views", + "nodeType": "MemberAccess", + "referencedDeclaration": 13, + "src": "8444:41:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 640, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "arguments": [ + { + "id": 637, + "name": "organization_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 574, + "src": "8501:20:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 636, + "name": "countOfViews", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 217, + "src": "8488:12:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", + "typeString": "function (address) view returns (uint256)" + } + }, + "id": 638, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8488:34:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 639, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8523:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "8488:36:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8444:80:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 642, + "nodeType": "ExpressionStatement", + "src": "8444:80:0" + }, + { + "expression": { + "arguments": [ + { + "id": 646, + "name": "organization_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 574, + "src": "8560:20:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 643, + "name": "organizationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 77, + "src": "8535:19:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 645, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8555:4:0", + "memberName": "push", + "nodeType": "MemberAccess", + "src": "8535:24:0", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$_t_address_$returns$__$bound_to$_t_array$_t_address_$dyn_storage_ptr_$", + "typeString": "function (address[] storage pointer,address)" + } + }, + "id": 647, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8535:46:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 648, + "nodeType": "ExpressionStatement", + "src": "8535:46:0" + } + ] + }, + "functionSelector": "440370fe", + "id": 650, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "registerOrg", + "nameLocation": "7713:11:0", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 583, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 574, + "mutability": "mutable", + "name": "organization_address", + "nameLocation": "7743:20:0", + "nodeType": "VariableDeclaration", + "scope": 650, + "src": "7735:28:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 573, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7735:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 576, + "mutability": "mutable", + "name": "organization_name", + "nameLocation": "7788:17:0", + "nodeType": "VariableDeclaration", + "scope": 650, + "src": "7774:31:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 575, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7774:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 578, + "mutability": "mutable", + "name": "document_cid", + "nameLocation": "7830:12:0", + "nodeType": "VariableDeclaration", + "scope": 650, + "src": "7816:26:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 577, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7816:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 580, + "mutability": "mutable", + "name": "description", + "nameLocation": "7867:11:0", + "nodeType": "VariableDeclaration", + "scope": 650, + "src": "7853:25:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 579, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "7853:6:0", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 582, + "mutability": "mutable", + "name": "time", + "nameLocation": "7897:4:0", + "nodeType": "VariableDeclaration", + "scope": 650, + "src": "7889:12:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 581, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7889:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "7724:184:0" + }, + "returnParameters": { + "id": 584, + "nodeType": "ParameterList", + "parameters": [], + "src": "7916:0:0" + }, + "scope": 779, + "src": "7704:885:0", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 702, + "nodeType": "Block", + "src": "8767:331:0", + "statements": [ + { + "expression": { + "id": 667, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 662, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "8778:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 664, + "indexExpression": { + "id": 663, + "name": "org_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 652, + "src": "8792:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8778:23:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 665, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "8802:7:0", + "memberName": "upvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 9, + "src": "8778:31:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "31", + "id": 666, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8813:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "8778:36:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 668, + "nodeType": "ExpressionStatement", + "src": "8778:36:0" + }, + { + "expression": { + "arguments": [ + { + "expression": { + "id": 674, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "8863:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 675, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8867:6:0", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "8863:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "expression": { + "baseExpression": { + "id": 669, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "8825:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 671, + "indexExpression": { + "id": 670, + "name": "org_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 652, + "src": "8839:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8825:23:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 672, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8849:8:0", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 18, + "src": "8825:32:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 673, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8858:4:0", + "memberName": "push", + "nodeType": "MemberAccess", + "src": "8825:37:0", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$_t_address_$returns$__$bound_to$_t_array$_t_address_$dyn_storage_ptr_$", + "typeString": "function (address[] storage pointer,address)" + } + }, + "id": 676, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8825:49:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 677, + "nodeType": "ExpressionStatement", + "src": "8825:49:0" + }, + { + "expression": { + "id": 686, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 678, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "8885:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 680, + "indexExpression": { + "id": 679, + "name": "org_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 652, + "src": "8899:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8885:23:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 681, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8909:6:0", + "memberName": "voters", + "nodeType": "MemberAccess", + "referencedDeclaration": 25, + "src": "8885:30:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint8_$", + "typeString": "mapping(address => uint8)" + } + }, + "id": 684, + "indexExpression": { + "expression": { + "id": 682, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "8916:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 683, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8920:6:0", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "8916:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "8885:42:0", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "32", + "id": 685, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8930:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_2_by_1", + "typeString": "int_const 2" + }, + "value": "2" + }, + "src": "8885:46:0", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "id": 687, + "nodeType": "ExpressionStatement", + "src": "8885:46:0" + }, + { + "condition": { + "arguments": [ + { + "id": 689, + "name": "org_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 652, + "src": "8957:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 690, + "name": "current_time", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 654, + "src": "8967:12:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 688, + "name": "votingDone", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 284, + "src": "8946:10:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,uint256) view returns (bool)" + } + }, + "id": 691, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8946:34:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 699, + "nodeType": "IfStatement", + "src": "8942:126:0", + "trueBody": { + "id": 698, + "nodeType": "Block", + "src": "8982:86:0", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 693, + "name": "org_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 652, + "src": "9021:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 692, + "name": "checkVerificationStatus", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 778, + "src": "8997:23:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", + "typeString": "function (address) view returns (bool)" + } + }, + "id": 694, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "8997:33:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 695, + "nodeType": "ExpressionStatement", + "src": "8997:33:0" + }, + { + "expression": { + "hexValue": "74727565", + "id": 696, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9052:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 661, + "id": 697, + "nodeType": "Return", + "src": "9045:11:0" + } + ] + } + }, + { + "expression": { + "hexValue": "66616c7365", + "id": 700, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9085:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "functionReturnParameters": 661, + "id": 701, + "nodeType": "Return", + "src": "9078:12:0" + } + ] + }, + "functionSelector": "e2579114", + "id": 703, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [ + { + "id": 657, + "name": "org_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 652, + "src": "8742:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "id": 658, + "kind": "modifierInvocation", + "modifierName": { + "id": 656, + "name": "isValidOrg", + "nameLocations": [ + "8731:10:0" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 572, + "src": "8731:10:0" + }, + "nodeType": "ModifierInvocation", + "src": "8731:20:0" + } + ], + "name": "upVote", + "nameLocation": "8651:6:0", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 655, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 652, + "mutability": "mutable", + "name": "org_addr", + "nameLocation": "8676:8:0", + "nodeType": "VariableDeclaration", + "scope": 703, + "src": "8668:16:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 651, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8668:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 654, + "mutability": "mutable", + "name": "current_time", + "nameLocation": "8703:12:0", + "nodeType": "VariableDeclaration", + "scope": 703, + "src": "8695:20:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 653, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8695:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "8657:65:0" + }, + "returnParameters": { + "id": 661, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 660, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 703, + "src": "8762:4:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 659, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "8762:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "8761:6:0" + }, + "scope": 779, + "src": "8642:456:0", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 753, + "nodeType": "Block", + "src": "9281:329:0", + "statements": [ + { + "expression": { + "id": 720, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 715, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "9292:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 717, + "indexExpression": { + "id": 716, + "name": "org_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 705, + "src": "9306:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "9292:23:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 718, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "9316:9:0", + "memberName": "downvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 11, + "src": "9292:33:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "31", + "id": 719, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9329:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "9292:38:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 721, + "nodeType": "ExpressionStatement", + "src": "9292:38:0" + }, + { + "expression": { + "arguments": [ + { + "expression": { + "id": 727, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "9381:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 728, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9385:6:0", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "9381:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "expression": { + "baseExpression": { + "id": 722, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "9341:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 724, + "indexExpression": { + "id": 723, + "name": "org_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 705, + "src": "9355:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "9341:23:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 725, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9365:10:0", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 21, + "src": "9341:34:0", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 726, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9376:4:0", + "memberName": "push", + "nodeType": "MemberAccess", + "src": "9341:39:0", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$_t_address_$returns$__$bound_to$_t_array$_t_address_$dyn_storage_ptr_$", + "typeString": "function (address[] storage pointer,address)" + } + }, + "id": 729, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9341:51:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 730, + "nodeType": "ExpressionStatement", + "src": "9341:51:0" + }, + { + "expression": { + "id": 739, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 731, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "9403:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 733, + "indexExpression": { + "id": 732, + "name": "org_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 705, + "src": "9417:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "9403:23:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 734, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9427:6:0", + "memberName": "voters", + "nodeType": "MemberAccess", + "referencedDeclaration": 25, + "src": "9403:30:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint8_$", + "typeString": "mapping(address => uint8)" + } + }, + "id": 737, + "indexExpression": { + "expression": { + "id": 735, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "9434:3:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 736, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9438:6:0", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "9434:10:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "9403:42:0", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "31", + "id": 738, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9448:1:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "9403:46:0", + "typeDescriptions": { + "typeIdentifier": "t_uint8", + "typeString": "uint8" + } + }, + "id": 740, + "nodeType": "ExpressionStatement", + "src": "9403:46:0" + }, + { + "condition": { + "arguments": [ + { + "id": 742, + "name": "org_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 705, + "src": "9475:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "id": 743, + "name": "current_time", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 707, + "src": "9485:12:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + ], + "id": 741, + "name": "votingDone", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 284, + "src": "9464:10:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$_t_uint256_$returns$_t_bool_$", + "typeString": "function (address,uint256) view returns (bool)" + } + }, + "id": 744, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9464:34:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 750, + "nodeType": "IfStatement", + "src": "9460:120:0", + "trueBody": { + "id": 749, + "nodeType": "Block", + "src": "9500:80:0", + "statements": [ + { + "expression": { + "arguments": [ + { + "id": 746, + "name": "org_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 705, + "src": "9546:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 745, + "name": "checkVerificationStatus", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 778, + "src": "9522:23:0", + "typeDescriptions": { + "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_bool_$", + "typeString": "function (address) view returns (bool)" + } + }, + "id": 747, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9522:33:0", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "functionReturnParameters": 714, + "id": 748, + "nodeType": "Return", + "src": "9515:40:0" + } + ] + } + }, + { + "expression": { + "hexValue": "66616c7365", + "id": 751, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9597:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "functionReturnParameters": 714, + "id": 752, + "nodeType": "Return", + "src": "9590:12:0" + } + ] + }, + "functionSelector": "f15c01dd", + "id": 754, + "implemented": true, + "kind": "function", + "modifiers": [ + { + "arguments": [ + { + "id": 710, + "name": "org_addr", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 705, + "src": "9256:8:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "id": 711, + "kind": "modifierInvocation", + "modifierName": { + "id": 709, + "name": "isValidOrg", + "nameLocations": [ + "9245:10:0" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 572, + "src": "9245:10:0" + }, + "nodeType": "ModifierInvocation", + "src": "9245:20:0" + } + ], + "name": "downVote", + "nameLocation": "9162:8:0", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 708, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 705, + "mutability": "mutable", + "name": "org_addr", + "nameLocation": "9189:8:0", + "nodeType": "VariableDeclaration", + "scope": 754, + "src": "9181:16:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 704, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9181:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 707, + "mutability": "mutable", + "name": "current_time", + "nameLocation": "9216:12:0", + "nodeType": "VariableDeclaration", + "scope": 754, + "src": "9208:20:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 706, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9208:7:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "9170:65:0" + }, + "returnParameters": { + "id": 714, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 713, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 754, + "src": "9275:4:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 712, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "9275:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "9274:6:0" + }, + "scope": 779, + "src": "9153:457:0", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 777, + "nodeType": "Block", + "src": "9802:176:0", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 770, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 766, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 761, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "9831:13:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 763, + "indexExpression": { + "id": 762, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 756, + "src": "9845:11:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "9831:26:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 764, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9858:7:0", + "memberName": "upvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 9, + "src": "9831:34:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "313030", + "id": 765, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9868:3:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_100_by_1", + "typeString": "int_const 100" + }, + "value": "100" + }, + "src": "9831:40:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 769, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 767, + "name": "totalOrganizations", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 90, + "src": "9875:18:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "3531", + "id": 768, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9896:2:0", + "typeDescriptions": { + "typeIdentifier": "t_rational_51_by_1", + "typeString": "int_const 51" + }, + "value": "51" + }, + "src": "9875:23:0", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9831:67:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 774, + "nodeType": "IfStatement", + "src": "9813:135:0", + "trueBody": { + "id": 773, + "nodeType": "Block", + "src": "9910:38:0", + "statements": [ + { + "expression": { + "hexValue": "74727565", + "id": 771, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9932:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "functionReturnParameters": 760, + "id": 772, + "nodeType": "Return", + "src": "9925:11:0" + } + ] + } + }, + { + "expression": { + "hexValue": "66616c7365", + "id": 775, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9965:5:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "functionReturnParameters": 760, + "id": 776, + "nodeType": "Return", + "src": "9958:12:0" + } + ] + }, + "functionSelector": "6fc3911c", + "id": 778, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "checkVerificationStatus", + "nameLocation": "9698:23:0", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 757, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 756, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "9730:11:0", + "nodeType": "VariableDeclaration", + "scope": 778, + "src": "9722:19:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 755, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9722:7:0", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "9721:21:0" + }, + "returnParameters": { + "id": 760, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 759, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 778, + "src": "9791:4:0", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 758, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "9791:4:0", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "9790:6:0" + }, + "scope": 779, + "src": "9689:289:0", + "stateMutability": "view", + "virtual": false, + "visibility": "public" + } + ], + "scope": 780, + "src": "67:10537:0", + "usedErrors": [] + } + ], + "src": "40:10566:0" + }, + "id": 0 + }, + "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol": { + "ast": { + "absolutePath": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol", + "exportedSymbols": { + "OrgCreation": [ + 779 + ], + "OrgOperation": [ + 2045 + ] + }, + "id": 2046, + "license": "UNLICENSED", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 781, + "literals": [ + "solidity", + "^", + "0.8", + ".9" + ], + "nodeType": "PragmaDirective", + "src": "40:23:1" + }, + { + "absolutePath": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol", + "file": "./OrgCreation.sol", + "id": 782, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 2046, + "sourceUnit": 780, + "src": "65:27:1", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 783, + "name": "OrgCreation", + "nameLocations": [ + "121:11:1" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 779, + "src": "121:11:1" + }, + "id": 784, + "nodeType": "InheritanceSpecifier", + "src": "121:11:1" + } + ], + "canonicalName": "OrgOperation", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": true, + "id": 2045, + "linearizedBaseContracts": [ + 2045, + 779 + ], + "name": "OrgOperation", + "nameLocation": "105:12:1", + "nodeType": "ContractDefinition", + "nodes": [ + { + "canonicalName": "OrgOperation.Violation", + "id": 815, + "members": [ + { + "constant": false, + "id": 786, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "176:11:1", + "nodeType": "VariableDeclaration", + "scope": 815, + "src": "168:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 785, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "168:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 788, + "mutability": "mutable", + "name": "doc_cid", + "nameLocation": "205:7:1", + "nodeType": "VariableDeclaration", + "scope": 815, + "src": "198:14:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + }, + "typeName": { + "id": 787, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "198:6:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 790, + "mutability": "mutable", + "name": "desc", + "nameLocation": "230:4:1", + "nodeType": "VariableDeclaration", + "scope": 815, + "src": "223:11:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + }, + "typeName": { + "id": 789, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "223:6:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 792, + "mutability": "mutable", + "name": "upvotes", + "nameLocation": "253:7:1", + "nodeType": "VariableDeclaration", + "scope": 815, + "src": "245:15:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 791, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "245:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 794, + "mutability": "mutable", + "name": "downvotes", + "nameLocation": "279:9:1", + "nodeType": "VariableDeclaration", + "scope": 815, + "src": "271:17:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 793, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "271:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 797, + "mutability": "mutable", + "name": "upvoters", + "nameLocation": "309:8:1", + "nodeType": "VariableDeclaration", + "scope": 815, + "src": "299:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 795, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "299:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 796, + "nodeType": "ArrayTypeName", + "src": "299:9:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 800, + "mutability": "mutable", + "name": "downvoters", + "nameLocation": "338:10:1", + "nodeType": "VariableDeclaration", + "scope": 815, + "src": "328:20:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 798, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "328:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 799, + "nodeType": "ArrayTypeName", + "src": "328:9:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 802, + "mutability": "mutable", + "name": "number", + "nameLocation": "367:6:1", + "nodeType": "VariableDeclaration", + "scope": 815, + "src": "359:14:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 801, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "359:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 804, + "mutability": "mutable", + "name": "isOpen", + "nameLocation": "389:6:1", + "nodeType": "VariableDeclaration", + "scope": 815, + "src": "384:11:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 803, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "384:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 806, + "mutability": "mutable", + "name": "start_time", + "nameLocation": "414:10:1", + "nodeType": "VariableDeclaration", + "scope": 815, + "src": "406:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 805, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "406:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 808, + "mutability": "mutable", + "name": "end_time", + "nameLocation": "443:8:1", + "nodeType": "VariableDeclaration", + "scope": 815, + "src": "435:16:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 807, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "435:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 810, + "mutability": "mutable", + "name": "isViolated", + "nameLocation": "467:10:1", + "nodeType": "VariableDeclaration", + "scope": 815, + "src": "462:15:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 809, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "462:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 814, + "mutability": "mutable", + "name": "voters", + "nameLocation": "516:6:1", + "nodeType": "VariableDeclaration", + "scope": 815, + "src": "488:34:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "typeName": { + "id": 813, + "keyType": { + "id": 811, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "496:7:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "488:27:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "valueType": { + "id": 812, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "507:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + "visibility": "internal" + } + ], + "name": "Violation", + "nameLocation": "147:9:1", + "nodeType": "StructDefinition", + "scope": 2045, + "src": "140:390:1", + "visibility": "public" + }, + { + "canonicalName": "OrgOperation.FinancialReport", + "id": 837, + "members": [ + { + "constant": false, + "id": 817, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "580:11:1", + "nodeType": "VariableDeclaration", + "scope": 837, + "src": "572:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 816, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "572:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 819, + "mutability": "mutable", + "name": "upvotes", + "nameLocation": "610:7:1", + "nodeType": "VariableDeclaration", + "scope": 837, + "src": "602:15:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 818, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "602:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 821, + "mutability": "mutable", + "name": "downvotes", + "nameLocation": "636:9:1", + "nodeType": "VariableDeclaration", + "scope": 837, + "src": "628:17:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 820, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "628:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 824, + "mutability": "mutable", + "name": "upvoters", + "nameLocation": "666:8:1", + "nodeType": "VariableDeclaration", + "scope": 837, + "src": "656:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 822, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "656:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 823, + "nodeType": "ArrayTypeName", + "src": "656:9:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 827, + "mutability": "mutable", + "name": "downvoters", + "nameLocation": "695:10:1", + "nodeType": "VariableDeclaration", + "scope": 837, + "src": "685:20:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 825, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "685:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 826, + "nodeType": "ArrayTypeName", + "src": "685:9:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 829, + "mutability": "mutable", + "name": "reportUploadStartTime", + "nameLocation": "724:21:1", + "nodeType": "VariableDeclaration", + "scope": 837, + "src": "716:29:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 828, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "716:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 831, + "mutability": "mutable", + "name": "reportUploadEndTime", + "nameLocation": "764:19:1", + "nodeType": "VariableDeclaration", + "scope": 837, + "src": "756:27:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 830, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "756:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 833, + "mutability": "mutable", + "name": "isReportTrue", + "nameLocation": "799:12:1", + "nodeType": "VariableDeclaration", + "scope": 837, + "src": "794:17:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 832, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "794:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 836, + "mutability": "mutable", + "name": "cid", + "nameLocation": "831:3:1", + "nodeType": "VariableDeclaration", + "scope": 837, + "src": "822:12:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr", + "typeString": "string[]" + }, + "typeName": { + "baseType": { + "id": 834, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "822:6:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "id": 835, + "nodeType": "ArrayTypeName", + "src": "822:8:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr", + "typeString": "string[]" + } + }, + "visibility": "internal" + } + ], + "name": "FinancialReport", + "nameLocation": "545:15:1", + "nodeType": "StructDefinition", + "scope": 2045, + "src": "538:304:1", + "visibility": "public" + }, + { + "constant": false, + "id": 842, + "mutability": "mutable", + "name": "violationMap", + "nameLocation": "880:12:1", + "nodeType": "VariableDeclaration", + "scope": 2045, + "src": "850:42:1", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation)" + }, + "typeName": { + "id": 841, + "keyType": { + "id": 838, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "858:7:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "850:29:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation)" + }, + "valueType": { + "id": 840, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 839, + "name": "Violation", + "nameLocations": [ + "869:9:1" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 815, + "src": "869:9:1" + }, + "referencedDeclaration": 815, + "src": "869:9:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage_ptr", + "typeString": "struct OrgOperation.Violation" + } + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 847, + "mutability": "mutable", + "name": "financialReportMap", + "nameLocation": "935:18:1", + "nodeType": "VariableDeclaration", + "scope": 2045, + "src": "899:54:1", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport)" + }, + "typeName": { + "id": 846, + "keyType": { + "id": 843, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "907:7:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "899:35:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport)" + }, + "valueType": { + "id": 845, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 844, + "name": "FinancialReport", + "nameLocations": [ + "918:15:1" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 837, + "src": "918:15:1" + }, + "referencedDeclaration": 837, + "src": "918:15:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage_ptr", + "typeString": "struct OrgOperation.FinancialReport" + } + } + }, + "visibility": "internal" + }, + { + "body": { + "id": 850, + "nodeType": "Block", + "src": "976:2:1", + "statements": [] + }, + "id": 851, + "implemented": true, + "kind": "constructor", + "modifiers": [], + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 848, + "nodeType": "ParameterList", + "parameters": [], + "src": "973:2:1" + }, + "returnParameters": { + "id": 849, + "nodeType": "ParameterList", + "parameters": [], + "src": "976:0:1" + }, + "scope": 2045, + "src": "962:16:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1098, + "nodeType": "Block", + "src": "1168:2182:1", + "statements": [ + { + "condition": { + "id": 858, + "name": "category", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 855, + "src": "1183:8:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 1096, + "nodeType": "Block", + "src": "2269:1074:1", + "statements": [ + { + "assignments": [ + 979 + ], + "declarations": [ + { + "constant": false, + "id": 979, + "mutability": "mutable", + "name": "sum", + "nameLocation": "2292:3:1", + "nodeType": "VariableDeclaration", + "scope": 1096, + "src": "2284:11:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 978, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2284:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 981, + "initialValue": { + "hexValue": "30", + "id": 980, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2298:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "2284:15:1" + }, + { + "body": { + "id": 1045, + "nodeType": "Block", + "src": "2381:520:1", + "statements": [ + { + "expression": { + "id": 1015, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 995, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "2400:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1002, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 996, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "2414:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 998, + "indexExpression": { + "id": 997, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "2428:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2414:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 999, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2441:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 21, + "src": "2414:37:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1001, + "indexExpression": { + "id": 1000, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 983, + "src": "2452:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2414:40:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2400:55:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1003, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "2456:6:1", + "memberName": "points", + "nodeType": "MemberAccess", + "referencedDeclaration": 31, + "src": "2400:62:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1014, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1004, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "2486:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1011, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 1005, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "2500:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1007, + "indexExpression": { + "id": 1006, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "2514:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2500:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1008, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2527:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 21, + "src": "2500:37:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1010, + "indexExpression": { + "id": 1009, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 983, + "src": "2538:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2500:40:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2486:55:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1012, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2568:6:1", + "memberName": "points", + "nodeType": "MemberAccess", + "referencedDeclaration": 31, + "src": "2486:88:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 1013, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2598:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "2486:113:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2400:199:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1016, + "nodeType": "ExpressionStatement", + "src": "2400:199:1" + }, + { + "expression": { + "id": 1021, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1017, + "name": "sum", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 979, + "src": "2618:3:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1020, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1018, + "name": "sum", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 979, + "src": "2624:3:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 1019, + "name": "stakeToBeDistributed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 92, + "src": "2630:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2624:26:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2618:32:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1022, + "nodeType": "ExpressionStatement", + "src": "2618:32:1" + }, + { + "expression": { + "id": 1043, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1023, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "2669:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1030, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 1024, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "2683:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1026, + "indexExpression": { + "id": 1025, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "2697:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2683:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1027, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2710:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 21, + "src": "2683:37:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1029, + "indexExpression": { + "id": 1028, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 983, + "src": "2721:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2683:40:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2669:55:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1031, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "2725:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "2669:61:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1042, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1032, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "2754:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1039, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 1033, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "2768:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1035, + "indexExpression": { + "id": 1034, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "2782:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2768:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1036, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2795:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 21, + "src": "2768:37:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1038, + "indexExpression": { + "id": 1037, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 983, + "src": "2806:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2768:40:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2754:55:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1040, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2836:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "2754:87:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 1041, + "name": "stakeToBeDistributed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 92, + "src": "2865:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2754:131:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2669:216:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1044, + "nodeType": "ExpressionStatement", + "src": "2669:216:1" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 991, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 986, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 983, + "src": "2334:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "baseExpression": { + "id": 987, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "2338:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 989, + "indexExpression": { + "id": 988, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "2352:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2338:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 990, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2365:9:1", + "memberName": "downvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 11, + "src": "2338:36:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2334:40:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1046, + "initializationExpression": { + "assignments": [ + 983 + ], + "declarations": [ + { + "constant": false, + "id": 983, + "mutability": "mutable", + "name": "i", + "nameLocation": "2327:1:1", + "nodeType": "VariableDeclaration", + "scope": 1046, + "src": "2319:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 982, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2319:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 985, + "initialValue": { + "hexValue": "30", + "id": 984, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2331:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "2319:13:1" + }, + "loopExpression": { + "expression": { + "id": 993, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "2376:3:1", + "subExpression": { + "id": 992, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 983, + "src": "2376:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 994, + "nodeType": "ExpressionStatement", + "src": "2376:3:1" + }, + "nodeType": "ForStatement", + "src": "2314:587:1" + }, + { + "expression": { + "id": 1057, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1047, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "2915:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1049, + "indexExpression": { + "id": 1048, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "2929:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2915:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1050, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "2942:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "2915:32:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1056, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1051, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "2967:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1053, + "indexExpression": { + "id": 1052, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "2981:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2967:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1054, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2994:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "2967:32:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 1055, + "name": "sum", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 979, + "src": "3019:3:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2967:55:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2915:107:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1058, + "nodeType": "ExpressionStatement", + "src": "2915:107:1" + }, + { + "body": { + "id": 1094, + "nodeType": "Block", + "src": "3102:230:1", + "statements": [ + { + "expression": { + "id": 1092, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1072, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "3121:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1079, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 1073, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "3135:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1075, + "indexExpression": { + "id": 1074, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "3149:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3135:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1076, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3162:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 18, + "src": "3135:35:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1078, + "indexExpression": { + "id": 1077, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1060, + "src": "3171:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3135:38:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3121:53:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1080, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "3175:6:1", + "memberName": "points", + "nodeType": "MemberAccess", + "referencedDeclaration": 31, + "src": "3121:60:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1091, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1081, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "3205:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1088, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 1082, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "3219:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1084, + "indexExpression": { + "id": 1083, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "3233:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3219:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1085, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3246:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 18, + "src": "3219:35:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1087, + "indexExpression": { + "id": 1086, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1060, + "src": "3255:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3219:38:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3205:53:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1089, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3285:6:1", + "memberName": "points", + "nodeType": "MemberAccess", + "referencedDeclaration": 31, + "src": "3205:86:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "hexValue": "31", + "id": 1090, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3315:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "3205:111:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3121:195:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1093, + "nodeType": "ExpressionStatement", + "src": "3121:195:1" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1068, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1063, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1060, + "src": "3057:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "baseExpression": { + "id": 1064, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "3061:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1066, + "indexExpression": { + "id": 1065, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "3075:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3061:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1067, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3088:7:1", + "memberName": "upvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 9, + "src": "3061:34:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3057:38:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1095, + "initializationExpression": { + "assignments": [ + 1060 + ], + "declarations": [ + { + "constant": false, + "id": 1060, + "mutability": "mutable", + "name": "i", + "nameLocation": "3050:1:1", + "nodeType": "VariableDeclaration", + "scope": 1095, + "src": "3042:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1059, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3042:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1062, + "initialValue": { + "hexValue": "30", + "id": 1061, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3054:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "3042:13:1" + }, + "loopExpression": { + "expression": { + "id": 1070, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "3097:3:1", + "subExpression": { + "id": 1069, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1060, + "src": "3097:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1071, + "nodeType": "ExpressionStatement", + "src": "3097:3:1" + }, + "nodeType": "ForStatement", + "src": "3037:295:1" + } + ] + }, + "id": 1097, + "nodeType": "IfStatement", + "src": "1179:2164:1", + "trueBody": { + "id": 977, + "nodeType": "Block", + "src": "1193:1070:1", + "statements": [ + { + "assignments": [ + 860 + ], + "declarations": [ + { + "constant": false, + "id": 860, + "mutability": "mutable", + "name": "sum", + "nameLocation": "1216:3:1", + "nodeType": "VariableDeclaration", + "scope": 977, + "src": "1208:11:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 859, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1208:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 862, + "initialValue": { + "hexValue": "30", + "id": 861, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1222:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "1208:15:1" + }, + { + "body": { + "id": 926, + "nodeType": "Block", + "src": "1303:512:1", + "statements": [ + { + "expression": { + "id": 896, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 876, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "1322:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 883, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 877, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "1336:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 879, + "indexExpression": { + "id": 878, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "1350:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1336:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 880, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1363:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 18, + "src": "1336:35:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 882, + "indexExpression": { + "id": 881, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 864, + "src": "1372:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1336:38:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1322:53:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 884, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "1376:6:1", + "memberName": "points", + "nodeType": "MemberAccess", + "referencedDeclaration": 31, + "src": "1322:60:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 895, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 885, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "1406:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 892, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 886, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "1420:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 888, + "indexExpression": { + "id": 887, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "1434:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1420:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 889, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1447:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 18, + "src": "1420:35:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 891, + "indexExpression": { + "id": 890, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 864, + "src": "1456:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1420:38:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1406:53:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 893, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1486:6:1", + "memberName": "points", + "nodeType": "MemberAccess", + "referencedDeclaration": 31, + "src": "1406:86:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 894, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1516:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "1406:111:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1322:195:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 897, + "nodeType": "ExpressionStatement", + "src": "1322:195:1" + }, + { + "expression": { + "id": 902, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 898, + "name": "sum", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 860, + "src": "1536:3:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 901, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 899, + "name": "sum", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 860, + "src": "1542:3:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 900, + "name": "stakeToBeDistributed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 92, + "src": "1548:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1542:26:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1536:32:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 903, + "nodeType": "ExpressionStatement", + "src": "1536:32:1" + }, + { + "expression": { + "id": 924, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 904, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "1587:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 911, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 905, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "1601:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 907, + "indexExpression": { + "id": 906, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "1615:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1601:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 908, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1628:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 18, + "src": "1601:35:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 910, + "indexExpression": { + "id": 909, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 864, + "src": "1637:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1601:38:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1587:53:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 912, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "1641:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "1587:59:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 923, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 913, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "1670:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 920, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 914, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "1684:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 916, + "indexExpression": { + "id": 915, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "1698:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1684:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 917, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1711:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 18, + "src": "1684:35:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 919, + "indexExpression": { + "id": 918, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 864, + "src": "1720:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1684:38:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1670:53:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 921, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1750:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "1670:85:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 922, + "name": "stakeToBeDistributed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 92, + "src": "1779:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1670:129:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1587:212:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 925, + "nodeType": "ExpressionStatement", + "src": "1587:212:1" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 872, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 867, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 864, + "src": "1258:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "baseExpression": { + "id": 868, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "1262:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 870, + "indexExpression": { + "id": 869, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "1276:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1262:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 871, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1289:7:1", + "memberName": "upvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 9, + "src": "1262:34:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1258:38:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 927, + "initializationExpression": { + "assignments": [ + 864 + ], + "declarations": [ + { + "constant": false, + "id": 864, + "mutability": "mutable", + "name": "i", + "nameLocation": "1251:1:1", + "nodeType": "VariableDeclaration", + "scope": 927, + "src": "1243:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 863, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1243:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 866, + "initialValue": { + "hexValue": "30", + "id": 865, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1255:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "1243:13:1" + }, + "loopExpression": { + "expression": { + "id": 874, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "1298:3:1", + "subExpression": { + "id": 873, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 864, + "src": "1298:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 875, + "nodeType": "ExpressionStatement", + "src": "1298:3:1" + }, + "nodeType": "ForStatement", + "src": "1238:577:1" + }, + { + "expression": { + "id": 938, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 928, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "1829:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 930, + "indexExpression": { + "id": 929, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "1843:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1829:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 931, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "1856:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "1829:32:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 937, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 932, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "1881:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 934, + "indexExpression": { + "id": 933, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "1895:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1881:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 935, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1908:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "1881:32:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 936, + "name": "sum", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 860, + "src": "1933:3:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1881:55:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1829:107:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 939, + "nodeType": "ExpressionStatement", + "src": "1829:107:1" + }, + { + "body": { + "id": 975, + "nodeType": "Block", + "src": "2018:234:1", + "statements": [ + { + "expression": { + "id": 973, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 953, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "2037:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 960, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 954, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "2051:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 956, + "indexExpression": { + "id": 955, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "2065:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2051:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 957, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2078:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 21, + "src": "2051:37:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 959, + "indexExpression": { + "id": 958, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 941, + "src": "2089:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2051:40:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2037:55:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 961, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "2093:6:1", + "memberName": "points", + "nodeType": "MemberAccess", + "referencedDeclaration": 31, + "src": "2037:62:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 972, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 962, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "2123:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 969, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 963, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "2137:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 965, + "indexExpression": { + "id": 964, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "2151:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2137:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 966, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2164:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 21, + "src": "2137:37:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 968, + "indexExpression": { + "id": 967, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 941, + "src": "2175:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2137:40:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2123:55:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 970, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2205:6:1", + "memberName": "points", + "nodeType": "MemberAccess", + "referencedDeclaration": 31, + "src": "2123:88:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "hexValue": "31", + "id": 971, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2235:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "2123:113:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2037:199:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 974, + "nodeType": "ExpressionStatement", + "src": "2037:199:1" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 949, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 944, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 941, + "src": "1971:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "baseExpression": { + "id": 945, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "1975:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 947, + "indexExpression": { + "id": 946, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "1989:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1975:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 948, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2002:9:1", + "memberName": "downvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 11, + "src": "1975:36:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1971:40:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 976, + "initializationExpression": { + "assignments": [ + 941 + ], + "declarations": [ + { + "constant": false, + "id": 941, + "mutability": "mutable", + "name": "i", + "nameLocation": "1964:1:1", + "nodeType": "VariableDeclaration", + "scope": 976, + "src": "1956:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 940, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1956:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 943, + "initialValue": { + "hexValue": "30", + "id": 942, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1968:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "1956:13:1" + }, + "loopExpression": { + "expression": { + "id": 951, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "2013:3:1", + "subExpression": { + "id": 950, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 941, + "src": "2013:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 952, + "nodeType": "ExpressionStatement", + "src": "2013:3:1" + }, + "nodeType": "ForStatement", + "src": "1951:301:1" + } + ] + } + } + ] + }, + "functionSelector": "1e477180", + "id": 1099, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "distributeStake", + "nameLocation": "1109:15:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 856, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 853, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "1133:11:1", + "nodeType": "VariableDeclaration", + "scope": 1099, + "src": "1125:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 852, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1125:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 855, + "mutability": "mutable", + "name": "category", + "nameLocation": "1151:8:1", + "nodeType": "VariableDeclaration", + "scope": 1099, + "src": "1146:13:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 854, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1146:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "1124:36:1" + }, + "returnParameters": { + "id": 857, + "nodeType": "ParameterList", + "parameters": [], + "src": "1168:0:1" + }, + "scope": 2045, + "src": "1100:2250:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1121, + "nodeType": "Block", + "src": "3522:151:1", + "statements": [ + { + "expression": { + "id": 1109, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1104, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "3533:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1106, + "indexExpression": { + "id": 1105, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1101, + "src": "3547:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3533:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1107, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "3560:19:1", + "memberName": "verification_status", + "nodeType": "MemberAccess", + "referencedDeclaration": 15, + "src": "3533:46:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 1108, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3582:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "3533:53:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1110, + "nodeType": "ExpressionStatement", + "src": "3533:53:1" + }, + { + "expression": { + "id": 1113, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1111, + "name": "totalOrganizations", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 90, + "src": "3597:18:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "31", + "id": 1112, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3619:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "3597:23:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1114, + "nodeType": "ExpressionStatement", + "src": "3597:23:1" + }, + { + "expression": { + "id": 1119, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 1115, + "name": "verifiedOrgMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 70, + "src": "3631:14:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 1117, + "indexExpression": { + "id": 1116, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1101, + "src": "3646:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "3631:27:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 1118, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3661:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "3631:34:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1120, + "nodeType": "ExpressionStatement", + "src": "3631:34:1" + } + ] + }, + "functionSelector": "62ae7ac7", + "id": 1122, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "markAsVerified", + "nameLocation": "3479:14:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1102, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1101, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "3502:11:1", + "nodeType": "VariableDeclaration", + "scope": 1122, + "src": "3494:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1100, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3494:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "3493:21:1" + }, + "returnParameters": { + "id": 1103, + "nodeType": "ParameterList", + "parameters": [], + "src": "3522:0:1" + }, + "scope": 2045, + "src": "3470:203:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1216, + "nodeType": "Block", + "src": "3874:686:1", + "statements": [ + { + "body": { + "id": 1155, + "nodeType": "Block", + "src": "4008:78:1", + "statements": [ + { + "expression": { + "id": 1153, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 1144, + "name": "temp", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 74, + "src": "4023:4:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 1151, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 1145, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "4028:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1147, + "indexExpression": { + "id": 1146, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1124, + "src": "4042:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4028:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1148, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4055:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 18, + "src": "4028:35:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1150, + "indexExpression": { + "id": 1149, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1131, + "src": "4064:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4028:38:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "4023:44:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 1152, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4070:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "4023:51:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1154, + "nodeType": "ExpressionStatement", + "src": "4023:51:1" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1140, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1134, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1131, + "src": "3932:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "expression": { + "baseExpression": { + "id": 1135, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "3936:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1137, + "indexExpression": { + "id": 1136, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1124, + "src": "3950:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3936:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1138, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3963:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 18, + "src": "3936:35:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1139, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3972:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "3936:42:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3932:46:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1156, + "initializationExpression": { + "assignments": [ + 1131 + ], + "declarations": [ + { + "constant": false, + "id": 1131, + "mutability": "mutable", + "name": "i", + "nameLocation": "3912:1:1", + "nodeType": "VariableDeclaration", + "scope": 1156, + "src": "3904:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1130, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3904:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1133, + "initialValue": { + "hexValue": "30", + "id": 1132, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3916:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "3904:13:1" + }, + "loopExpression": { + "expression": { + "id": 1142, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "3993:3:1", + "subExpression": { + "id": 1141, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1131, + "src": "3993:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1143, + "nodeType": "ExpressionStatement", + "src": "3993:3:1" + }, + "nodeType": "ForStatement", + "src": "3885:201:1" + }, + { + "body": { + "id": 1182, + "nodeType": "Block", + "src": "4221:80:1", + "statements": [ + { + "expression": { + "id": 1180, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 1171, + "name": "temp", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 74, + "src": "4236:4:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 1178, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 1172, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "4241:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1174, + "indexExpression": { + "id": 1173, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1124, + "src": "4255:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4241:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1175, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4268:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 21, + "src": "4241:37:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1177, + "indexExpression": { + "id": 1176, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1158, + "src": "4279:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4241:40:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "4236:46:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 1179, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4285:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "4236:53:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1181, + "nodeType": "ExpressionStatement", + "src": "4236:53:1" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1167, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1161, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1158, + "src": "4143:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "expression": { + "baseExpression": { + "id": 1162, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "4147:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1164, + "indexExpression": { + "id": 1163, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1124, + "src": "4161:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4147:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1165, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4174:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 21, + "src": "4147:37:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1166, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4185:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "4147:44:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4143:48:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1183, + "initializationExpression": { + "assignments": [ + 1158 + ], + "declarations": [ + { + "constant": false, + "id": 1158, + "mutability": "mutable", + "name": "i", + "nameLocation": "4123:1:1", + "nodeType": "VariableDeclaration", + "scope": 1183, + "src": "4115:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1157, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4115:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1160, + "initialValue": { + "hexValue": "30", + "id": 1159, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4127:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "4115:13:1" + }, + "loopExpression": { + "expression": { + "id": 1169, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "4206:3:1", + "subExpression": { + "id": 1168, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1158, + "src": "4206:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1170, + "nodeType": "ExpressionStatement", + "src": "4206:3:1" + }, + "nodeType": "ForStatement", + "src": "4096:205:1" + }, + { + "body": { + "id": 1212, + "nodeType": "Block", + "src": "4370:148:1", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1201, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "id": 1195, + "name": "temp", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 74, + "src": "4389:4:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 1199, + "indexExpression": { + "baseExpression": { + "id": 1196, + "name": "organizationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 77, + "src": "4394:19:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1198, + "indexExpression": { + "id": 1197, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1185, + "src": "4414:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4394:22:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4389:28:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "66616c7365", + "id": 1200, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4421:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "src": "4389:37:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1211, + "nodeType": "IfStatement", + "src": "4385:122:1", + "trueBody": { + "id": 1210, + "nodeType": "Block", + "src": "4428:79:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "baseExpression": { + "id": 1205, + "name": "organizationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 77, + "src": "4468:19:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1207, + "indexExpression": { + "id": 1206, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1185, + "src": "4488:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4468:22:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 1202, + "name": "notVotedAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 80, + "src": "4447:15:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1204, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4463:4:1", + "memberName": "push", + "nodeType": "MemberAccess", + "src": "4447:20:1", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$_t_address_$returns$__$bound_to$_t_array$_t_address_$dyn_storage_ptr_$", + "typeString": "function (address[] storage pointer,address)" + } + }, + "id": 1208, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4447:44:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1209, + "nodeType": "ExpressionStatement", + "src": "4447:44:1" + } + ] + } + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1191, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1188, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1185, + "src": "4333:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 1189, + "name": "organizationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 77, + "src": "4337:19:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1190, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4357:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "4337:26:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4333:30:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1213, + "initializationExpression": { + "assignments": [ + 1185 + ], + "declarations": [ + { + "constant": false, + "id": 1185, + "mutability": "mutable", + "name": "i", + "nameLocation": "4326:1:1", + "nodeType": "VariableDeclaration", + "scope": 1213, + "src": "4318:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1184, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4318:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1187, + "initialValue": { + "hexValue": "30", + "id": 1186, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4330:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "4318:13:1" + }, + "loopExpression": { + "expression": { + "id": 1193, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "4365:3:1", + "subExpression": { + "id": 1192, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1185, + "src": "4365:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1194, + "nodeType": "ExpressionStatement", + "src": "4365:3:1" + }, + "nodeType": "ForStatement", + "src": "4313:205:1" + }, + { + "expression": { + "id": 1214, + "name": "notVotedAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 80, + "src": "4537:15:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "functionReturnParameters": 1129, + "id": 1215, + "nodeType": "Return", + "src": "4530:22:1" + } + ] + }, + "functionSelector": "a52da85d", + "id": 1217, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "notVoted", + "nameLocation": "3810:8:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1125, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1124, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "3827:11:1", + "nodeType": "VariableDeclaration", + "scope": 1217, + "src": "3819:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1123, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3819:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "3818:21:1" + }, + "returnParameters": { + "id": 1129, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1128, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1217, + "src": "3856:16:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 1126, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3856:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1127, + "nodeType": "ArrayTypeName", + "src": "3856:9:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + } + ], + "src": "3855:18:1" + }, + "scope": 2045, + "src": "3801:759:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1249, + "nodeType": "Block", + "src": "4699:236:1", + "statements": [ + { + "body": { + "id": 1247, + "nodeType": "Block", + "src": "4763:165:1", + "statements": [ + { + "expression": { + "id": 1245, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1231, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "4778:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1235, + "indexExpression": { + "baseExpression": { + "id": 1232, + "name": "notVotedAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 80, + "src": "4792:15:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1234, + "indexExpression": { + "id": 1233, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1221, + "src": "4808:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4792:18:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4778:33:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1236, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "4812:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "4778:39:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1244, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1237, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "4837:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1241, + "indexExpression": { + "baseExpression": { + "id": 1238, + "name": "notVotedAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 80, + "src": "4851:15:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1240, + "indexExpression": { + "id": 1239, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1221, + "src": "4867:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4851:18:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4837:33:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1242, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4871:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "4837:39:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 1243, + "name": "stakeToBeDistributed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 92, + "src": "4896:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4837:79:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4778:138:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1246, + "nodeType": "ExpressionStatement", + "src": "4778:138:1" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1227, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1224, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1221, + "src": "4730:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 1225, + "name": "notVotedAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 80, + "src": "4734:15:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1226, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4750:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "4734:22:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4730:26:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1248, + "initializationExpression": { + "assignments": [ + 1221 + ], + "declarations": [ + { + "constant": false, + "id": 1221, + "mutability": "mutable", + "name": "i", + "nameLocation": "4723:1:1", + "nodeType": "VariableDeclaration", + "scope": 1248, + "src": "4715:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1220, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4715:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1223, + "initialValue": { + "hexValue": "30", + "id": 1222, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4727:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "4715:13:1" + }, + "loopExpression": { + "expression": { + "id": 1229, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "4758:3:1", + "subExpression": { + "id": 1228, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1221, + "src": "4758:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1230, + "nodeType": "ExpressionStatement", + "src": "4758:3:1" + }, + "nodeType": "ForStatement", + "src": "4710:218:1" + } + ] + }, + "functionSelector": "bc489aa9", + "id": 1250, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "cutStakeOfNotVoted", + "nameLocation": "4671:18:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1218, + "nodeType": "ParameterList", + "parameters": [], + "src": "4689:2:1" + }, + "returnParameters": { + "id": 1219, + "nodeType": "ParameterList", + "parameters": [], + "src": "4699:0:1" + }, + "scope": 2045, + "src": "4662:273:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1331, + "nodeType": "Block", + "src": "5058:585:1", + "statements": [ + { + "assignments": [ + 1256 + ], + "declarations": [ + { + "constant": false, + "id": 1256, + "mutability": "mutable", + "name": "loopTime", + "nameLocation": "5077:8:1", + "nodeType": "VariableDeclaration", + "scope": 1331, + "src": "5069:16:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1255, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5069:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1259, + "initialValue": { + "expression": { + "id": 1257, + "name": "notVotedAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 80, + "src": "5088:15:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1258, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5104:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "5088:22:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5069:41:1" + }, + { + "body": { + "id": 1275, + "nodeType": "Block", + "src": "5160:48:1", + "statements": [ + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 1270, + "name": "notVotedAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 80, + "src": "5175:15:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1272, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5191:3:1", + "memberName": "pop", + "nodeType": "MemberAccess", + "src": "5175:19:1", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypop_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$returns$__$bound_to$_t_array$_t_address_$dyn_storage_ptr_$", + "typeString": "function (address[] storage pointer)" + } + }, + "id": 1273, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5175:21:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1274, + "nodeType": "ExpressionStatement", + "src": "5175:21:1" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1266, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1264, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1261, + "src": "5141:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 1265, + "name": "loopTime", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1256, + "src": "5145:8:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5141:12:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1276, + "initializationExpression": { + "assignments": [ + 1261 + ], + "declarations": [ + { + "constant": false, + "id": 1261, + "mutability": "mutable", + "name": "i", + "nameLocation": "5134:1:1", + "nodeType": "VariableDeclaration", + "scope": 1276, + "src": "5126:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1260, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5126:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1263, + "initialValue": { + "hexValue": "30", + "id": 1262, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5138:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "5126:13:1" + }, + "loopExpression": { + "expression": { + "id": 1268, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "5155:3:1", + "subExpression": { + "id": 1267, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1261, + "src": "5155:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1269, + "nodeType": "ExpressionStatement", + "src": "5155:3:1" + }, + "nodeType": "ForStatement", + "src": "5121:87:1" + }, + { + "body": { + "id": 1302, + "nodeType": "Block", + "src": "5341:79:1", + "statements": [ + { + "expression": { + "id": 1300, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 1291, + "name": "temp", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 74, + "src": "5356:4:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 1298, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 1292, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "5361:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1294, + "indexExpression": { + "id": 1293, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1252, + "src": "5375:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5361:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1295, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5388:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 18, + "src": "5361:35:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1297, + "indexExpression": { + "id": 1296, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1278, + "src": "5397:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5361:38:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "5356:44:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "66616c7365", + "id": 1299, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5403:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "src": "5356:52:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1301, + "nodeType": "ExpressionStatement", + "src": "5356:52:1" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1287, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1281, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1278, + "src": "5265:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "expression": { + "baseExpression": { + "id": 1282, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "5269:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1284, + "indexExpression": { + "id": 1283, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1252, + "src": "5283:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5269:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1285, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5296:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 18, + "src": "5269:35:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1286, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5305:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "5269:42:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5265:46:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1303, + "initializationExpression": { + "assignments": [ + 1278 + ], + "declarations": [ + { + "constant": false, + "id": 1278, + "mutability": "mutable", + "name": "i", + "nameLocation": "5245:1:1", + "nodeType": "VariableDeclaration", + "scope": 1303, + "src": "5237:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1277, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5237:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1280, + "initialValue": { + "hexValue": "30", + "id": 1279, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5249:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "5237:13:1" + }, + "loopExpression": { + "expression": { + "id": 1289, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "5326:3:1", + "subExpression": { + "id": 1288, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1278, + "src": "5326:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1290, + "nodeType": "ExpressionStatement", + "src": "5326:3:1" + }, + "nodeType": "ForStatement", + "src": "5218:202:1" + }, + { + "body": { + "id": 1329, + "nodeType": "Block", + "src": "5555:81:1", + "statements": [ + { + "expression": { + "id": 1327, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 1318, + "name": "temp", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 74, + "src": "5570:4:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 1325, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 1319, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "5575:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1321, + "indexExpression": { + "id": 1320, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1252, + "src": "5589:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5575:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1322, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5602:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 21, + "src": "5575:37:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1324, + "indexExpression": { + "id": 1323, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1305, + "src": "5613:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5575:40:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "5570:46:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "66616c7365", + "id": 1326, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5619:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "src": "5570:54:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1328, + "nodeType": "ExpressionStatement", + "src": "5570:54:1" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1314, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1308, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1305, + "src": "5477:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "expression": { + "baseExpression": { + "id": 1309, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "5481:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1311, + "indexExpression": { + "id": 1310, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1252, + "src": "5495:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5481:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1312, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5508:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 21, + "src": "5481:37:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1313, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5519:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "5481:44:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5477:48:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1330, + "initializationExpression": { + "assignments": [ + 1305 + ], + "declarations": [ + { + "constant": false, + "id": 1305, + "mutability": "mutable", + "name": "i", + "nameLocation": "5457:1:1", + "nodeType": "VariableDeclaration", + "scope": 1330, + "src": "5449:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1304, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5449:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1307, + "initialValue": { + "hexValue": "30", + "id": 1306, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5461:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "5449:13:1" + }, + "loopExpression": { + "expression": { + "id": 1316, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "5540:3:1", + "subExpression": { + "id": 1315, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1305, + "src": "5540:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1317, + "nodeType": "ExpressionStatement", + "src": "5540:3:1" + }, + "nodeType": "ForStatement", + "src": "5430:206:1" + } + ] + }, + "functionSelector": "8e349519", + "id": 1332, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "emptyNotVotedArray", + "nameLocation": "5011:18:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1253, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1252, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "5038:11:1", + "nodeType": "VariableDeclaration", + "scope": 1332, + "src": "5030:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1251, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5030:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "5029:21:1" + }, + "returnParameters": { + "id": 1254, + "nodeType": "ParameterList", + "parameters": [], + "src": "5058:0:1" + }, + "scope": 2045, + "src": "5002:641:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1386, + "nodeType": "Block", + "src": "6300:465:1", + "statements": [ + { + "expression": { + "id": 1348, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1343, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "6311:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1345, + "indexExpression": { + "id": 1344, + "name": "organization_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1334, + "src": "6324:20:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6311:34:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1346, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "6346:11:1", + "memberName": "org_address", + "nodeType": "MemberAccess", + "referencedDeclaration": 786, + "src": "6311:46:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 1347, + "name": "organization_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1334, + "src": "6360:20:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "6311:69:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1349, + "nodeType": "ExpressionStatement", + "src": "6311:69:1" + }, + { + "expression": { + "id": 1355, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1350, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "6391:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1352, + "indexExpression": { + "id": 1351, + "name": "organization_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1334, + "src": "6404:20:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6391:34:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1353, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "6426:7:1", + "memberName": "doc_cid", + "nodeType": "MemberAccess", + "referencedDeclaration": 788, + "src": "6391:42:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 1354, + "name": "document_cid", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1336, + "src": "6436:12:1", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "src": "6391:57:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "id": 1356, + "nodeType": "ExpressionStatement", + "src": "6391:57:1" + }, + { + "expression": { + "id": 1362, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1357, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "6459:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1359, + "indexExpression": { + "id": 1358, + "name": "organization_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1334, + "src": "6472:20:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6459:34:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1360, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "6494:4:1", + "memberName": "desc", + "nodeType": "MemberAccess", + "referencedDeclaration": 790, + "src": "6459:39:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 1361, + "name": "description", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1338, + "src": "6501:11:1", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "src": "6459:53:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "id": 1363, + "nodeType": "ExpressionStatement", + "src": "6459:53:1" + }, + { + "expression": { + "id": 1369, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1364, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "6523:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1366, + "indexExpression": { + "id": 1365, + "name": "organization_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1334, + "src": "6536:20:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6523:34:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1367, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "6558:10:1", + "memberName": "start_time", + "nodeType": "MemberAccess", + "referencedDeclaration": 806, + "src": "6523:45:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 1368, + "name": "registration_time", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1340, + "src": "6571:17:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6523:65:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1370, + "nodeType": "ExpressionStatement", + "src": "6523:65:1" + }, + { + "expression": { + "id": 1378, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1371, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "6599:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1373, + "indexExpression": { + "id": 1372, + "name": "organization_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1334, + "src": "6612:20:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6599:34:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1374, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "6634:8:1", + "memberName": "end_time", + "nodeType": "MemberAccess", + "referencedDeclaration": 808, + "src": "6599:43:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1377, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1375, + "name": "registration_time", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1340, + "src": "6658:17:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "35", + "id": 1376, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6691:6:1", + "subdenomination": "days", + "typeDescriptions": { + "typeIdentifier": "t_rational_432000_by_1", + "typeString": "int_const 432000" + }, + "value": "5" + }, + "src": "6658:39:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6599:98:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1379, + "nodeType": "ExpressionStatement", + "src": "6599:98:1" + }, + { + "expression": { + "id": 1384, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1380, + "name": "registeredViolations", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 94, + "src": "6710:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1383, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1381, + "name": "registeredViolations", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 94, + "src": "6733:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 1382, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6756:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "6733:24:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6710:47:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1385, + "nodeType": "ExpressionStatement", + "src": "6710:47:1" + } + ] + }, + "functionSelector": "ac64fcde", + "id": 1387, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "registerViolation", + "nameLocation": "6120:17:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1341, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1334, + "mutability": "mutable", + "name": "organization_address", + "nameLocation": "6156:20:1", + "nodeType": "VariableDeclaration", + "scope": 1387, + "src": "6148:28:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1333, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6148:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1336, + "mutability": "mutable", + "name": "document_cid", + "nameLocation": "6201:12:1", + "nodeType": "VariableDeclaration", + "scope": 1387, + "src": "6187:26:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1335, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6187:6:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1338, + "mutability": "mutable", + "name": "description", + "nameLocation": "6238:11:1", + "nodeType": "VariableDeclaration", + "scope": 1387, + "src": "6224:25:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1337, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6224:6:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1340, + "mutability": "mutable", + "name": "registration_time", + "nameLocation": "6268:17:1", + "nodeType": "VariableDeclaration", + "scope": 1387, + "src": "6260:25:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1339, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6260:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "6137:155:1" + }, + "returnParameters": { + "id": 1342, + "nodeType": "ParameterList", + "parameters": [], + "src": "6300:0:1" + }, + "scope": 2045, + "src": "6111:654:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1413, + "nodeType": "Block", + "src": "6897:180:1", + "statements": [ + { + "expression": { + "id": 1402, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1392, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "6908:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1394, + "indexExpression": { + "id": 1393, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1389, + "src": "6921:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6908:25:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1395, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "6934:7:1", + "memberName": "upvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 792, + "src": "6908:33:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1401, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1396, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "6957:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1398, + "indexExpression": { + "id": 1397, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1389, + "src": "6970:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6957:25:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1399, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6983:7:1", + "memberName": "upvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 792, + "src": "6957:33:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 1400, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7006:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "6957:50:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6908:99:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1403, + "nodeType": "ExpressionStatement", + "src": "6908:99:1" + }, + { + "expression": { + "arguments": [ + { + "expression": { + "id": 1409, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "7058:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1410, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7062:6:1", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "7058:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "expression": { + "baseExpression": { + "id": 1404, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "7018:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1406, + "indexExpression": { + "id": 1405, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1389, + "src": "7031:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7018:25:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1407, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7044:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 797, + "src": "7018:34:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1408, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7053:4:1", + "memberName": "push", + "nodeType": "MemberAccess", + "src": "7018:39:1", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$_t_address_$returns$__$bound_to$_t_array$_t_address_$dyn_storage_ptr_$", + "typeString": "function (address[] storage pointer,address)" + } + }, + "id": 1411, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7018:51:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1412, + "nodeType": "ExpressionStatement", + "src": "7018:51:1" + } + ] + }, + "functionSelector": "55779b65", + "id": 1414, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "violationUpVote", + "nameLocation": "6853:15:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1390, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1389, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "6877:11:1", + "nodeType": "VariableDeclaration", + "scope": 1414, + "src": "6869:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1388, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6869:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "6868:21:1" + }, + "returnParameters": { + "id": 1391, + "nodeType": "ParameterList", + "parameters": [], + "src": "6897:0:1" + }, + "scope": 2045, + "src": "6844:233:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1440, + "nodeType": "Block", + "src": "7213:186:1", + "statements": [ + { + "expression": { + "id": 1429, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1419, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "7224:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1421, + "indexExpression": { + "id": 1420, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1416, + "src": "7237:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7224:25:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1422, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "7250:9:1", + "memberName": "downvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 794, + "src": "7224:35:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1428, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1423, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "7275:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1425, + "indexExpression": { + "id": 1424, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1416, + "src": "7288:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7275:25:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1426, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7301:9:1", + "memberName": "downvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 794, + "src": "7275:35:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 1427, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7326:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "7275:52:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7224:103:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1430, + "nodeType": "ExpressionStatement", + "src": "7224:103:1" + }, + { + "expression": { + "arguments": [ + { + "expression": { + "id": 1436, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "7380:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1437, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7384:6:1", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "7380:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "expression": { + "baseExpression": { + "id": 1431, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "7338:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1433, + "indexExpression": { + "id": 1432, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1416, + "src": "7351:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7338:25:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1434, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7364:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 800, + "src": "7338:36:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1435, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7375:4:1", + "memberName": "push", + "nodeType": "MemberAccess", + "src": "7338:41:1", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$_t_address_$returns$__$bound_to$_t_array$_t_address_$dyn_storage_ptr_$", + "typeString": "function (address[] storage pointer,address)" + } + }, + "id": 1438, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7338:53:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1439, + "nodeType": "ExpressionStatement", + "src": "7338:53:1" + } + ] + }, + "functionSelector": "0037556e", + "id": 1441, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "violationDownVote", + "nameLocation": "7167:17:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1417, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1416, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "7193:11:1", + "nodeType": "VariableDeclaration", + "scope": 1441, + "src": "7185:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1415, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7185:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "7184:21:1" + }, + "returnParameters": { + "id": 1418, + "nodeType": "ParameterList", + "parameters": [], + "src": "7213:0:1" + }, + "scope": 2045, + "src": "7158:241:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1485, + "nodeType": "Block", + "src": "7544:345:1", + "statements": [ + { + "assignments": [ + 1447 + ], + "declarations": [ + { + "constant": false, + "id": 1447, + "mutability": "mutable", + "name": "totalVotes", + "nameLocation": "7563:10:1", + "nodeType": "VariableDeclaration", + "scope": 1485, + "src": "7555:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1446, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7555:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1457, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1456, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1448, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "7576:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1450, + "indexExpression": { + "id": 1449, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1443, + "src": "7589:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7576:25:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1451, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7602:7:1", + "memberName": "upvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 792, + "src": "7576:33:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "expression": { + "baseExpression": { + "id": 1452, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "7625:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1454, + "indexExpression": { + "id": 1453, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1443, + "src": "7638:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7625:25:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1455, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7651:9:1", + "memberName": "downvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 794, + "src": "7625:35:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7576:84:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "7555:105:1" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1467, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1463, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1458, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "7675:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1460, + "indexExpression": { + "id": 1459, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1443, + "src": "7688:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7675:25:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1461, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7701:7:1", + "memberName": "upvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 792, + "src": "7675:33:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "313030", + "id": 1462, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7711:3:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_100_by_1", + "typeString": "int_const 100" + }, + "value": "100" + }, + "src": "7675:39:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1466, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1464, + "name": "totalVotes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1447, + "src": "7718:10:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "3531", + "id": 1465, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7731:2:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_51_by_1", + "typeString": "int_const 51" + }, + "value": "51" + }, + "src": "7718:15:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7675:58:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 1483, + "nodeType": "Block", + "src": "7811:71:1", + "statements": [ + { + "expression": { + "id": 1481, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1476, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "7826:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1478, + "indexExpression": { + "id": 1477, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1443, + "src": "7839:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7826:25:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1479, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "7852:10:1", + "memberName": "isViolated", + "nodeType": "MemberAccess", + "referencedDeclaration": 810, + "src": "7826:36:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "66616c7365", + "id": 1480, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7865:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "src": "7826:44:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1482, + "nodeType": "ExpressionStatement", + "src": "7826:44:1" + } + ] + }, + "id": 1484, + "nodeType": "IfStatement", + "src": "7671:211:1", + "trueBody": { + "id": 1475, + "nodeType": "Block", + "src": "7735:70:1", + "statements": [ + { + "expression": { + "id": 1473, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1468, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "7750:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1470, + "indexExpression": { + "id": 1469, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1443, + "src": "7763:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7750:25:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1471, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "7776:10:1", + "memberName": "isViolated", + "nodeType": "MemberAccess", + "referencedDeclaration": 810, + "src": "7750:36:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 1472, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7789:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "7750:43:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1474, + "nodeType": "ExpressionStatement", + "src": "7750:43:1" + } + ] + } + } + ] + }, + "functionSelector": "71206274", + "id": 1486, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "checkViolationStatus", + "nameLocation": "7495:20:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1444, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1443, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "7524:11:1", + "nodeType": "VariableDeclaration", + "scope": 1486, + "src": "7516:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1442, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7516:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "7515:21:1" + }, + "returnParameters": { + "id": 1445, + "nodeType": "ParameterList", + "parameters": [], + "src": "7544:0:1" + }, + "scope": 2045, + "src": "7486:403:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1573, + "nodeType": "Block", + "src": "8065:878:1", + "statements": [ + { + "condition": { + "expression": { + "baseExpression": { + "id": 1491, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "8080:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1493, + "indexExpression": { + "id": 1492, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1488, + "src": "8093:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8080:25:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1494, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8106:10:1", + "memberName": "isViolated", + "nodeType": "MemberAccess", + "referencedDeclaration": 810, + "src": "8080:36:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1572, + "nodeType": "IfStatement", + "src": "8076:860:1", + "trueBody": { + "id": 1571, + "nodeType": "Block", + "src": "8118:818:1", + "statements": [ + { + "body": { + "id": 1531, + "nodeType": "Block", + "src": "8272:247:1", + "statements": [ + { + "expression": { + "id": 1529, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1509, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "8291:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1516, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 1510, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "8305:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1512, + "indexExpression": { + "id": 1511, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1488, + "src": "8319:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8305:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1513, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8332:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 18, + "src": "8305:35:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1515, + "indexExpression": { + "id": 1514, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1496, + "src": "8341:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8305:38:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8291:53:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1517, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "8345:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "8291:59:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1528, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1518, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "8374:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1525, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 1519, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "8388:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1521, + "indexExpression": { + "id": 1520, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1488, + "src": "8402:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8388:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1522, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8415:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 18, + "src": "8388:35:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1524, + "indexExpression": { + "id": 1523, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1496, + "src": "8424:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8388:38:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8374:53:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1526, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8454:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "8374:85:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 1527, + "name": "stakeToBeDistributed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 92, + "src": "8483:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8374:129:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8291:212:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1530, + "nodeType": "ExpressionStatement", + "src": "8291:212:1" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1505, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1499, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1496, + "src": "8188:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "expression": { + "baseExpression": { + "id": 1500, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "8192:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1502, + "indexExpression": { + "id": 1501, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1488, + "src": "8206:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8192:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1503, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8219:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 18, + "src": "8192:35:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1504, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8228:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "8192:42:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8188:46:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1532, + "initializationExpression": { + "assignments": [ + 1496 + ], + "declarations": [ + { + "constant": false, + "id": 1496, + "mutability": "mutable", + "name": "i", + "nameLocation": "8164:1:1", + "nodeType": "VariableDeclaration", + "scope": 1532, + "src": "8156:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1495, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8156:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1498, + "initialValue": { + "hexValue": "30", + "id": 1497, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8168:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "8156:13:1" + }, + "loopExpression": { + "expression": { + "id": 1507, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "8253:3:1", + "subExpression": { + "id": 1506, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1496, + "src": "8253:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1508, + "nodeType": "ExpressionStatement", + "src": "8253:3:1" + }, + "nodeType": "ForStatement", + "src": "8133:386:1" + }, + { + "body": { + "id": 1569, + "nodeType": "Block", + "src": "8674:251:1", + "statements": [ + { + "expression": { + "id": 1567, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1547, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "8693:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1554, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 1548, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "8707:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1550, + "indexExpression": { + "id": 1549, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1488, + "src": "8721:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8707:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1551, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8734:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 21, + "src": "8707:37:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1553, + "indexExpression": { + "id": 1552, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1534, + "src": "8745:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8707:40:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8693:55:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1555, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "8749:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "8693:61:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1566, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1556, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "8778:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1563, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 1557, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "8792:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1559, + "indexExpression": { + "id": 1558, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1488, + "src": "8806:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8792:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1560, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8819:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 21, + "src": "8792:37:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1562, + "indexExpression": { + "id": 1561, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1534, + "src": "8830:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8792:40:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8778:55:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1564, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8860:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "8778:87:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 1565, + "name": "stakeToBeDistributed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 92, + "src": "8889:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8778:131:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8693:216:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1568, + "nodeType": "ExpressionStatement", + "src": "8693:216:1" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1543, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1537, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1534, + "src": "8588:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "expression": { + "baseExpression": { + "id": 1538, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "8592:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1540, + "indexExpression": { + "id": 1539, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1488, + "src": "8606:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8592:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1541, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8619:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 21, + "src": "8592:37:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1542, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8630:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "8592:44:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8588:48:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1570, + "initializationExpression": { + "assignments": [ + 1534 + ], + "declarations": [ + { + "constant": false, + "id": 1534, + "mutability": "mutable", + "name": "i", + "nameLocation": "8564:1:1", + "nodeType": "VariableDeclaration", + "scope": 1570, + "src": "8556:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1533, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8556:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1536, + "initialValue": { + "hexValue": "30", + "id": 1535, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8568:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "8556:13:1" + }, + "loopExpression": { + "expression": { + "id": 1545, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "8655:3:1", + "subExpression": { + "id": 1544, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1534, + "src": "8655:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1546, + "nodeType": "ExpressionStatement", + "src": "8655:3:1" + }, + "nodeType": "ForStatement", + "src": "8533:392:1" + } + ] + } + } + ] + }, + "functionSelector": "0a54ecbf", + "id": 1574, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "upvotedOnVerify", + "nameLocation": "8021:15:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1489, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1488, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "8045:11:1", + "nodeType": "VariableDeclaration", + "scope": 1574, + "src": "8037:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1487, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8037:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "8036:21:1" + }, + "returnParameters": { + "id": 1490, + "nodeType": "ParameterList", + "parameters": [], + "src": "8065:0:1" + }, + "scope": 2045, + "src": "8012:931:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1689, + "nodeType": "Block", + "src": "9167:1083:1", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1584, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1579, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "9182:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1581, + "indexExpression": { + "id": 1580, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1576, + "src": "9195:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "9182:25:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1582, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9208:10:1", + "memberName": "isViolated", + "nodeType": "MemberAccess", + "referencedDeclaration": 810, + "src": "9182:36:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "74727565", + "id": 1583, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9222:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "9182:44:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1688, + "nodeType": "IfStatement", + "src": "9178:1065:1", + "trueBody": { + "id": 1687, + "nodeType": "Block", + "src": "9228:1015:1", + "statements": [ + { + "expression": { + "id": 1590, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1585, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "9243:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1587, + "indexExpression": { + "id": 1586, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1576, + "src": "9257:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "9243:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1588, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "9270:19:1", + "memberName": "verification_status", + "nodeType": "MemberAccess", + "referencedDeclaration": 15, + "src": "9243:46:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "66616c7365", + "id": 1589, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9292:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "src": "9243:54:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1591, + "nodeType": "ExpressionStatement", + "src": "9243:54:1" + }, + { + "expression": { + "id": 1594, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1592, + "name": "totalOrganizations", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 90, + "src": "9312:18:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "hexValue": "31", + "id": 1593, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9334:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "9312:23:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1595, + "nodeType": "ExpressionStatement", + "src": "9312:23:1" + }, + { + "expression": { + "id": 1600, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 1596, + "name": "verifiedOrgMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 70, + "src": "9350:14:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 1598, + "indexExpression": { + "id": 1597, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1576, + "src": "9365:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "9350:27:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "66616c7365", + "id": 1599, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9380:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "src": "9350:35:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1601, + "nodeType": "ExpressionStatement", + "src": "9350:35:1" + }, + { + "assignments": [ + 1603 + ], + "declarations": [ + { + "constant": false, + "id": 1603, + "mutability": "mutable", + "name": "maxPoints", + "nameLocation": "9408:9:1", + "nodeType": "VariableDeclaration", + "scope": 1687, + "src": "9400:17:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1602, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9400:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1604, + "nodeType": "VariableDeclarationStatement", + "src": "9400:17:1" + }, + { + "body": { + "id": 1650, + "nodeType": "Block", + "src": "9491:384:1", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1630, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1616, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "9536:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1620, + "indexExpression": { + "baseExpression": { + "id": 1617, + "name": "organizationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 77, + "src": "9550:19:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1619, + "indexExpression": { + "id": 1618, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1606, + "src": "9570:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "9550:22:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "9536:37:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1621, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9574:19:1", + "memberName": "verification_status", + "nodeType": "MemberAccess", + "referencedDeclaration": 15, + "src": "9536:57:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1629, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1622, + "name": "maxPoints", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1603, + "src": "9618:9:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "baseExpression": { + "id": 1623, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "9630:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1627, + "indexExpression": { + "baseExpression": { + "id": 1624, + "name": "organizationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 77, + "src": "9644:19:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1626, + "indexExpression": { + "id": 1625, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1606, + "src": "9664:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "9644:22:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "9630:37:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1628, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9668:6:1", + "memberName": "points", + "nodeType": "MemberAccess", + "referencedDeclaration": 31, + "src": "9630:44:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9618:56:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "9536:138:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1649, + "nodeType": "IfStatement", + "src": "9510:350:1", + "trueBody": { + "id": 1648, + "nodeType": "Block", + "src": "9694:166:1", + "statements": [ + { + "expression": { + "id": 1638, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1631, + "name": "maxPoints", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1603, + "src": "9717:9:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "expression": { + "baseExpression": { + "id": 1632, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "9729:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1636, + "indexExpression": { + "baseExpression": { + "id": 1633, + "name": "organizationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 77, + "src": "9743:19:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1635, + "indexExpression": { + "id": 1634, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1606, + "src": "9763:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "9743:22:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "9729:37:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1637, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9767:6:1", + "memberName": "points", + "nodeType": "MemberAccess", + "referencedDeclaration": 31, + "src": "9729:44:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9717:56:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1639, + "nodeType": "ExpressionStatement", + "src": "9717:56:1" + }, + { + "expression": { + "arguments": [ + { + "baseExpression": { + "id": 1643, + "name": "organizationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 77, + "src": "9817:19:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1645, + "indexExpression": { + "id": 1644, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1606, + "src": "9837:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "9817:22:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 1640, + "name": "maxPointAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 83, + "src": "9796:15:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1642, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9812:4:1", + "memberName": "push", + "nodeType": "MemberAccess", + "src": "9796:20:1", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$_t_address_$returns$__$bound_to$_t_array$_t_address_$dyn_storage_ptr_$", + "typeString": "function (address[] storage pointer,address)" + } + }, + "id": 1646, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9796:44:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1647, + "nodeType": "ExpressionStatement", + "src": "9796:44:1" + } + ] + } + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1612, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1609, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1606, + "src": "9454:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 1610, + "name": "organizationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 77, + "src": "9458:19:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1611, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9478:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "9458:26:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9454:30:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1651, + "initializationExpression": { + "assignments": [ + 1606 + ], + "declarations": [ + { + "constant": false, + "id": 1606, + "mutability": "mutable", + "name": "i", + "nameLocation": "9447:1:1", + "nodeType": "VariableDeclaration", + "scope": 1651, + "src": "9439:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1605, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9439:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1608, + "initialValue": { + "hexValue": "30", + "id": 1607, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9451:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "9439:13:1" + }, + "loopExpression": { + "expression": { + "id": 1614, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "9486:3:1", + "subExpression": { + "id": 1613, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1606, + "src": "9486:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1615, + "nodeType": "ExpressionStatement", + "src": "9486:3:1" + }, + "nodeType": "ForStatement", + "src": "9434:441:1" + }, + { + "body": { + "id": 1663, + "nodeType": "Block", + "src": "9944:121:1", + "statements": [] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1659, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1656, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1653, + "src": "9911:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 1657, + "name": "maxPointAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 83, + "src": "9915:15:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1658, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9931:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "9915:22:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9911:26:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1664, + "initializationExpression": { + "assignments": [ + 1653 + ], + "declarations": [ + { + "constant": false, + "id": 1653, + "mutability": "mutable", + "name": "i", + "nameLocation": "9904:1:1", + "nodeType": "VariableDeclaration", + "scope": 1664, + "src": "9896:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1652, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9896:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1655, + "initialValue": { + "hexValue": "30", + "id": 1654, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9908:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "9896:13:1" + }, + "loopExpression": { + "expression": { + "id": 1661, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "9939:3:1", + "subExpression": { + "id": 1660, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1653, + "src": "9939:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1662, + "nodeType": "ExpressionStatement", + "src": "9939:3:1" + }, + "nodeType": "ForStatement", + "src": "9891:174:1" + }, + { + "assignments": [ + 1666 + ], + "declarations": [ + { + "constant": false, + "id": 1666, + "mutability": "mutable", + "name": "loopTime", + "nameLocation": "10089:8:1", + "nodeType": "VariableDeclaration", + "scope": 1687, + "src": "10081:16:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1665, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10081:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1669, + "initialValue": { + "expression": { + "id": 1667, + "name": "maxPointAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 83, + "src": "10100:15:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1668, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "10116:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "10100:22:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "10081:41:1" + }, + { + "body": { + "id": 1685, + "nodeType": "Block", + "src": "10176:56:1", + "statements": [ + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 1680, + "name": "maxPointAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 83, + "src": "10195:15:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1682, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "10211:3:1", + "memberName": "pop", + "nodeType": "MemberAccess", + "src": "10195:19:1", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypop_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$returns$__$bound_to$_t_array$_t_address_$dyn_storage_ptr_$", + "typeString": "function (address[] storage pointer)" + } + }, + "id": 1683, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10195:21:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1684, + "nodeType": "ExpressionStatement", + "src": "10195:21:1" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1676, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1674, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1671, + "src": "10157:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 1675, + "name": "loopTime", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1666, + "src": "10161:8:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "10157:12:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1686, + "initializationExpression": { + "assignments": [ + 1671 + ], + "declarations": [ + { + "constant": false, + "id": 1671, + "mutability": "mutable", + "name": "i", + "nameLocation": "10150:1:1", + "nodeType": "VariableDeclaration", + "scope": 1686, + "src": "10142:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1670, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10142:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1673, + "initialValue": { + "hexValue": "30", + "id": 1672, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10154:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "10142:13:1" + }, + "loopExpression": { + "expression": { + "id": 1678, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "10171:3:1", + "subExpression": { + "id": 1677, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1671, + "src": "10171:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1679, + "nodeType": "ExpressionStatement", + "src": "10171:3:1" + }, + "nodeType": "ForStatement", + "src": "10137:95:1" + } + ] + } + } + ] + }, + "functionSelector": "ae51c2bc", + "id": 1690, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "RemoveCharityIfFraud", + "nameLocation": "9118:20:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1577, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1576, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "9147:11:1", + "nodeType": "VariableDeclaration", + "scope": 1690, + "src": "9139:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1575, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9139:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "9138:21:1" + }, + "returnParameters": { + "id": 1578, + "nodeType": "ParameterList", + "parameters": [], + "src": "9167:0:1" + }, + "scope": 2045, + "src": "9109:1141:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1730, + "nodeType": "Block", + "src": "10540:347:1", + "statements": [ + { + "expression": { + "id": 1704, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1699, + "name": "financialReportMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 847, + "src": "10551:18:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport storage ref)" + } + }, + "id": 1701, + "indexExpression": { + "id": 1700, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1692, + "src": "10570:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "10551:31:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage", + "typeString": "struct OrgOperation.FinancialReport storage ref" + } + }, + "id": 1702, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "10583:11:1", + "memberName": "org_address", + "nodeType": "MemberAccess", + "referencedDeclaration": 817, + "src": "10551:43:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 1703, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1692, + "src": "10597:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "10551:57:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1705, + "nodeType": "ExpressionStatement", + "src": "10551:57:1" + }, + { + "expression": { + "arguments": [ + { + "id": 1711, + "name": "cid", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1694, + "src": "10660:3:1", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "expression": { + "baseExpression": { + "id": 1706, + "name": "financialReportMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 847, + "src": "10619:18:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport storage ref)" + } + }, + "id": 1708, + "indexExpression": { + "id": 1707, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1692, + "src": "10638:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "10619:31:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage", + "typeString": "struct OrgOperation.FinancialReport storage ref" + } + }, + "id": 1709, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "10651:3:1", + "memberName": "cid", + "nodeType": "MemberAccess", + "referencedDeclaration": 836, + "src": "10619:35:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_storage_$dyn_storage", + "typeString": "string storage ref[] storage ref" + } + }, + "id": 1710, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "10655:4:1", + "memberName": "push", + "nodeType": "MemberAccess", + "src": "10619:40:1", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_string_storage_$dyn_storage_ptr_$_t_string_storage_$returns$__$bound_to$_t_array$_t_string_storage_$dyn_storage_ptr_$", + "typeString": "function (string storage ref[] storage pointer,string storage ref)" + } + }, + "id": 1712, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10619:45:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1713, + "nodeType": "ExpressionStatement", + "src": "10619:45:1" + }, + { + "expression": { + "id": 1719, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1714, + "name": "financialReportMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 847, + "src": "10675:18:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport storage ref)" + } + }, + "id": 1716, + "indexExpression": { + "id": 1715, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1692, + "src": "10694:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "10675:31:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage", + "typeString": "struct OrgOperation.FinancialReport storage ref" + } + }, + "id": 1717, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "10721:21:1", + "memberName": "reportUploadStartTime", + "nodeType": "MemberAccess", + "referencedDeclaration": 829, + "src": "10675:67:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 1718, + "name": "registration_time", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1696, + "src": "10745:17:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "10675:87:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1720, + "nodeType": "ExpressionStatement", + "src": "10675:87:1" + }, + { + "expression": { + "id": 1728, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1721, + "name": "financialReportMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 847, + "src": "10773:18:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport storage ref)" + } + }, + "id": 1723, + "indexExpression": { + "id": 1722, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1692, + "src": "10792:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "10773:31:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage", + "typeString": "struct OrgOperation.FinancialReport storage ref" + } + }, + "id": 1724, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "10805:19:1", + "memberName": "reportUploadEndTime", + "nodeType": "MemberAccess", + "referencedDeclaration": 831, + "src": "10773:51:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1727, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1725, + "name": "registration_time", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1696, + "src": "10840:17:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "35", + "id": 1726, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10873:6:1", + "subdenomination": "days", + "typeDescriptions": { + "typeIdentifier": "t_rational_432000_by_1", + "typeString": "int_const 432000" + }, + "value": "5" + }, + "src": "10840:39:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "10773:106:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1729, + "nodeType": "ExpressionStatement", + "src": "10773:106:1" + } + ] + }, + "functionSelector": "482bd55b", + "id": 1731, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "registerFinancialReport", + "nameLocation": "10408:23:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1697, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1692, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "10450:11:1", + "nodeType": "VariableDeclaration", + "scope": 1731, + "src": "10442:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1691, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10442:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1694, + "mutability": "mutable", + "name": "cid", + "nameLocation": "10486:3:1", + "nodeType": "VariableDeclaration", + "scope": 1731, + "src": "10472:17:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1693, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "10472:6:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1696, + "mutability": "mutable", + "name": "registration_time", + "nameLocation": "10508:17:1", + "nodeType": "VariableDeclaration", + "scope": 1731, + "src": "10500:25:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1695, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10500:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "10431:101:1" + }, + "returnParameters": { + "id": 1698, + "nodeType": "ParameterList", + "parameters": [], + "src": "10540:0:1" + }, + "scope": 2045, + "src": "10399:488:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1757, + "nodeType": "Block", + "src": "11024:198:1", + "statements": [ + { + "expression": { + "id": 1746, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1736, + "name": "financialReportMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 847, + "src": "11035:18:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport storage ref)" + } + }, + "id": 1738, + "indexExpression": { + "id": 1737, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1733, + "src": "11054:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "11035:31:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage", + "typeString": "struct OrgOperation.FinancialReport storage ref" + } + }, + "id": 1739, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "11067:7:1", + "memberName": "upvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 819, + "src": "11035:39:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1745, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1740, + "name": "financialReportMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 847, + "src": "11090:18:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport storage ref)" + } + }, + "id": 1742, + "indexExpression": { + "id": 1741, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1733, + "src": "11109:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "11090:31:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage", + "typeString": "struct OrgOperation.FinancialReport storage ref" + } + }, + "id": 1743, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "11122:7:1", + "memberName": "upvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 819, + "src": "11090:39:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 1744, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11145:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "11090:56:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "11035:111:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1747, + "nodeType": "ExpressionStatement", + "src": "11035:111:1" + }, + { + "expression": { + "arguments": [ + { + "expression": { + "id": 1753, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "11203:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1754, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "11207:6:1", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "11203:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "expression": { + "baseExpression": { + "id": 1748, + "name": "financialReportMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 847, + "src": "11157:18:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport storage ref)" + } + }, + "id": 1750, + "indexExpression": { + "id": 1749, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1733, + "src": "11176:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "11157:31:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage", + "typeString": "struct OrgOperation.FinancialReport storage ref" + } + }, + "id": 1751, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "11189:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 824, + "src": "11157:40:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1752, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "11198:4:1", + "memberName": "push", + "nodeType": "MemberAccess", + "src": "11157:45:1", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$_t_address_$returns$__$bound_to$_t_array$_t_address_$dyn_storage_ptr_$", + "typeString": "function (address[] storage pointer,address)" + } + }, + "id": 1755, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11157:57:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1756, + "nodeType": "ExpressionStatement", + "src": "11157:57:1" + } + ] + }, + "functionSelector": "b5e801d5", + "id": 1758, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "reportUpVote", + "nameLocation": "10983:12:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1734, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1733, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "11004:11:1", + "nodeType": "VariableDeclaration", + "scope": 1758, + "src": "10996:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1732, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10996:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "10995:21:1" + }, + "returnParameters": { + "id": 1735, + "nodeType": "ParameterList", + "parameters": [], + "src": "11024:0:1" + }, + "scope": 2045, + "src": "10974:248:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1784, + "nodeType": "Block", + "src": "11365:204:1", + "statements": [ + { + "expression": { + "id": 1773, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1763, + "name": "financialReportMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 847, + "src": "11376:18:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport storage ref)" + } + }, + "id": 1765, + "indexExpression": { + "id": 1764, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1760, + "src": "11395:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "11376:31:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage", + "typeString": "struct OrgOperation.FinancialReport storage ref" + } + }, + "id": 1766, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "11408:9:1", + "memberName": "downvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 821, + "src": "11376:41:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1772, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1767, + "name": "financialReportMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 847, + "src": "11433:18:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport storage ref)" + } + }, + "id": 1769, + "indexExpression": { + "id": 1768, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1760, + "src": "11452:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "11433:31:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage", + "typeString": "struct OrgOperation.FinancialReport storage ref" + } + }, + "id": 1770, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "11465:9:1", + "memberName": "downvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 821, + "src": "11433:41:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 1771, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11490:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "11433:58:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "11376:115:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1774, + "nodeType": "ExpressionStatement", + "src": "11376:115:1" + }, + { + "expression": { + "arguments": [ + { + "expression": { + "id": 1780, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "11550:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1781, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "11554:6:1", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "11550:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "expression": { + "baseExpression": { + "id": 1775, + "name": "financialReportMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 847, + "src": "11502:18:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport storage ref)" + } + }, + "id": 1777, + "indexExpression": { + "id": 1776, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1760, + "src": "11521:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "11502:31:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage", + "typeString": "struct OrgOperation.FinancialReport storage ref" + } + }, + "id": 1778, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "11534:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 827, + "src": "11502:42:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1779, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "11545:4:1", + "memberName": "push", + "nodeType": "MemberAccess", + "src": "11502:47:1", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$_t_address_$returns$__$bound_to$_t_array$_t_address_$dyn_storage_ptr_$", + "typeString": "function (address[] storage pointer,address)" + } + }, + "id": 1782, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11502:59:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1783, + "nodeType": "ExpressionStatement", + "src": "11502:59:1" + } + ] + }, + "functionSelector": "14cb11e8", + "id": 1785, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "reportsDownVote", + "nameLocation": "11321:15:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1761, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1760, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "11345:11:1", + "nodeType": "VariableDeclaration", + "scope": 1785, + "src": "11337:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1759, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "11337:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "11336:21:1" + }, + "returnParameters": { + "id": 1762, + "nodeType": "ParameterList", + "parameters": [], + "src": "11365:0:1" + }, + "scope": 2045, + "src": "11312:257:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1829, + "nodeType": "Block", + "src": "11727:379:1", + "statements": [ + { + "assignments": [ + 1791 + ], + "declarations": [ + { + "constant": false, + "id": 1791, + "mutability": "mutable", + "name": "totalVotes", + "nameLocation": "11746:10:1", + "nodeType": "VariableDeclaration", + "scope": 1829, + "src": "11738:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1790, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11738:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1801, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1800, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1792, + "name": "financialReportMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 847, + "src": "11759:18:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport storage ref)" + } + }, + "id": 1794, + "indexExpression": { + "id": 1793, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1787, + "src": "11778:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "11759:31:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage", + "typeString": "struct OrgOperation.FinancialReport storage ref" + } + }, + "id": 1795, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "11791:7:1", + "memberName": "upvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 819, + "src": "11759:39:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "expression": { + "baseExpression": { + "id": 1796, + "name": "financialReportMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 847, + "src": "11814:18:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport storage ref)" + } + }, + "id": 1798, + "indexExpression": { + "id": 1797, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1787, + "src": "11833:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "11814:31:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage", + "typeString": "struct OrgOperation.FinancialReport storage ref" + } + }, + "id": 1799, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "11846:9:1", + "memberName": "downvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 821, + "src": "11814:41:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "11759:96:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "11738:117:1" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1811, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1807, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1802, + "name": "financialReportMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 847, + "src": "11870:18:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport storage ref)" + } + }, + "id": 1804, + "indexExpression": { + "id": 1803, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1787, + "src": "11889:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "11870:31:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage", + "typeString": "struct OrgOperation.FinancialReport storage ref" + } + }, + "id": 1805, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "11902:7:1", + "memberName": "upvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 819, + "src": "11870:39:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "313030", + "id": 1806, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11912:3:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_100_by_1", + "typeString": "int_const 100" + }, + "value": "100" + }, + "src": "11870:45:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1810, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1808, + "name": "totalVotes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1791, + "src": "11919:10:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "3531", + "id": 1809, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11932:2:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_51_by_1", + "typeString": "int_const 51" + }, + "value": "51" + }, + "src": "11919:15:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "11870:64:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 1827, + "nodeType": "Block", + "src": "12020:79:1", + "statements": [ + { + "expression": { + "id": 1825, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1820, + "name": "financialReportMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 847, + "src": "12035:18:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport storage ref)" + } + }, + "id": 1822, + "indexExpression": { + "id": 1821, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1787, + "src": "12054:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12035:31:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage", + "typeString": "struct OrgOperation.FinancialReport storage ref" + } + }, + "id": 1823, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "12067:12:1", + "memberName": "isReportTrue", + "nodeType": "MemberAccess", + "referencedDeclaration": 833, + "src": "12035:44:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "66616c7365", + "id": 1824, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12082:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "src": "12035:52:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1826, + "nodeType": "ExpressionStatement", + "src": "12035:52:1" + } + ] + }, + "id": 1828, + "nodeType": "IfStatement", + "src": "11866:233:1", + "trueBody": { + "id": 1819, + "nodeType": "Block", + "src": "11936:78:1", + "statements": [ + { + "expression": { + "id": 1817, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1812, + "name": "financialReportMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 847, + "src": "11951:18:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport storage ref)" + } + }, + "id": 1814, + "indexExpression": { + "id": 1813, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1787, + "src": "11970:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "11951:31:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage", + "typeString": "struct OrgOperation.FinancialReport storage ref" + } + }, + "id": 1815, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "11983:12:1", + "memberName": "isReportTrue", + "nodeType": "MemberAccess", + "referencedDeclaration": 833, + "src": "11951:44:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 1816, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11998:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "11951:51:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1818, + "nodeType": "ExpressionStatement", + "src": "11951:51:1" + } + ] + } + } + ] + }, + "functionSelector": "80e179e9", + "id": 1830, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "checkFinancialReportStatus", + "nameLocation": "11672:26:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1788, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1787, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "11707:11:1", + "nodeType": "VariableDeclaration", + "scope": 1830, + "src": "11699:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1786, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "11699:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "11698:21:1" + }, + "returnParameters": { + "id": 1789, + "nodeType": "ParameterList", + "parameters": [], + "src": "11727:0:1" + }, + "scope": 2045, + "src": "11663:443:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1919, + "nodeType": "Block", + "src": "12288:895:1", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1840, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1835, + "name": "financialReportMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 847, + "src": "12303:18:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport storage ref)" + } + }, + "id": 1837, + "indexExpression": { + "id": 1836, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1832, + "src": "12322:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12303:31:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage", + "typeString": "struct OrgOperation.FinancialReport storage ref" + } + }, + "id": 1838, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "12335:12:1", + "memberName": "isReportTrue", + "nodeType": "MemberAccess", + "referencedDeclaration": 833, + "src": "12303:44:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "66616c7365", + "id": 1839, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12351:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "src": "12303:53:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1918, + "nodeType": "IfStatement", + "src": "12299:877:1", + "trueBody": { + "id": 1917, + "nodeType": "Block", + "src": "12358:818:1", + "statements": [ + { + "body": { + "id": 1877, + "nodeType": "Block", + "src": "12512:247:1", + "statements": [ + { + "expression": { + "id": 1875, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1855, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "12531:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1862, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 1856, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "12545:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1858, + "indexExpression": { + "id": 1857, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1832, + "src": "12559:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12545:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1859, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "12572:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 18, + "src": "12545:35:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1861, + "indexExpression": { + "id": 1860, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1842, + "src": "12581:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12545:38:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12531:53:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1863, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "12585:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "12531:59:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1874, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1864, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "12614:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1871, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 1865, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "12628:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1867, + "indexExpression": { + "id": 1866, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1832, + "src": "12642:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12628:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1868, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "12655:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 18, + "src": "12628:35:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1870, + "indexExpression": { + "id": 1869, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1842, + "src": "12664:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12628:38:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12614:53:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1872, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "12694:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "12614:85:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 1873, + "name": "stakeToBeDistributed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 92, + "src": "12723:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12614:129:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12531:212:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1876, + "nodeType": "ExpressionStatement", + "src": "12531:212:1" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1851, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1845, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1842, + "src": "12428:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "expression": { + "baseExpression": { + "id": 1846, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "12432:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1848, + "indexExpression": { + "id": 1847, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1832, + "src": "12446:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12432:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1849, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "12459:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 18, + "src": "12432:35:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1850, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "12468:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "12432:42:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12428:46:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1878, + "initializationExpression": { + "assignments": [ + 1842 + ], + "declarations": [ + { + "constant": false, + "id": 1842, + "mutability": "mutable", + "name": "i", + "nameLocation": "12404:1:1", + "nodeType": "VariableDeclaration", + "scope": 1878, + "src": "12396:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1841, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12396:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1844, + "initialValue": { + "hexValue": "30", + "id": 1843, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12408:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "12396:13:1" + }, + "loopExpression": { + "expression": { + "id": 1853, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "12493:3:1", + "subExpression": { + "id": 1852, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1842, + "src": "12493:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1854, + "nodeType": "ExpressionStatement", + "src": "12493:3:1" + }, + "nodeType": "ForStatement", + "src": "12373:386:1" + }, + { + "body": { + "id": 1915, + "nodeType": "Block", + "src": "12914:251:1", + "statements": [ + { + "expression": { + "id": 1913, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1893, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "12933:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1900, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 1894, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "12947:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1896, + "indexExpression": { + "id": 1895, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1832, + "src": "12961:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12947:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1897, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "12974:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 21, + "src": "12947:37:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1899, + "indexExpression": { + "id": 1898, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1880, + "src": "12985:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12947:40:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12933:55:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1901, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "12989:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "12933:61:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1912, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1902, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "13018:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1909, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 1903, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "13032:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1905, + "indexExpression": { + "id": 1904, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1832, + "src": "13046:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "13032:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1906, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "13059:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 21, + "src": "13032:37:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1908, + "indexExpression": { + "id": 1907, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1880, + "src": "13070:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "13032:40:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "13018:55:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1910, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "13100:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "13018:87:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 1911, + "name": "stakeToBeDistributed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 92, + "src": "13129:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "13018:131:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12933:216:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1914, + "nodeType": "ExpressionStatement", + "src": "12933:216:1" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1889, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1883, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1880, + "src": "12828:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "expression": { + "baseExpression": { + "id": 1884, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "12832:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1886, + "indexExpression": { + "id": 1885, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1832, + "src": "12846:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12832:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1887, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "12859:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 21, + "src": "12832:37:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1888, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "12870:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "12832:44:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12828:48:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1916, + "initializationExpression": { + "assignments": [ + 1880 + ], + "declarations": [ + { + "constant": false, + "id": 1880, + "mutability": "mutable", + "name": "i", + "nameLocation": "12804:1:1", + "nodeType": "VariableDeclaration", + "scope": 1916, + "src": "12796:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1879, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12796:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1882, + "initialValue": { + "hexValue": "30", + "id": 1881, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12808:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "12796:13:1" + }, + "loopExpression": { + "expression": { + "id": 1891, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "12895:3:1", + "subExpression": { + "id": 1890, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1880, + "src": "12895:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1892, + "nodeType": "ExpressionStatement", + "src": "12895:3:1" + }, + "nodeType": "ForStatement", + "src": "12773:392:1" + } + ] + } + } + ] + }, + "functionSelector": "ef2d5847", + "id": 1920, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "upvotedOnFinancialReport", + "nameLocation": "12235:24:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1833, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1832, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "12268:11:1", + "nodeType": "VariableDeclaration", + "scope": 1920, + "src": "12260:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1831, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "12260:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "12259:21:1" + }, + "returnParameters": { + "id": 1834, + "nodeType": "ParameterList", + "parameters": [], + "src": "12288:0:1" + }, + "scope": 2045, + "src": "12226:957:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 2035, + "nodeType": "Block", + "src": "13414:1092:1", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1930, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1925, + "name": "financialReportMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 847, + "src": "13429:18:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport storage ref)" + } + }, + "id": 1927, + "indexExpression": { + "id": 1926, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1922, + "src": "13448:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "13429:31:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage", + "typeString": "struct OrgOperation.FinancialReport storage ref" + } + }, + "id": 1928, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "13461:12:1", + "memberName": "isReportTrue", + "nodeType": "MemberAccess", + "referencedDeclaration": 833, + "src": "13429:44:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "66616c7365", + "id": 1929, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13477:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "src": "13429:53:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2034, + "nodeType": "IfStatement", + "src": "13425:1074:1", + "trueBody": { + "id": 2033, + "nodeType": "Block", + "src": "13484:1015:1", + "statements": [ + { + "expression": { + "id": 1936, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1931, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "13499:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1933, + "indexExpression": { + "id": 1932, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1922, + "src": "13513:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "13499:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1934, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "13526:19:1", + "memberName": "verification_status", + "nodeType": "MemberAccess", + "referencedDeclaration": 15, + "src": "13499:46:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "66616c7365", + "id": 1935, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13548:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "src": "13499:54:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1937, + "nodeType": "ExpressionStatement", + "src": "13499:54:1" + }, + { + "expression": { + "id": 1940, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1938, + "name": "totalOrganizations", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 90, + "src": "13568:18:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "hexValue": "31", + "id": 1939, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13590:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "13568:23:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1941, + "nodeType": "ExpressionStatement", + "src": "13568:23:1" + }, + { + "expression": { + "id": 1946, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 1942, + "name": "verifiedOrgMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 70, + "src": "13606:14:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 1944, + "indexExpression": { + "id": 1943, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1922, + "src": "13621:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "13606:27:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "66616c7365", + "id": 1945, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13636:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "src": "13606:35:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1947, + "nodeType": "ExpressionStatement", + "src": "13606:35:1" + }, + { + "assignments": [ + 1949 + ], + "declarations": [ + { + "constant": false, + "id": 1949, + "mutability": "mutable", + "name": "maxPoints", + "nameLocation": "13664:9:1", + "nodeType": "VariableDeclaration", + "scope": 2033, + "src": "13656:17:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1948, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "13656:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1950, + "nodeType": "VariableDeclarationStatement", + "src": "13656:17:1" + }, + { + "body": { + "id": 1996, + "nodeType": "Block", + "src": "13747:384:1", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1976, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1962, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "13792:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1966, + "indexExpression": { + "baseExpression": { + "id": 1963, + "name": "organizationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 77, + "src": "13806:19:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1965, + "indexExpression": { + "id": 1964, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1952, + "src": "13826:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "13806:22:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "13792:37:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1967, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "13830:19:1", + "memberName": "verification_status", + "nodeType": "MemberAccess", + "referencedDeclaration": 15, + "src": "13792:57:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1975, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1968, + "name": "maxPoints", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1949, + "src": "13874:9:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "baseExpression": { + "id": 1969, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "13886:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1973, + "indexExpression": { + "baseExpression": { + "id": 1970, + "name": "organizationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 77, + "src": "13900:19:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1972, + "indexExpression": { + "id": 1971, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1952, + "src": "13920:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "13900:22:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "13886:37:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1974, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "13924:6:1", + "memberName": "points", + "nodeType": "MemberAccess", + "referencedDeclaration": 31, + "src": "13886:44:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "13874:56:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "13792:138:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1995, + "nodeType": "IfStatement", + "src": "13766:350:1", + "trueBody": { + "id": 1994, + "nodeType": "Block", + "src": "13950:166:1", + "statements": [ + { + "expression": { + "id": 1984, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1977, + "name": "maxPoints", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1949, + "src": "13973:9:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "expression": { + "baseExpression": { + "id": 1978, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "13985:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1982, + "indexExpression": { + "baseExpression": { + "id": 1979, + "name": "organizationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 77, + "src": "13999:19:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1981, + "indexExpression": { + "id": 1980, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1952, + "src": "14019:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "13999:22:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "13985:37:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1983, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "14023:6:1", + "memberName": "points", + "nodeType": "MemberAccess", + "referencedDeclaration": 31, + "src": "13985:44:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "13973:56:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1985, + "nodeType": "ExpressionStatement", + "src": "13973:56:1" + }, + { + "expression": { + "arguments": [ + { + "baseExpression": { + "id": 1989, + "name": "organizationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 77, + "src": "14073:19:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1991, + "indexExpression": { + "id": 1990, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1952, + "src": "14093:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "14073:22:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 1986, + "name": "maxPointAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 83, + "src": "14052:15:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1988, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "14068:4:1", + "memberName": "push", + "nodeType": "MemberAccess", + "src": "14052:20:1", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$_t_address_$returns$__$bound_to$_t_array$_t_address_$dyn_storage_ptr_$", + "typeString": "function (address[] storage pointer,address)" + } + }, + "id": 1992, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14052:44:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1993, + "nodeType": "ExpressionStatement", + "src": "14052:44:1" + } + ] + } + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1958, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1955, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1952, + "src": "13710:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 1956, + "name": "organizationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 77, + "src": "13714:19:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1957, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "13734:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "13714:26:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "13710:30:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1997, + "initializationExpression": { + "assignments": [ + 1952 + ], + "declarations": [ + { + "constant": false, + "id": 1952, + "mutability": "mutable", + "name": "i", + "nameLocation": "13703:1:1", + "nodeType": "VariableDeclaration", + "scope": 1997, + "src": "13695:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1951, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "13695:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1954, + "initialValue": { + "hexValue": "30", + "id": 1953, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13707:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "13695:13:1" + }, + "loopExpression": { + "expression": { + "id": 1960, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "13742:3:1", + "subExpression": { + "id": 1959, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1952, + "src": "13742:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1961, + "nodeType": "ExpressionStatement", + "src": "13742:3:1" + }, + "nodeType": "ForStatement", + "src": "13690:441:1" + }, + { + "body": { + "id": 2009, + "nodeType": "Block", + "src": "14200:121:1", + "statements": [] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2005, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2002, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1999, + "src": "14167:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 2003, + "name": "maxPointAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 83, + "src": "14171:15:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 2004, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "14187:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "14171:22:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "14167:26:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2010, + "initializationExpression": { + "assignments": [ + 1999 + ], + "declarations": [ + { + "constant": false, + "id": 1999, + "mutability": "mutable", + "name": "i", + "nameLocation": "14160:1:1", + "nodeType": "VariableDeclaration", + "scope": 2010, + "src": "14152:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1998, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14152:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2001, + "initialValue": { + "hexValue": "30", + "id": 2000, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14164:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "14152:13:1" + }, + "loopExpression": { + "expression": { + "id": 2007, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "14195:3:1", + "subExpression": { + "id": 2006, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1999, + "src": "14195:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2008, + "nodeType": "ExpressionStatement", + "src": "14195:3:1" + }, + "nodeType": "ForStatement", + "src": "14147:174:1" + }, + { + "assignments": [ + 2012 + ], + "declarations": [ + { + "constant": false, + "id": 2012, + "mutability": "mutable", + "name": "loopTime", + "nameLocation": "14345:8:1", + "nodeType": "VariableDeclaration", + "scope": 2033, + "src": "14337:16:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2011, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14337:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2015, + "initialValue": { + "expression": { + "id": 2013, + "name": "maxPointAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 83, + "src": "14356:15:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 2014, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "14372:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "14356:22:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "14337:41:1" + }, + { + "body": { + "id": 2031, + "nodeType": "Block", + "src": "14432:56:1", + "statements": [ + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 2026, + "name": "maxPointAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 83, + "src": "14451:15:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 2028, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "14467:3:1", + "memberName": "pop", + "nodeType": "MemberAccess", + "src": "14451:19:1", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypop_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$returns$__$bound_to$_t_array$_t_address_$dyn_storage_ptr_$", + "typeString": "function (address[] storage pointer)" + } + }, + "id": 2029, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14451:21:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2030, + "nodeType": "ExpressionStatement", + "src": "14451:21:1" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2022, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2020, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2017, + "src": "14413:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 2021, + "name": "loopTime", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2012, + "src": "14417:8:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "14413:12:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2032, + "initializationExpression": { + "assignments": [ + 2017 + ], + "declarations": [ + { + "constant": false, + "id": 2017, + "mutability": "mutable", + "name": "i", + "nameLocation": "14406:1:1", + "nodeType": "VariableDeclaration", + "scope": 2032, + "src": "14398:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2016, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14398:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2019, + "initialValue": { + "hexValue": "30", + "id": 2018, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14410:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "14398:13:1" + }, + "loopExpression": { + "expression": { + "id": 2024, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "14427:3:1", + "subExpression": { + "id": 2023, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2017, + "src": "14427:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2025, + "nodeType": "ExpressionStatement", + "src": "14427:3:1" + }, + "nodeType": "ForStatement", + "src": "14393:95:1" + } + ] + } + } + ] + }, + "functionSelector": "4438d4b0", + "id": 2036, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "RemoveCharityIfFinancialReportFraud", + "nameLocation": "13350:35:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1923, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1922, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "13394:11:1", + "nodeType": "VariableDeclaration", + "scope": 2036, + "src": "13386:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1921, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "13386:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "13385:21:1" + }, + "returnParameters": { + "id": 1924, + "nodeType": "ParameterList", + "parameters": [], + "src": "13414:0:1" + }, + "scope": 2045, + "src": "13341:1165:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 2039, + "nodeType": "Block", + "src": "14599:2:1", + "statements": [] + }, + "id": 2040, + "implemented": true, + "kind": "receive", + "modifiers": [], + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2037, + "nodeType": "ParameterList", + "parameters": [], + "src": "14579:2:1" + }, + "returnParameters": { + "id": 2038, + "nodeType": "ParameterList", + "parameters": [], + "src": "14599:0:1" + }, + "scope": 2045, + "src": "14572:29:1", + "stateMutability": "payable", + "virtual": false, + "visibility": "external" + }, + { + "body": { + "id": 2043, + "nodeType": "Block", + "src": "14700:2:1", + "statements": [] + }, + "id": 2044, + "implemented": true, + "kind": "fallback", + "modifiers": [], + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2041, + "nodeType": "ParameterList", + "parameters": [], + "src": "14680:2:1" + }, + "returnParameters": { + "id": 2042, + "nodeType": "ParameterList", + "parameters": [], + "src": "14700:0:1" + }, + "scope": 2045, + "src": "14672:30:1", + "stateMutability": "payable", + "virtual": false, + "visibility": "external" + } + ], + "scope": 2046, + "src": "96:14609:1", + "usedErrors": [] + } + ], + "src": "40:14667:1" + }, + "id": 1 + } + } +} \ No newline at end of file diff --git a/bin/hardhat/contracts/OrgOperation.abi b/bin/hardhat/contracts/OrgOperation.abi new file mode 100644 index 0000000..854fa08 --- /dev/null +++ b/bin/hardhat/contracts/OrgOperation.abi @@ -0,0 +1 @@ +[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"stateMutability":"payable","type":"fallback"},{"inputs":[{"internalType":"address","name":"org_address","type":"address"}],"name":"RemoveCharityIfFinancialReportFraud","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"org_address","type":"address"}],"name":"RemoveCharityIfFraud","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"admin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"changeIsStakedPaid","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"org_address","type":"address"}],"name":"checkFinancialReportStatus","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"org_address","type":"address"}],"name":"checkIfDownvoted","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"org_address","type":"address"}],"name":"checkIfUpvoted","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"org_address","type":"address"}],"name":"checkVerificationStatus","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"org_address","type":"address"}],"name":"checkViolationStatus","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"org_addr","type":"address"}],"name":"countOfDownvotes","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"org_addr","type":"address"}],"name":"countOfUpvotes","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"org_addr","type":"address"}],"name":"countOfViews","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"cutStakeOfNotVoted","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"org_address","type":"address"},{"internalType":"bool","name":"category","type":"bool"}],"name":"distributeStake","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"org_addr","type":"address"},{"internalType":"uint256","name":"current_time","type":"uint256"}],"name":"downVote","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"emptyListOrganization","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"org_address","type":"address"}],"name":"emptyNotVotedArray","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"isStaked","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isVerified","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"org_address","type":"address"}],"name":"markAsVerified","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"org_address","type":"address"}],"name":"notVoted","outputs":[{"internalType":"address[]","name":"","type":"address[]"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"org_address","type":"address"},{"internalType":"string","name":"cid","type":"string"},{"internalType":"uint256","name":"registration_time","type":"uint256"}],"name":"registerFinancialReport","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"organization_address","type":"address"},{"internalType":"string","name":"organization_name","type":"string"},{"internalType":"string","name":"document_cid","type":"string"},{"internalType":"string","name":"description","type":"string"},{"internalType":"uint256","name":"time","type":"uint256"}],"name":"registerOrg","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"organization_address","type":"address"},{"internalType":"string","name":"document_cid","type":"string"},{"internalType":"string","name":"description","type":"string"},{"internalType":"uint256","name":"registration_time","type":"uint256"}],"name":"registerViolation","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"org_address","type":"address"}],"name":"reportUpVote","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"org_address","type":"address"}],"name":"reportsDownVote","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"totalOrganizations","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"unverifiedOrganizationsList","outputs":[{"components":[{"internalType":"address","name":"org_address","type":"address"},{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"doc_cid","type":"string"},{"internalType":"uint256","name":"upvotes","type":"uint256"},{"internalType":"uint256","name":"downvotes","type":"uint256"},{"internalType":"uint256","name":"views","type":"uint256"},{"internalType":"bool","name":"verification_status","type":"bool"},{"internalType":"string","name":"desc","type":"string"},{"internalType":"uint256","name":"application_time","type":"uint256"}],"internalType":"struct OrgCreation.OrgDetails[]","name":"","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"org_addr","type":"address"},{"internalType":"uint256","name":"current_time","type":"uint256"}],"name":"upVote","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"org_address","type":"address"}],"name":"upvotedOnFinancialReport","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"org_address","type":"address"}],"name":"upvotedOnVerify","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"verifiedOrganizationsList","outputs":[{"components":[{"internalType":"address","name":"org_address","type":"address"},{"internalType":"string","name":"name","type":"string"},{"internalType":"string","name":"doc_cid","type":"string"},{"internalType":"uint256","name":"upvotes","type":"uint256"},{"internalType":"uint256","name":"downvotes","type":"uint256"},{"internalType":"uint256","name":"views","type":"uint256"},{"internalType":"bool","name":"verification_status","type":"bool"},{"internalType":"string","name":"desc","type":"string"},{"internalType":"uint256","name":"application_time","type":"uint256"}],"internalType":"struct OrgCreation.OrgDetails[]","name":"","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"org_address","type":"address"}],"name":"violationDownVote","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"org_address","type":"address"}],"name":"violationUpVote","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"org_addr","type":"address"},{"internalType":"uint256","name":"current_time","type":"uint256"}],"name":"votingDone","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}] \ No newline at end of file diff --git a/bin/hardhat/contracts/OrgOperation.bin b/bin/hardhat/contracts/OrgOperation.bin new file mode 100644 index 0000000..56b8a11 --- /dev/null +++ b/bin/hardhat/contracts/OrgOperation.bin @@ -0,0 +1 @@ +608060405260016008553480156200001657600080fd5b50600780546001600160a01b031916339081179091556706f05b59d3b20000600a556000600b908155604080518082018252600581526427bbb732b960d91b6020808301919091528251808401845260048152634e6f6e6560e01b8183015283518085019094529383526a2232b9b1b934b83a34b7b760a91b90830152620000a29392909142620000c5565b336000908152602081905260409020600601805460ff191660011790556200045e565b6001600160a01b0385166000908152602081905260409020600d015415620001335760405162461bcd60e51b815260206004820181905260248201527f4f7267616e697a6174696f6e20616c7265616479207265676973746572656421604482015260640160405180910390fd5b6001600160a01b038516600081815260208190526040902080546001600160a01b03191690911781556001016200016b858262000350565b506001600160a01b038516600090815260208190526040902060020162000193848262000350565b506001600160a01b0385166000908152602081905260409020600b01620001bb838262000350565b50620001cb816202a30062000432565b6001600160a01b0386166000908152602081905260409020600d0155620001f28562000267565b620001ff90600162000432565b6001600160a01b039095166000818152602081905260408120600501969096556004805460018101825596527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b90950180546001600160a01b03191690951790945550505050565b6001600160a01b0381166000908152602081905260408120600481015460039091015460095462000299919062000448565b620002a5919062000448565b92915050565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620002d657607f821691505b602082108103620002f757634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200034b57600081815260208120601f850160051c81016020861015620003265750805b601f850160051c820191505b81811015620003475782815560010162000332565b5050505b505050565b81516001600160401b038111156200036c576200036c620002ab565b62000384816200037d8454620002c1565b84620002fd565b602080601f831160018114620003bc5760008415620003a35750858301515b600019600386901b1c1916600185901b17855562000347565b600085815260208120601f198616915b82811015620003ed57888601518255948401946001909101908401620003cc565b50858210156200040c5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b80820180821115620002a557620002a56200041c565b81810381811115620002a557620002a56200041c565b613501806200046e6000396000f3fe6080604052600436106101ef5760003560e01c806380007e831161010c578063b7627e411161009a578063e3323aba1161006c578063e3323aba1461060c578063e75176b514610634578063ef2d584714610654578063f15c01dd14610674578063f851a4401461069457005b8063b7627e411461057e578063bc489aa9146105b7578063c9dfca10146105cc578063e2579114146105ec57005b8063a1b0ffe0116100de578063a1b0ffe0146104c2578063a52da85d146104f1578063ac64fcde1461051e578063ae51c2bc1461053e578063b5e801d51461055e57005b806380007e831461044557806380e179e91461046d5780638e3495191461048d5780638fc0ed2f146104ad57005b80634648df2a116101895780635cf9303f1161015b5780635cf9303f146103975780635d0161f1146103d057806362ae7ac7146103e55780636fc3911c14610405578063712062741461042557005b80634648df2a14610313578063482bd55b146103335780634cf5d5521461035357806355779b651461037757005b80632d80468d116101c25780632d80468d146102785780633e85747e146102a3578063440370fe146102d35780634438d4b0146102f357005b806237556e146101f85780630a54ecbf1461021857806314cb11e8146102385780631e4771801461025857005b366101f657005b005b34801561020457600080fd5b506101f6610213366004612ddc565b6106cc565b34801561022457600080fd5b506101f6610233366004612ddc565b61073c565b34801561024457600080fd5b506101f6610253366004612ddc565b610950565b34801561026457600080fd5b506101f6610273366004612dfe565b6109c0565b34801561028457600080fd5b5061028d610fdd565b60405161029a9190612e80565b60405180910390f35b3480156102af57600080fd5b506102c36102be366004612ddc565b61136d565b604051901515815260200161029a565b3480156102df57600080fd5b506101f66102ee366004613011565b61139a565b3480156102ff57600080fd5b506101f661030e366004612ddc565b611530565b34801561031f57600080fd5b506102c361032e3660046130b2565b611766565b34801561033f57600080fd5b506101f661034e3660046130dc565b61179b565b34801561035f57600080fd5b5061036960095481565b60405190815260200161029a565b34801561038357600080fd5b506101f6610392366004612ddc565b611834565b3480156103a357600080fd5b506103696103b2366004612ddc565b6001600160a01b031660009081526020819052604090206003015490565b3480156103dc57600080fd5b5061028d6118a4565b3480156103f157600080fd5b506101f6610400366004612ddc565b611bbb565b34801561041157600080fd5b506102c3610420366004612ddc565b611c20565b34801561043157600080fd5b506101f6610440366004612ddc565b611c6d565b34801561045157600080fd5b503360009081526020819052604090206006015460ff166102c3565b34801561047957600080fd5b506101f6610488366004612ddc565b611d23565b34801561049957600080fd5b506101f66104a8366004612ddc565b611dd9565b3480156104b957600080fd5b506101f6611f6f565b3480156104ce57600080fd5b506101f6336000908152602081905260409020600e01805460ff19166001179055565b3480156104fd57600080fd5b5061051161050c366004612ddc565b612052565b60405161029a9190613133565b34801561052a57600080fd5b506101f6610539366004613180565b6122c4565b34801561054a57600080fd5b506101f6610559366004612ddc565b61237f565b34801561056a57600080fd5b506101f6610579366004612ddc565b6125b6565b34801561058a57600080fd5b50610369610599366004612ddc565b6001600160a01b031660009081526020819052604090206004015490565b3480156105c357600080fd5b506101f6612622565b3480156105d857600080fd5b506102c36105e7366004612ddc565b6126ca565b3480156105f857600080fd5b506102c36106073660046130b2565b6126f7565b34801561061857600080fd5b50336000908152602081905260409020600e015460ff166102c3565b34801561064057600080fd5b5061036961064f366004612ddc565b6128d9565b34801561066057600080fd5b506101f661066f366004612ddc565b612913565b34801561068057600080fd5b506102c361068f3660046130b2565b612b25565b3480156106a057600080fd5b506007546106b4906001600160a01b031681565b6040516001600160a01b03909116815260200161029a565b6001600160a01b0381166000908152600d60205260409020600401546106f3906001613212565b6001600160a01b039091166000908152600d6020908152604082206004810193909355600690920180546001810182559082529190200180546001600160a01b03191633179055565b6001600160a01b0381166000908152600d60205260409020600b015460ff161561094d5760005b6001600160a01b03821660009081526020819052604090206007015481101561085557600a546001600160a01b03831660009081526020819052604081206007018054829190859081106107b9576107b9613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a01546107eb919061323b565b6001600160a01b038316600090815260208190526040812060070180548291908590811061081b5761081b613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a01558061084d8161324e565b915050610763565b5060005b6001600160a01b03821660009081526020819052604090206008015481101561094b57600a546001600160a01b03831660009081526020819052604081206008018054829190859081106108af576108af613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a01546108e19190613212565b6001600160a01b038316600090815260208190526040812060080180548291908590811061091157610911613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a0155806109438161324e565b915050610859565b505b50565b6001600160a01b0381166000908152600e6020526040902060020154610977906001613212565b6001600160a01b039091166000908152600e6020908152604082206002810193909355600490920180546001810182559082529190200180546001600160a01b03191633179055565b8015610cd2576000805b6001600160a01b038416600090815260208190526040902060030154811015610b91576001600160a01b0384166000908152602081905260408120600701805482919084908110610a1d57610a1d613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c0154610a50906001613212565b6001600160a01b0385166000908152602081905260408120600701805482919085908110610a8057610a80613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c0155600a54610ab59083613212565b9150600a54600080806000886001600160a01b03166001600160a01b031681526020019081526020016000206007018481548110610af557610af5613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a0154610b279190613212565b6001600160a01b0385166000908152602081905260408120600701805482919085908110610b5757610b57613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a015580610b898161324e565b9150506109ca565b506001600160a01b0383166000908152602081905260409020600a0154610bb990829061323b565b6001600160a01b0384166000908152602081905260408120600a01919091555b6001600160a01b038416600090815260208190526040902060040154811015610ccb576001600160a01b0384166000908152602081905260408120600801805460019291829185908110610c2f57610c2f613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c0154610c61919061323b565b6001600160a01b0385166000908152602081905260408120600801805482919085908110610c9157610c91613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c015580610cc38161324e565b915050610bd9565b505061094b565b6000805b6001600160a01b038416600090815260208190526040902060040154811015610e9d576001600160a01b0384166000908152602081905260408120600801805482919084908110610d2957610d29613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c0154610d5c906001613212565b6001600160a01b0385166000908152602081905260408120600801805482919085908110610d8c57610d8c613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c0155600a54610dc19083613212565b9150600a54600080806000886001600160a01b03166001600160a01b031681526020019081526020016000206008018481548110610e0157610e01613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a0154610e339190613212565b6001600160a01b0385166000908152602081905260408120600801805482919085908110610e6357610e63613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a015580610e958161324e565b915050610cd6565b506001600160a01b0383166000908152602081905260409020600a0154610ec590829061323b565b6001600160a01b0384166000908152602081905260408120600a01919091555b6001600160a01b038416600090815260208190526040902060030154811015610fd7576001600160a01b0384166000908152602081905260408120600701805460019291829185908110610f3b57610f3b613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c0154610f6d919061323b565b6001600160a01b0385166000908152602081905260408120600701805482919085908110610f9d57610f9d613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c015580610fcf8161324e565b915050610ee5565b50505050565b600454600854606091906000908190610ff6908461323b565b67ffffffffffffffff81111561100e5761100e612f6e565b60405190808252806020026020018201604052801561104757816020015b611034612cfc565b81526020019060019003908161102c5790505b50905060005b838110156113655760006004828154811061106a5761106a613225565b60009182526020808320909101546001600160a01b03168083529082905260409091206006015490915060ff166113525760408051610120810182526001600160a01b0380841660008181526020818152948120805490931684529081528084526001909101805491938301916110e090613267565b80601f016020809104026020016040519081016040528092919081815260200182805461110c90613267565b80156111595780601f1061112e57610100808354040283529160200191611159565b820191906000526020600020905b81548152906001019060200180831161113c57829003601f168201915b50505050508152602001600080856001600160a01b03166001600160a01b03168152602001908152602001600020600201805461119590613267565b80601f01602080910402602001604051908101604052809291908181526020018280546111c190613267565b801561120e5780601f106111e35761010080835404028352916020019161120e565b820191906000526020600020905b8154815290600101906020018083116111f157829003601f168201915b50505091835250506001600160a01b03841660008181526020818152604080832060038101548387015260048101549186019190915260058101546060860152600681015460ff161515608086015292825252600b01805460a09092019161127590613267565b80601f01602080910402602001604051908101604052809291908181526020018280546112a190613267565b80156112ee5780601f106112c3576101008083540402835291602001916112ee565b820191906000526020600020905b8154815290600101906020018083116112d157829003601f168201915b50505050508152602001600080856001600160a01b03166001600160a01b03168152602001908152602001600020600d015481525090508084868151811061133857611338613225565b602090810291909101015261134e600186613212565b9450505b508061135d8161324e565b91505061104d565b509392505050565b6001600160a01b031660009081526020818152604080832033845260090190915290205460ff1660011490565b6001600160a01b0385166000908152602081905260409020600d0154156114085760405162461bcd60e51b815260206004820181905260248201527f4f7267616e697a6174696f6e20616c726561647920726567697374657265642160448201526064015b60405180910390fd5b6001600160a01b038516600081815260208190526040902080546001600160a01b031916909117815560010161143e85826132ef565b506001600160a01b038516600090815260208190526040902060020161146484826132ef565b506001600160a01b0385166000908152602081905260409020600b0161148a83826132ef565b50611498816202a300613212565b6001600160a01b0386166000908152602081905260409020600d01556114bd856128d9565b6114c8906001613212565b6001600160a01b039095166000818152602081905260408120600501969096556004805460018101825596527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b90950180546001600160a01b03191690951790945550505050565b6001600160a01b0381166000908152600e602052604081206007015460ff161515900361094d576001600160a01b0381166000908152602081905260408120600601805460ff19169055600980546001929061158d90849061323b565b90915550506001600160a01b0381166000908152600260205260408120805460ff19169055805b6004548110156116f257600080600483815481106115d4576115d4613225565b60009182526020808320909101546001600160a01b0316835282019290925260400190206006015460ff16801561164757506000806004838154811061161c5761161c613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c015482105b156116e0576000806004838154811061166257611662613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c015460048054919350600691839081106116a4576116a4613225565b60009182526020808320909101548354600181018555938352912090910180546001600160a01b0319166001600160a01b039092169190911790555b806116ea8161324e565b9150506115b4565b5060005b600654811015611712578061170a8161324e565b9150506116f6565b5060065460005b81811015610fd7576006805480611732576117326133af565b600082815260209020810160001990810180546001600160a01b03191690550190558061175e8161324e565b915050611719565b6001600160a01b0382166000908152602081905260408120600d015482111561179157506001611795565b5060005b92915050565b6001600160a01b0383166000818152600e60209081526040822080546001600160a01b031916909317835560089092018054600181018255908252919020016117e483826132ef565b506001600160a01b0383166000908152600e602052604090206005018190556118108162069780613212565b6001600160a01b039093166000908152600e60205260409020600601929092555050565b6001600160a01b0381166000908152600d602052604090206003015461185b906001613212565b6001600160a01b039091166000908152600d6020908152604082206003810193909355600590920180546001810182559082529190200180546001600160a01b03191633179055565b60045460085460609190600090819067ffffffffffffffff8111156118cb576118cb612f6e565b60405190808252806020026020018201604052801561190457816020015b6118f1612cfc565b8152602001906001900390816118e95790505b50905060005b838110156113655760006004828154811061192757611927613225565b60009182526020808320909101546001600160a01b03168083529082905260409091206006015490915060ff1615611ba8576001600160a01b038082166000908152602081815260408083208151610120810190925280549094168152600184018054919283019161199890613267565b80601f01602080910402602001604051908101604052809291908181526020018280546119c490613267565b8015611a115780601f106119e657610100808354040283529160200191611a11565b820191906000526020600020905b8154815290600101906020018083116119f457829003601f168201915b50505050508152602001836002018054611a2a90613267565b80601f0160208091040260200160405190810160405280929190818152602001828054611a5690613267565b8015611aa35780601f10611a7857610100808354040283529160200191611aa3565b820191906000526020600020905b815481529060010190602001808311611a8657829003601f168201915b5050509183525050600384015460208201526004840154604082015260058401546060820152600684015460ff1615156080820152600b8401805460a090920191611aed90613267565b80601f0160208091040260200160405190810160405280929190818152602001828054611b1990613267565b8015611b665780601f10611b3b57610100808354040283529160200191611b66565b820191906000526020600020905b815481529060010190602001808311611b4957829003601f168201915b5050505050815260200183600d0154815250905080858781518110611b8d57611b8d613225565b6020908102919091010152611ba3600187613212565b955050505b5080611bb38161324e565b91505061190a565b6001600160a01b0381166000908152602081905260408120600601805460ff191660019081179091556009805491929091611bf7908490613212565b90915550506001600160a01b03166000908152600260205260409020805460ff19166001179055565b60006009546033611c3191906133c5565b6001600160a01b038316600090815260208190526040902060030154611c589060646133c5565b10611c6557506001919050565b506000919050565b6001600160a01b0381166000908152600d602052604081206004810154600390910154611c9a9190613212565b9050611ca78160336133c5565b6001600160a01b0383166000908152600d6020526040902060030154611cce9060646133c5565b10611cfe576001600160a01b0382166000908152600d60205260409020600b01805460ff1916600117905561094b565b506001600160a01b03166000908152600d60205260409020600b01805460ff19169055565b6001600160a01b0381166000908152600e602052604081206002810154600190910154611d509190613212565b9050611d5d8160336133c5565b6001600160a01b0383166000908152600e6020526040902060010154611d849060646133c5565b10611db4576001600160a01b0382166000908152600e60205260409020600701805460ff1916600117905561094b565b506001600160a01b03166000908152600e60205260409020600701805460ff19169055565b60055460005b81811015611e2c576005805480611df857611df86133af565b600082815260209020810160001990810180546001600160a01b031916905501905580611e248161324e565b915050611ddf565b5060005b6001600160a01b038316600090815260208190526040902060070154811015611ecb576001600160a01b03831660009081526020819052604081206007018054600391839185908110611e8557611e85613225565b6000918252602080832091909101546001600160a01b031683528201929092526040019020805460ff191691151591909117905580611ec38161324e565b915050611e30565b5060005b6001600160a01b038316600090815260208190526040902060080154811015611f6a576001600160a01b03831660009081526020819052604081206008018054600391839185908110611f2457611f24613225565b6000918252602080832091909101546001600160a01b031683528201929092526040019020805460ff191691151591909117905580611f628161324e565b915050611ecf565b505050565b600c5460005b8181101561094b57600c805480611f8e57611f8e6133af565b600082815260208120600f6000199093019283020180546001600160a01b031916815590611fbf6001830182612d53565b611fcd600283016000612d53565b600060038301819055600483018190556005830181905560068301805460ff19169055611ffe906007840190612d8d565b61200c600883016000612d8d565b600a820160009055600b820160006120249190612d53565b506000600c8201819055600d820155600e01805460ff1916905590558061204a8161324e565b915050611f75565b606060005b6001600160a01b0383166000908152602081905260409020600701548110156120fe57600160036000806000876001600160a01b03166001600160a01b0316815260200190815260200160002060070184815481106120b8576120b8613225565b6000918252602080832091909101546001600160a01b031683528201929092526040019020805460ff1916911515919091179055806120f68161324e565b915050612057565b5060005b6001600160a01b0383166000908152602081905260409020600801548110156121a957600160036000806000876001600160a01b03166001600160a01b03168152602001908152602001600020600801848154811061216357612163613225565b6000918252602080832091909101546001600160a01b031683528201929092526040019020805460ff1916911515919091179055806121a18161324e565b915050612102565b5060005b6004548110156122615760036000600483815481106121ce576121ce613225565b60009182526020808320909101546001600160a01b0316835282019290925260400181205460ff161515900361224f5760056004828154811061221357612213613225565b60009182526020808320909101548354600181018555938352912090910180546001600160a01b0319166001600160a01b039092169190911790555b806122598161324e565b9150506121ad565b5060058054806020026020016040519081016040528092919081815260200182805480156122b857602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831161229a575b50505050509050919050565b6001600160a01b0384166000818152600d6020526040902080546001600160a01b03191690911781556001016122fa84826132ef565b506001600160a01b0384166000908152600d6020526040902060020161232083826132ef565b506001600160a01b0384166000908152600d6020526040902060090181905561234c8162069780613212565b6001600160a01b0385166000908152600d60205260409020600a0155600b54612376906001613212565b600b5550505050565b6001600160a01b0381166000908152600d60205260409020600b015460ff16151560010361094d576001600160a01b0381166000908152602081905260408120600601805460ff1916905560098054600192906123dd90849061323b565b90915550506001600160a01b0381166000908152600260205260408120805460ff19169055805b600454811015612542576000806004838154811061242457612424613225565b60009182526020808320909101546001600160a01b0316835282019290925260400190206006015460ff16801561249757506000806004838154811061246c5761246c613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c015482105b1561253057600080600483815481106124b2576124b2613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c015460048054919350600691839081106124f4576124f4613225565b60009182526020808320909101548354600181018555938352912090910180546001600160a01b0319166001600160a01b039092169190911790555b8061253a8161324e565b915050612404565b5060005b600654811015612562578061255a8161324e565b915050612546565b5060065460005b81811015610fd7576006805480612582576125826133af565b600082815260209020810160001990810180546001600160a01b0319169055019055806125ae8161324e565b915050612569565b6001600160a01b0381166000908152600e602052604090206001908101546125dd91613212565b6001600160a01b039091166000908152600e60209081526040822060018082019490945560030180549384018155825290200180546001600160a01b03191633179055565b60005b60055481101561094d57600a546000806005848154811061264857612648613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a015461267a919061323b565b6000806005848154811061269057612690613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a0155806126c28161324e565b915050612625565b6001600160a01b031660009081526020818152604080832033845260090190915290205460ff1660021490565b6001600160a01b0382166000908152602081905260408120600d0154839082036127335760405162461bcd60e51b81526004016113ff906133dc565b6001600160a01b03811660009081526020819052604090206006015460ff161561279f5760405162461bcd60e51b815260206004820152601e60248201527f4f7267616e697a6174696f6e20616c726561647920766572696669656421000060448201526064016113ff565b336000908152602081905260409020600d0154158015906127d257503360009081526020819052604090206006015460ff165b6127ee5760405162461bcd60e51b81526004016113ff90613420565b6127f7816126ca565b15801561280a57506128088161136d565b155b6128265760405162461bcd60e51b81526004016113ff9061347d565b6001600160a01b0384166000908152602081905260408120600301805460019290612852908490613212565b90915550506001600160a01b0384166000908152602081815260408083206007810180546001810182559085528385200180546001600160a01b0319163390811790915584526009019091529020805460ff191660021790556128b58484611766565b156128cd576128c384611c20565b50600191506128d2565b600091505b5092915050565b6001600160a01b03811660009081526020819052604081206004810154600390910154600954612909919061323b565b611795919061323b565b6001600160a01b0381166000908152600e602052604081206007015460ff161515900361094d5760005b6001600160a01b038216600090815260208190526040902060070154811015612a2f57600a546001600160a01b038316600090815260208190526040812060070180548291908590811061299357612993613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a01546129c5919061323b565b6001600160a01b03831660009081526020819052604081206007018054829190859081106129f5576129f5613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a015580612a278161324e565b91505061293d565b5060005b6001600160a01b03821660009081526020819052604090206008015481101561094b57600a546001600160a01b0383166000908152602081905260408120600801805482919085908110612a8957612a89613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a0154612abb9190613212565b6001600160a01b0383166000908152602081905260408120600801805482919085908110612aeb57612aeb613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a015580612b1d8161324e565b915050612a33565b6001600160a01b0382166000908152602081905260408120600d015483908203612b615760405162461bcd60e51b81526004016113ff906133dc565b6001600160a01b03811660009081526020819052604090206006015460ff1615612bcd5760405162461bcd60e51b815260206004820152601e60248201527f4f7267616e697a6174696f6e20616c726561647920766572696669656421000060448201526064016113ff565b336000908152602081905260409020600d015415801590612c0057503360009081526020819052604090206006015460ff165b612c1c5760405162461bcd60e51b81526004016113ff90613420565b612c25816126ca565b158015612c385750612c368161136d565b155b612c545760405162461bcd60e51b81526004016113ff9061347d565b6001600160a01b0384166000908152602081905260408120600401805460019290612c80908490613212565b90915550506001600160a01b038416600090815260208181526040808320600881018054600181810183559186528486200180546001600160a01b0319163390811790915585526009909101909252909120805460ff19169091179055612ce78484611766565b156128cd57612cf584611c20565b91506128d2565b60405180610120016040528060006001600160a01b03168152602001606081526020016060815260200160008152602001600081526020016000815260200160001515815260200160608152602001600081525090565b508054612d5f90613267565b6000825580601f10612d6f575050565b601f01602090049060005260206000209081019061094d9190612da7565b508054600082559060005260206000209081019061094d91905b5b80821115612dbc5760008155600101612da8565b5090565b80356001600160a01b0381168114612dd757600080fd5b919050565b600060208284031215612dee57600080fd5b612df782612dc0565b9392505050565b60008060408385031215612e1157600080fd5b612e1a83612dc0565b915060208301358015158114612e2f57600080fd5b809150509250929050565b6000815180845260005b81811015612e6057602081850181015186830182015201612e44565b506000602082860101526020601f19601f83011685010191505092915050565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b83811015612f6057888303603f19018552815180516001600160a01b0316845261012088820151818a870152612edf82870182612e3a565b9150508782015185820389870152612ef78282612e3a565b606084810151908801526080808501519088015260a0808501519088015260c08085015115159088015260e080850151888303828a01529193509150612f3d8382612e3a565b610100948501519790940196909652505094870194925090860190600101612ea7565b509098975050505050505050565b634e487b7160e01b600052604160045260246000fd5b600082601f830112612f9557600080fd5b813567ffffffffffffffff80821115612fb057612fb0612f6e565b604051601f8301601f19908116603f01168101908282118183101715612fd857612fd8612f6e565b81604052838152866020858801011115612ff157600080fd5b836020870160208301376000602085830101528094505050505092915050565b600080600080600060a0868803121561302957600080fd5b61303286612dc0565b9450602086013567ffffffffffffffff8082111561304f57600080fd5b61305b89838a01612f84565b9550604088013591508082111561307157600080fd5b61307d89838a01612f84565b9450606088013591508082111561309357600080fd5b506130a088828901612f84565b95989497509295608001359392505050565b600080604083850312156130c557600080fd5b6130ce83612dc0565b946020939093013593505050565b6000806000606084860312156130f157600080fd5b6130fa84612dc0565b9250602084013567ffffffffffffffff81111561311657600080fd5b61312286828701612f84565b925050604084013590509250925092565b6020808252825182820181905260009190848201906040850190845b818110156131745783516001600160a01b03168352928401929184019160010161314f565b50909695505050505050565b6000806000806080858703121561319657600080fd5b61319f85612dc0565b9350602085013567ffffffffffffffff808211156131bc57600080fd5b6131c888838901612f84565b945060408701359150808211156131de57600080fd5b506131eb87828801612f84565b949793965093946060013593505050565b634e487b7160e01b600052601160045260246000fd5b80820180821115611795576117956131fc565b634e487b7160e01b600052603260045260246000fd5b81810381811115611795576117956131fc565b600060018201613260576132606131fc565b5060010190565b600181811c9082168061327b57607f821691505b60208210810361329b57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115611f6a57600081815260208120601f850160051c810160208610156132c85750805b601f850160051c820191505b818110156132e7578281556001016132d4565b505050505050565b815167ffffffffffffffff81111561330957613309612f6e565b61331d816133178454613267565b846132a1565b602080601f831160018114613352576000841561333a5750858301515b600019600386901b1c1916600185901b1785556132e7565b600085815260208120601f198616915b8281101561338157888601518255948401946001909101908401613362565b508582101561339f5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052603160045260246000fd5b8082028115828204841417611795576117956131fc565b60208082526024908201527f4f7267616e697a6174696f6e206164647265737320646f6573206e6f742065786040820152636973742160e01b606082015260800190565b6020808252603a908201527f566f746572206f7267616e697a6174696f6e206973206e6f742076657269666960408201527f65642c206e6f74207065726d697474656420746f20766f746521000000000000606082015260800190565b6020808252602e908201527f566f746572206f7267616e697a6174696f6e2063616e6e6f7420766f7465206d60408201526d6f7265207468616e206f6e63652160901b60608201526080019056fea2646970667358221220daa6af178e1b36d9681b3304da3c4ee706ca1b3f4494f3802e4d990e3091fa3564736f6c63430008110033 \ No newline at end of file diff --git a/bin/hardhat/contracts/OrgOperation.json b/bin/hardhat/contracts/OrgOperation.json new file mode 100644 index 0000000..cb76cc2 --- /dev/null +++ b/bin/hardhat/contracts/OrgOperation.json @@ -0,0 +1,16375 @@ +{ + "contractName": "OrgOperation", + "abi": [ + { + "inputs": [], + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "stateMutability": "payable", + "type": "fallback" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "RemoveCharityIfFinancialReportFraud", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "RemoveCharityIfFraud", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "admin", + "outputs": [ + { + "internalType": "address", + "name": "", + "type": "address" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "changeIsStakedPaid", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "checkFinancialReportStatus", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "checkIfDownvoted", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "checkIfUpvoted", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "checkVerificationStatus", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "checkViolationStatus", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + } + ], + "name": "countOfDownvotes", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + } + ], + "name": "countOfUpvotes", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + } + ], + "name": "countOfViews", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "cutStakeOfNotVoted", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + }, + { + "internalType": "bool", + "name": "category", + "type": "bool" + } + ], + "name": "distributeStake", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + }, + { + "internalType": "uint256", + "name": "current_time", + "type": "uint256" + } + ], + "name": "downVote", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "emptyListOrganization", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "emptyNotVotedArray", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "isStaked", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "isVerified", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "markAsVerified", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "notVoted", + "outputs": [ + { + "internalType": "address[]", + "name": "", + "type": "address[]" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + }, + { + "internalType": "string", + "name": "cid", + "type": "string" + }, + { + "internalType": "uint256", + "name": "registration_time", + "type": "uint256" + } + ], + "name": "registerFinancialReport", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "organization_address", + "type": "address" + }, + { + "internalType": "string", + "name": "organization_name", + "type": "string" + }, + { + "internalType": "string", + "name": "document_cid", + "type": "string" + }, + { + "internalType": "string", + "name": "description", + "type": "string" + }, + { + "internalType": "uint256", + "name": "time", + "type": "uint256" + } + ], + "name": "registerOrg", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "organization_address", + "type": "address" + }, + { + "internalType": "string", + "name": "document_cid", + "type": "string" + }, + { + "internalType": "string", + "name": "description", + "type": "string" + }, + { + "internalType": "uint256", + "name": "registration_time", + "type": "uint256" + } + ], + "name": "registerViolation", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "reportUpVote", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "reportsDownVote", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "totalOrganizations", + "outputs": [ + { + "internalType": "uint256", + "name": "", + "type": "uint256" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [], + "name": "unverifiedOrganizationsList", + "outputs": [ + { + "components": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + }, + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "doc_cid", + "type": "string" + }, + { + "internalType": "uint256", + "name": "upvotes", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "downvotes", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "views", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "verification_status", + "type": "bool" + }, + { + "internalType": "string", + "name": "desc", + "type": "string" + }, + { + "internalType": "uint256", + "name": "application_time", + "type": "uint256" + } + ], + "internalType": "struct OrgCreation.OrgDetails[]", + "name": "", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + }, + { + "internalType": "uint256", + "name": "current_time", + "type": "uint256" + } + ], + "name": "upVote", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "upvotedOnFinancialReport", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "upvotedOnVerify", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [], + "name": "verifiedOrganizationsList", + "outputs": [ + { + "components": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + }, + { + "internalType": "string", + "name": "name", + "type": "string" + }, + { + "internalType": "string", + "name": "doc_cid", + "type": "string" + }, + { + "internalType": "uint256", + "name": "upvotes", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "downvotes", + "type": "uint256" + }, + { + "internalType": "uint256", + "name": "views", + "type": "uint256" + }, + { + "internalType": "bool", + "name": "verification_status", + "type": "bool" + }, + { + "internalType": "string", + "name": "desc", + "type": "string" + }, + { + "internalType": "uint256", + "name": "application_time", + "type": "uint256" + } + ], + "internalType": "struct OrgCreation.OrgDetails[]", + "name": "", + "type": "tuple[]" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "violationDownVote", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_address", + "type": "address" + } + ], + "name": "violationUpVote", + "outputs": [], + "stateMutability": "nonpayable", + "type": "function" + }, + { + "inputs": [ + { + "internalType": "address", + "name": "org_addr", + "type": "address" + }, + { + "internalType": "uint256", + "name": "current_time", + "type": "uint256" + } + ], + "name": "votingDone", + "outputs": [ + { + "internalType": "bool", + "name": "", + "type": "bool" + } + ], + "stateMutability": "view", + "type": "function" + }, + { + "stateMutability": "payable", + "type": "receive" + } + ], + "metadata": "{\"compiler\":{\"version\":\"0.8.17+commit.8df45f5f\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"RemoveCharityIfFinancialReportFraud\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"RemoveCharityIfFraud\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"admin\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"changeIsStakedPaid\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"checkFinancialReportStatus\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"checkIfDownvoted\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"checkIfUpvoted\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"checkVerificationStatus\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"checkViolationStatus\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_addr\",\"type\":\"address\"}],\"name\":\"countOfDownvotes\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_addr\",\"type\":\"address\"}],\"name\":\"countOfUpvotes\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_addr\",\"type\":\"address\"}],\"name\":\"countOfViews\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"cutStakeOfNotVoted\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"},{\"internalType\":\"bool\",\"name\":\"category\",\"type\":\"bool\"}],\"name\":\"distributeStake\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_addr\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"current_time\",\"type\":\"uint256\"}],\"name\":\"downVote\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"emptyListOrganization\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"emptyNotVotedArray\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isStaked\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"isVerified\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"markAsVerified\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"notVoted\",\"outputs\":[{\"internalType\":\"address[]\",\"name\":\"\",\"type\":\"address[]\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"cid\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"registration_time\",\"type\":\"uint256\"}],\"name\":\"registerFinancialReport\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"organization_address\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"organization_name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"document_cid\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"description\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"time\",\"type\":\"uint256\"}],\"name\":\"registerOrg\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"organization_address\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"document_cid\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"description\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"registration_time\",\"type\":\"uint256\"}],\"name\":\"registerViolation\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"reportUpVote\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"reportsDownVote\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"totalOrganizations\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"unverifiedOrganizationsList\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"doc_cid\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"upvotes\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"downvotes\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"views\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"verification_status\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"desc\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"application_time\",\"type\":\"uint256\"}],\"internalType\":\"struct OrgCreation.OrgDetails[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_addr\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"current_time\",\"type\":\"uint256\"}],\"name\":\"upVote\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"upvotedOnFinancialReport\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"upvotedOnVerify\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"verifiedOrganizationsList\",\"outputs\":[{\"components\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"},{\"internalType\":\"string\",\"name\":\"name\",\"type\":\"string\"},{\"internalType\":\"string\",\"name\":\"doc_cid\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"upvotes\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"downvotes\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"views\",\"type\":\"uint256\"},{\"internalType\":\"bool\",\"name\":\"verification_status\",\"type\":\"bool\"},{\"internalType\":\"string\",\"name\":\"desc\",\"type\":\"string\"},{\"internalType\":\"uint256\",\"name\":\"application_time\",\"type\":\"uint256\"}],\"internalType\":\"struct OrgCreation.OrgDetails[]\",\"name\":\"\",\"type\":\"tuple[]\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"violationDownVote\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_address\",\"type\":\"address\"}],\"name\":\"violationUpVote\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"org_addr\",\"type\":\"address\"},{\"internalType\":\"uint256\",\"name\":\"current_time\",\"type\":\"uint256\"}],\"name\":\"votingDone\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"stateMutability\":\"payable\",\"type\":\"receive\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol\":\"OrgOperation\"},\"evmVersion\":\"london\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":200},\"remappings\":[]},\"sources\":{\"c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol\":{\"keccak256\":\"0xdcf694b024d1a1255aacfa75604c32dd739639437ac64a3f894d050574d09e3c\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://1dc8b0de720c0d4666c6194d912b2db2afb0d94b26bc96e2fc61c03378fb4863\",\"dweb:/ipfs/QmXr9bM4FCXd6CxWyw3Jhxv7kugvK1hfMZpiG1HP3JYjeq\"]},\"c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol\":{\"keccak256\":\"0xdb52d6debab963822324052d360a47f0cc0102cbc6a46cbfa38ba7d613d482ff\",\"license\":\"UNLICENSED\",\"urls\":[\"bzz-raw://2e6239cf5f40bc233b2d1432f1c553c36a3f17d5373cee21b3a51fb832294e33\",\"dweb:/ipfs/QmTWqjHLM2NAtWA8wYa4Kkq418epgkpWdTYPWy6FhVevYZ\"]}},\"version\":1}", + "bytecode": "608060405260016008553480156200001657600080fd5b50600780546001600160a01b031916339081179091556706f05b59d3b20000600a556000600b908155604080518082018252600581526427bbb732b960d91b6020808301919091528251808401845260048152634e6f6e6560e01b8183015283518085019094529383526a2232b9b1b934b83a34b7b760a91b90830152620000a29392909142620000c5565b336000908152602081905260409020600601805460ff191660011790556200045e565b6001600160a01b0385166000908152602081905260409020600d015415620001335760405162461bcd60e51b815260206004820181905260248201527f4f7267616e697a6174696f6e20616c7265616479207265676973746572656421604482015260640160405180910390fd5b6001600160a01b038516600081815260208190526040902080546001600160a01b03191690911781556001016200016b858262000350565b506001600160a01b038516600090815260208190526040902060020162000193848262000350565b506001600160a01b0385166000908152602081905260409020600b01620001bb838262000350565b50620001cb816202a30062000432565b6001600160a01b0386166000908152602081905260409020600d0155620001f28562000267565b620001ff90600162000432565b6001600160a01b039095166000818152602081905260408120600501969096556004805460018101825596527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b90950180546001600160a01b03191690951790945550505050565b6001600160a01b0381166000908152602081905260408120600481015460039091015460095462000299919062000448565b620002a5919062000448565b92915050565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620002d657607f821691505b602082108103620002f757634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200034b57600081815260208120601f850160051c81016020861015620003265750805b601f850160051c820191505b81811015620003475782815560010162000332565b5050505b505050565b81516001600160401b038111156200036c576200036c620002ab565b62000384816200037d8454620002c1565b84620002fd565b602080601f831160018114620003bc5760008415620003a35750858301515b600019600386901b1c1916600185901b17855562000347565b600085815260208120601f198616915b82811015620003ed57888601518255948401946001909101908401620003cc565b50858210156200040c5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b80820180821115620002a557620002a56200041c565b81810381811115620002a557620002a56200041c565b613501806200046e6000396000f3fe6080604052600436106101ef5760003560e01c806380007e831161010c578063b7627e411161009a578063e3323aba1161006c578063e3323aba1461060c578063e75176b514610634578063ef2d584714610654578063f15c01dd14610674578063f851a4401461069457005b8063b7627e411461057e578063bc489aa9146105b7578063c9dfca10146105cc578063e2579114146105ec57005b8063a1b0ffe0116100de578063a1b0ffe0146104c2578063a52da85d146104f1578063ac64fcde1461051e578063ae51c2bc1461053e578063b5e801d51461055e57005b806380007e831461044557806380e179e91461046d5780638e3495191461048d5780638fc0ed2f146104ad57005b80634648df2a116101895780635cf9303f1161015b5780635cf9303f146103975780635d0161f1146103d057806362ae7ac7146103e55780636fc3911c14610405578063712062741461042557005b80634648df2a14610313578063482bd55b146103335780634cf5d5521461035357806355779b651461037757005b80632d80468d116101c25780632d80468d146102785780633e85747e146102a3578063440370fe146102d35780634438d4b0146102f357005b806237556e146101f85780630a54ecbf1461021857806314cb11e8146102385780631e4771801461025857005b366101f657005b005b34801561020457600080fd5b506101f6610213366004612ddc565b6106cc565b34801561022457600080fd5b506101f6610233366004612ddc565b61073c565b34801561024457600080fd5b506101f6610253366004612ddc565b610950565b34801561026457600080fd5b506101f6610273366004612dfe565b6109c0565b34801561028457600080fd5b5061028d610fdd565b60405161029a9190612e80565b60405180910390f35b3480156102af57600080fd5b506102c36102be366004612ddc565b61136d565b604051901515815260200161029a565b3480156102df57600080fd5b506101f66102ee366004613011565b61139a565b3480156102ff57600080fd5b506101f661030e366004612ddc565b611530565b34801561031f57600080fd5b506102c361032e3660046130b2565b611766565b34801561033f57600080fd5b506101f661034e3660046130dc565b61179b565b34801561035f57600080fd5b5061036960095481565b60405190815260200161029a565b34801561038357600080fd5b506101f6610392366004612ddc565b611834565b3480156103a357600080fd5b506103696103b2366004612ddc565b6001600160a01b031660009081526020819052604090206003015490565b3480156103dc57600080fd5b5061028d6118a4565b3480156103f157600080fd5b506101f6610400366004612ddc565b611bbb565b34801561041157600080fd5b506102c3610420366004612ddc565b611c20565b34801561043157600080fd5b506101f6610440366004612ddc565b611c6d565b34801561045157600080fd5b503360009081526020819052604090206006015460ff166102c3565b34801561047957600080fd5b506101f6610488366004612ddc565b611d23565b34801561049957600080fd5b506101f66104a8366004612ddc565b611dd9565b3480156104b957600080fd5b506101f6611f6f565b3480156104ce57600080fd5b506101f6336000908152602081905260409020600e01805460ff19166001179055565b3480156104fd57600080fd5b5061051161050c366004612ddc565b612052565b60405161029a9190613133565b34801561052a57600080fd5b506101f6610539366004613180565b6122c4565b34801561054a57600080fd5b506101f6610559366004612ddc565b61237f565b34801561056a57600080fd5b506101f6610579366004612ddc565b6125b6565b34801561058a57600080fd5b50610369610599366004612ddc565b6001600160a01b031660009081526020819052604090206004015490565b3480156105c357600080fd5b506101f6612622565b3480156105d857600080fd5b506102c36105e7366004612ddc565b6126ca565b3480156105f857600080fd5b506102c36106073660046130b2565b6126f7565b34801561061857600080fd5b50336000908152602081905260409020600e015460ff166102c3565b34801561064057600080fd5b5061036961064f366004612ddc565b6128d9565b34801561066057600080fd5b506101f661066f366004612ddc565b612913565b34801561068057600080fd5b506102c361068f3660046130b2565b612b25565b3480156106a057600080fd5b506007546106b4906001600160a01b031681565b6040516001600160a01b03909116815260200161029a565b6001600160a01b0381166000908152600d60205260409020600401546106f3906001613212565b6001600160a01b039091166000908152600d6020908152604082206004810193909355600690920180546001810182559082529190200180546001600160a01b03191633179055565b6001600160a01b0381166000908152600d60205260409020600b015460ff161561094d5760005b6001600160a01b03821660009081526020819052604090206007015481101561085557600a546001600160a01b03831660009081526020819052604081206007018054829190859081106107b9576107b9613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a01546107eb919061323b565b6001600160a01b038316600090815260208190526040812060070180548291908590811061081b5761081b613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a01558061084d8161324e565b915050610763565b5060005b6001600160a01b03821660009081526020819052604090206008015481101561094b57600a546001600160a01b03831660009081526020819052604081206008018054829190859081106108af576108af613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a01546108e19190613212565b6001600160a01b038316600090815260208190526040812060080180548291908590811061091157610911613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a0155806109438161324e565b915050610859565b505b50565b6001600160a01b0381166000908152600e6020526040902060020154610977906001613212565b6001600160a01b039091166000908152600e6020908152604082206002810193909355600490920180546001810182559082529190200180546001600160a01b03191633179055565b8015610cd2576000805b6001600160a01b038416600090815260208190526040902060030154811015610b91576001600160a01b0384166000908152602081905260408120600701805482919084908110610a1d57610a1d613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c0154610a50906001613212565b6001600160a01b0385166000908152602081905260408120600701805482919085908110610a8057610a80613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c0155600a54610ab59083613212565b9150600a54600080806000886001600160a01b03166001600160a01b031681526020019081526020016000206007018481548110610af557610af5613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a0154610b279190613212565b6001600160a01b0385166000908152602081905260408120600701805482919085908110610b5757610b57613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a015580610b898161324e565b9150506109ca565b506001600160a01b0383166000908152602081905260409020600a0154610bb990829061323b565b6001600160a01b0384166000908152602081905260408120600a01919091555b6001600160a01b038416600090815260208190526040902060040154811015610ccb576001600160a01b0384166000908152602081905260408120600801805460019291829185908110610c2f57610c2f613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c0154610c61919061323b565b6001600160a01b0385166000908152602081905260408120600801805482919085908110610c9157610c91613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c015580610cc38161324e565b915050610bd9565b505061094b565b6000805b6001600160a01b038416600090815260208190526040902060040154811015610e9d576001600160a01b0384166000908152602081905260408120600801805482919084908110610d2957610d29613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c0154610d5c906001613212565b6001600160a01b0385166000908152602081905260408120600801805482919085908110610d8c57610d8c613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c0155600a54610dc19083613212565b9150600a54600080806000886001600160a01b03166001600160a01b031681526020019081526020016000206008018481548110610e0157610e01613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a0154610e339190613212565b6001600160a01b0385166000908152602081905260408120600801805482919085908110610e6357610e63613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a015580610e958161324e565b915050610cd6565b506001600160a01b0383166000908152602081905260409020600a0154610ec590829061323b565b6001600160a01b0384166000908152602081905260408120600a01919091555b6001600160a01b038416600090815260208190526040902060030154811015610fd7576001600160a01b0384166000908152602081905260408120600701805460019291829185908110610f3b57610f3b613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c0154610f6d919061323b565b6001600160a01b0385166000908152602081905260408120600701805482919085908110610f9d57610f9d613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c015580610fcf8161324e565b915050610ee5565b50505050565b600454600854606091906000908190610ff6908461323b565b67ffffffffffffffff81111561100e5761100e612f6e565b60405190808252806020026020018201604052801561104757816020015b611034612cfc565b81526020019060019003908161102c5790505b50905060005b838110156113655760006004828154811061106a5761106a613225565b60009182526020808320909101546001600160a01b03168083529082905260409091206006015490915060ff166113525760408051610120810182526001600160a01b0380841660008181526020818152948120805490931684529081528084526001909101805491938301916110e090613267565b80601f016020809104026020016040519081016040528092919081815260200182805461110c90613267565b80156111595780601f1061112e57610100808354040283529160200191611159565b820191906000526020600020905b81548152906001019060200180831161113c57829003601f168201915b50505050508152602001600080856001600160a01b03166001600160a01b03168152602001908152602001600020600201805461119590613267565b80601f01602080910402602001604051908101604052809291908181526020018280546111c190613267565b801561120e5780601f106111e35761010080835404028352916020019161120e565b820191906000526020600020905b8154815290600101906020018083116111f157829003601f168201915b50505091835250506001600160a01b03841660008181526020818152604080832060038101548387015260048101549186019190915260058101546060860152600681015460ff161515608086015292825252600b01805460a09092019161127590613267565b80601f01602080910402602001604051908101604052809291908181526020018280546112a190613267565b80156112ee5780601f106112c3576101008083540402835291602001916112ee565b820191906000526020600020905b8154815290600101906020018083116112d157829003601f168201915b50505050508152602001600080856001600160a01b03166001600160a01b03168152602001908152602001600020600d015481525090508084868151811061133857611338613225565b602090810291909101015261134e600186613212565b9450505b508061135d8161324e565b91505061104d565b509392505050565b6001600160a01b031660009081526020818152604080832033845260090190915290205460ff1660011490565b6001600160a01b0385166000908152602081905260409020600d0154156114085760405162461bcd60e51b815260206004820181905260248201527f4f7267616e697a6174696f6e20616c726561647920726567697374657265642160448201526064015b60405180910390fd5b6001600160a01b038516600081815260208190526040902080546001600160a01b031916909117815560010161143e85826132ef565b506001600160a01b038516600090815260208190526040902060020161146484826132ef565b506001600160a01b0385166000908152602081905260409020600b0161148a83826132ef565b50611498816202a300613212565b6001600160a01b0386166000908152602081905260409020600d01556114bd856128d9565b6114c8906001613212565b6001600160a01b039095166000818152602081905260408120600501969096556004805460018101825596527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b90950180546001600160a01b03191690951790945550505050565b6001600160a01b0381166000908152600e602052604081206007015460ff161515900361094d576001600160a01b0381166000908152602081905260408120600601805460ff19169055600980546001929061158d90849061323b565b90915550506001600160a01b0381166000908152600260205260408120805460ff19169055805b6004548110156116f257600080600483815481106115d4576115d4613225565b60009182526020808320909101546001600160a01b0316835282019290925260400190206006015460ff16801561164757506000806004838154811061161c5761161c613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c015482105b156116e0576000806004838154811061166257611662613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c015460048054919350600691839081106116a4576116a4613225565b60009182526020808320909101548354600181018555938352912090910180546001600160a01b0319166001600160a01b039092169190911790555b806116ea8161324e565b9150506115b4565b5060005b600654811015611712578061170a8161324e565b9150506116f6565b5060065460005b81811015610fd7576006805480611732576117326133af565b600082815260209020810160001990810180546001600160a01b03191690550190558061175e8161324e565b915050611719565b6001600160a01b0382166000908152602081905260408120600d015482111561179157506001611795565b5060005b92915050565b6001600160a01b0383166000818152600e60209081526040822080546001600160a01b031916909317835560089092018054600181018255908252919020016117e483826132ef565b506001600160a01b0383166000908152600e602052604090206005018190556118108162069780613212565b6001600160a01b039093166000908152600e60205260409020600601929092555050565b6001600160a01b0381166000908152600d602052604090206003015461185b906001613212565b6001600160a01b039091166000908152600d6020908152604082206003810193909355600590920180546001810182559082529190200180546001600160a01b03191633179055565b60045460085460609190600090819067ffffffffffffffff8111156118cb576118cb612f6e565b60405190808252806020026020018201604052801561190457816020015b6118f1612cfc565b8152602001906001900390816118e95790505b50905060005b838110156113655760006004828154811061192757611927613225565b60009182526020808320909101546001600160a01b03168083529082905260409091206006015490915060ff1615611ba8576001600160a01b038082166000908152602081815260408083208151610120810190925280549094168152600184018054919283019161199890613267565b80601f01602080910402602001604051908101604052809291908181526020018280546119c490613267565b8015611a115780601f106119e657610100808354040283529160200191611a11565b820191906000526020600020905b8154815290600101906020018083116119f457829003601f168201915b50505050508152602001836002018054611a2a90613267565b80601f0160208091040260200160405190810160405280929190818152602001828054611a5690613267565b8015611aa35780601f10611a7857610100808354040283529160200191611aa3565b820191906000526020600020905b815481529060010190602001808311611a8657829003601f168201915b5050509183525050600384015460208201526004840154604082015260058401546060820152600684015460ff1615156080820152600b8401805460a090920191611aed90613267565b80601f0160208091040260200160405190810160405280929190818152602001828054611b1990613267565b8015611b665780601f10611b3b57610100808354040283529160200191611b66565b820191906000526020600020905b815481529060010190602001808311611b4957829003601f168201915b5050505050815260200183600d0154815250905080858781518110611b8d57611b8d613225565b6020908102919091010152611ba3600187613212565b955050505b5080611bb38161324e565b91505061190a565b6001600160a01b0381166000908152602081905260408120600601805460ff191660019081179091556009805491929091611bf7908490613212565b90915550506001600160a01b03166000908152600260205260409020805460ff19166001179055565b60006009546033611c3191906133c5565b6001600160a01b038316600090815260208190526040902060030154611c589060646133c5565b10611c6557506001919050565b506000919050565b6001600160a01b0381166000908152600d602052604081206004810154600390910154611c9a9190613212565b9050611ca78160336133c5565b6001600160a01b0383166000908152600d6020526040902060030154611cce9060646133c5565b10611cfe576001600160a01b0382166000908152600d60205260409020600b01805460ff1916600117905561094b565b506001600160a01b03166000908152600d60205260409020600b01805460ff19169055565b6001600160a01b0381166000908152600e602052604081206002810154600190910154611d509190613212565b9050611d5d8160336133c5565b6001600160a01b0383166000908152600e6020526040902060010154611d849060646133c5565b10611db4576001600160a01b0382166000908152600e60205260409020600701805460ff1916600117905561094b565b506001600160a01b03166000908152600e60205260409020600701805460ff19169055565b60055460005b81811015611e2c576005805480611df857611df86133af565b600082815260209020810160001990810180546001600160a01b031916905501905580611e248161324e565b915050611ddf565b5060005b6001600160a01b038316600090815260208190526040902060070154811015611ecb576001600160a01b03831660009081526020819052604081206007018054600391839185908110611e8557611e85613225565b6000918252602080832091909101546001600160a01b031683528201929092526040019020805460ff191691151591909117905580611ec38161324e565b915050611e30565b5060005b6001600160a01b038316600090815260208190526040902060080154811015611f6a576001600160a01b03831660009081526020819052604081206008018054600391839185908110611f2457611f24613225565b6000918252602080832091909101546001600160a01b031683528201929092526040019020805460ff191691151591909117905580611f628161324e565b915050611ecf565b505050565b600c5460005b8181101561094b57600c805480611f8e57611f8e6133af565b600082815260208120600f6000199093019283020180546001600160a01b031916815590611fbf6001830182612d53565b611fcd600283016000612d53565b600060038301819055600483018190556005830181905560068301805460ff19169055611ffe906007840190612d8d565b61200c600883016000612d8d565b600a820160009055600b820160006120249190612d53565b506000600c8201819055600d820155600e01805460ff1916905590558061204a8161324e565b915050611f75565b606060005b6001600160a01b0383166000908152602081905260409020600701548110156120fe57600160036000806000876001600160a01b03166001600160a01b0316815260200190815260200160002060070184815481106120b8576120b8613225565b6000918252602080832091909101546001600160a01b031683528201929092526040019020805460ff1916911515919091179055806120f68161324e565b915050612057565b5060005b6001600160a01b0383166000908152602081905260409020600801548110156121a957600160036000806000876001600160a01b03166001600160a01b03168152602001908152602001600020600801848154811061216357612163613225565b6000918252602080832091909101546001600160a01b031683528201929092526040019020805460ff1916911515919091179055806121a18161324e565b915050612102565b5060005b6004548110156122615760036000600483815481106121ce576121ce613225565b60009182526020808320909101546001600160a01b0316835282019290925260400181205460ff161515900361224f5760056004828154811061221357612213613225565b60009182526020808320909101548354600181018555938352912090910180546001600160a01b0319166001600160a01b039092169190911790555b806122598161324e565b9150506121ad565b5060058054806020026020016040519081016040528092919081815260200182805480156122b857602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831161229a575b50505050509050919050565b6001600160a01b0384166000818152600d6020526040902080546001600160a01b03191690911781556001016122fa84826132ef565b506001600160a01b0384166000908152600d6020526040902060020161232083826132ef565b506001600160a01b0384166000908152600d6020526040902060090181905561234c8162069780613212565b6001600160a01b0385166000908152600d60205260409020600a0155600b54612376906001613212565b600b5550505050565b6001600160a01b0381166000908152600d60205260409020600b015460ff16151560010361094d576001600160a01b0381166000908152602081905260408120600601805460ff1916905560098054600192906123dd90849061323b565b90915550506001600160a01b0381166000908152600260205260408120805460ff19169055805b600454811015612542576000806004838154811061242457612424613225565b60009182526020808320909101546001600160a01b0316835282019290925260400190206006015460ff16801561249757506000806004838154811061246c5761246c613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c015482105b1561253057600080600483815481106124b2576124b2613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c015460048054919350600691839081106124f4576124f4613225565b60009182526020808320909101548354600181018555938352912090910180546001600160a01b0319166001600160a01b039092169190911790555b8061253a8161324e565b915050612404565b5060005b600654811015612562578061255a8161324e565b915050612546565b5060065460005b81811015610fd7576006805480612582576125826133af565b600082815260209020810160001990810180546001600160a01b0319169055019055806125ae8161324e565b915050612569565b6001600160a01b0381166000908152600e602052604090206001908101546125dd91613212565b6001600160a01b039091166000908152600e60209081526040822060018082019490945560030180549384018155825290200180546001600160a01b03191633179055565b60005b60055481101561094d57600a546000806005848154811061264857612648613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a015461267a919061323b565b6000806005848154811061269057612690613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a0155806126c28161324e565b915050612625565b6001600160a01b031660009081526020818152604080832033845260090190915290205460ff1660021490565b6001600160a01b0382166000908152602081905260408120600d0154839082036127335760405162461bcd60e51b81526004016113ff906133dc565b6001600160a01b03811660009081526020819052604090206006015460ff161561279f5760405162461bcd60e51b815260206004820152601e60248201527f4f7267616e697a6174696f6e20616c726561647920766572696669656421000060448201526064016113ff565b336000908152602081905260409020600d0154158015906127d257503360009081526020819052604090206006015460ff165b6127ee5760405162461bcd60e51b81526004016113ff90613420565b6127f7816126ca565b15801561280a57506128088161136d565b155b6128265760405162461bcd60e51b81526004016113ff9061347d565b6001600160a01b0384166000908152602081905260408120600301805460019290612852908490613212565b90915550506001600160a01b0384166000908152602081815260408083206007810180546001810182559085528385200180546001600160a01b0319163390811790915584526009019091529020805460ff191660021790556128b58484611766565b156128cd576128c384611c20565b50600191506128d2565b600091505b5092915050565b6001600160a01b03811660009081526020819052604081206004810154600390910154600954612909919061323b565b611795919061323b565b6001600160a01b0381166000908152600e602052604081206007015460ff161515900361094d5760005b6001600160a01b038216600090815260208190526040902060070154811015612a2f57600a546001600160a01b038316600090815260208190526040812060070180548291908590811061299357612993613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a01546129c5919061323b565b6001600160a01b03831660009081526020819052604081206007018054829190859081106129f5576129f5613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a015580612a278161324e565b91505061293d565b5060005b6001600160a01b03821660009081526020819052604090206008015481101561094b57600a546001600160a01b0383166000908152602081905260408120600801805482919085908110612a8957612a89613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a0154612abb9190613212565b6001600160a01b0383166000908152602081905260408120600801805482919085908110612aeb57612aeb613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a015580612b1d8161324e565b915050612a33565b6001600160a01b0382166000908152602081905260408120600d015483908203612b615760405162461bcd60e51b81526004016113ff906133dc565b6001600160a01b03811660009081526020819052604090206006015460ff1615612bcd5760405162461bcd60e51b815260206004820152601e60248201527f4f7267616e697a6174696f6e20616c726561647920766572696669656421000060448201526064016113ff565b336000908152602081905260409020600d015415801590612c0057503360009081526020819052604090206006015460ff165b612c1c5760405162461bcd60e51b81526004016113ff90613420565b612c25816126ca565b158015612c385750612c368161136d565b155b612c545760405162461bcd60e51b81526004016113ff9061347d565b6001600160a01b0384166000908152602081905260408120600401805460019290612c80908490613212565b90915550506001600160a01b038416600090815260208181526040808320600881018054600181810183559186528486200180546001600160a01b0319163390811790915585526009909101909252909120805460ff19169091179055612ce78484611766565b156128cd57612cf584611c20565b91506128d2565b60405180610120016040528060006001600160a01b03168152602001606081526020016060815260200160008152602001600081526020016000815260200160001515815260200160608152602001600081525090565b508054612d5f90613267565b6000825580601f10612d6f575050565b601f01602090049060005260206000209081019061094d9190612da7565b508054600082559060005260206000209081019061094d91905b5b80821115612dbc5760008155600101612da8565b5090565b80356001600160a01b0381168114612dd757600080fd5b919050565b600060208284031215612dee57600080fd5b612df782612dc0565b9392505050565b60008060408385031215612e1157600080fd5b612e1a83612dc0565b915060208301358015158114612e2f57600080fd5b809150509250929050565b6000815180845260005b81811015612e6057602081850181015186830182015201612e44565b506000602082860101526020601f19601f83011685010191505092915050565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b83811015612f6057888303603f19018552815180516001600160a01b0316845261012088820151818a870152612edf82870182612e3a565b9150508782015185820389870152612ef78282612e3a565b606084810151908801526080808501519088015260a0808501519088015260c08085015115159088015260e080850151888303828a01529193509150612f3d8382612e3a565b610100948501519790940196909652505094870194925090860190600101612ea7565b509098975050505050505050565b634e487b7160e01b600052604160045260246000fd5b600082601f830112612f9557600080fd5b813567ffffffffffffffff80821115612fb057612fb0612f6e565b604051601f8301601f19908116603f01168101908282118183101715612fd857612fd8612f6e565b81604052838152866020858801011115612ff157600080fd5b836020870160208301376000602085830101528094505050505092915050565b600080600080600060a0868803121561302957600080fd5b61303286612dc0565b9450602086013567ffffffffffffffff8082111561304f57600080fd5b61305b89838a01612f84565b9550604088013591508082111561307157600080fd5b61307d89838a01612f84565b9450606088013591508082111561309357600080fd5b506130a088828901612f84565b95989497509295608001359392505050565b600080604083850312156130c557600080fd5b6130ce83612dc0565b946020939093013593505050565b6000806000606084860312156130f157600080fd5b6130fa84612dc0565b9250602084013567ffffffffffffffff81111561311657600080fd5b61312286828701612f84565b925050604084013590509250925092565b6020808252825182820181905260009190848201906040850190845b818110156131745783516001600160a01b03168352928401929184019160010161314f565b50909695505050505050565b6000806000806080858703121561319657600080fd5b61319f85612dc0565b9350602085013567ffffffffffffffff808211156131bc57600080fd5b6131c888838901612f84565b945060408701359150808211156131de57600080fd5b506131eb87828801612f84565b949793965093946060013593505050565b634e487b7160e01b600052601160045260246000fd5b80820180821115611795576117956131fc565b634e487b7160e01b600052603260045260246000fd5b81810381811115611795576117956131fc565b600060018201613260576132606131fc565b5060010190565b600181811c9082168061327b57607f821691505b60208210810361329b57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115611f6a57600081815260208120601f850160051c810160208610156132c85750805b601f850160051c820191505b818110156132e7578281556001016132d4565b505050505050565b815167ffffffffffffffff81111561330957613309612f6e565b61331d816133178454613267565b846132a1565b602080601f831160018114613352576000841561333a5750858301515b600019600386901b1c1916600185901b1785556132e7565b600085815260208120601f198616915b8281101561338157888601518255948401946001909101908401613362565b508582101561339f5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052603160045260246000fd5b8082028115828204841417611795576117956131fc565b60208082526024908201527f4f7267616e697a6174696f6e206164647265737320646f6573206e6f742065786040820152636973742160e01b606082015260800190565b6020808252603a908201527f566f746572206f7267616e697a6174696f6e206973206e6f742076657269666960408201527f65642c206e6f74207065726d697474656420746f20766f746521000000000000606082015260800190565b6020808252602e908201527f566f746572206f7267616e697a6174696f6e2063616e6e6f7420766f7465206d60408201526d6f7265207468616e206f6e63652160901b60608201526080019056fea2646970667358221220daa6af178e1b36d9681b3304da3c4ee706ca1b3f4494f3802e4d990e3091fa3564736f6c63430008110033", + "deployedBytecode": "6080604052600436106101ef5760003560e01c806380007e831161010c578063b7627e411161009a578063e3323aba1161006c578063e3323aba1461060c578063e75176b514610634578063ef2d584714610654578063f15c01dd14610674578063f851a4401461069457005b8063b7627e411461057e578063bc489aa9146105b7578063c9dfca10146105cc578063e2579114146105ec57005b8063a1b0ffe0116100de578063a1b0ffe0146104c2578063a52da85d146104f1578063ac64fcde1461051e578063ae51c2bc1461053e578063b5e801d51461055e57005b806380007e831461044557806380e179e91461046d5780638e3495191461048d5780638fc0ed2f146104ad57005b80634648df2a116101895780635cf9303f1161015b5780635cf9303f146103975780635d0161f1146103d057806362ae7ac7146103e55780636fc3911c14610405578063712062741461042557005b80634648df2a14610313578063482bd55b146103335780634cf5d5521461035357806355779b651461037757005b80632d80468d116101c25780632d80468d146102785780633e85747e146102a3578063440370fe146102d35780634438d4b0146102f357005b806237556e146101f85780630a54ecbf1461021857806314cb11e8146102385780631e4771801461025857005b366101f657005b005b34801561020457600080fd5b506101f6610213366004612ddc565b6106cc565b34801561022457600080fd5b506101f6610233366004612ddc565b61073c565b34801561024457600080fd5b506101f6610253366004612ddc565b610950565b34801561026457600080fd5b506101f6610273366004612dfe565b6109c0565b34801561028457600080fd5b5061028d610fdd565b60405161029a9190612e80565b60405180910390f35b3480156102af57600080fd5b506102c36102be366004612ddc565b61136d565b604051901515815260200161029a565b3480156102df57600080fd5b506101f66102ee366004613011565b61139a565b3480156102ff57600080fd5b506101f661030e366004612ddc565b611530565b34801561031f57600080fd5b506102c361032e3660046130b2565b611766565b34801561033f57600080fd5b506101f661034e3660046130dc565b61179b565b34801561035f57600080fd5b5061036960095481565b60405190815260200161029a565b34801561038357600080fd5b506101f6610392366004612ddc565b611834565b3480156103a357600080fd5b506103696103b2366004612ddc565b6001600160a01b031660009081526020819052604090206003015490565b3480156103dc57600080fd5b5061028d6118a4565b3480156103f157600080fd5b506101f6610400366004612ddc565b611bbb565b34801561041157600080fd5b506102c3610420366004612ddc565b611c20565b34801561043157600080fd5b506101f6610440366004612ddc565b611c6d565b34801561045157600080fd5b503360009081526020819052604090206006015460ff166102c3565b34801561047957600080fd5b506101f6610488366004612ddc565b611d23565b34801561049957600080fd5b506101f66104a8366004612ddc565b611dd9565b3480156104b957600080fd5b506101f6611f6f565b3480156104ce57600080fd5b506101f6336000908152602081905260409020600e01805460ff19166001179055565b3480156104fd57600080fd5b5061051161050c366004612ddc565b612052565b60405161029a9190613133565b34801561052a57600080fd5b506101f6610539366004613180565b6122c4565b34801561054a57600080fd5b506101f6610559366004612ddc565b61237f565b34801561056a57600080fd5b506101f6610579366004612ddc565b6125b6565b34801561058a57600080fd5b50610369610599366004612ddc565b6001600160a01b031660009081526020819052604090206004015490565b3480156105c357600080fd5b506101f6612622565b3480156105d857600080fd5b506102c36105e7366004612ddc565b6126ca565b3480156105f857600080fd5b506102c36106073660046130b2565b6126f7565b34801561061857600080fd5b50336000908152602081905260409020600e015460ff166102c3565b34801561064057600080fd5b5061036961064f366004612ddc565b6128d9565b34801561066057600080fd5b506101f661066f366004612ddc565b612913565b34801561068057600080fd5b506102c361068f3660046130b2565b612b25565b3480156106a057600080fd5b506007546106b4906001600160a01b031681565b6040516001600160a01b03909116815260200161029a565b6001600160a01b0381166000908152600d60205260409020600401546106f3906001613212565b6001600160a01b039091166000908152600d6020908152604082206004810193909355600690920180546001810182559082529190200180546001600160a01b03191633179055565b6001600160a01b0381166000908152600d60205260409020600b015460ff161561094d5760005b6001600160a01b03821660009081526020819052604090206007015481101561085557600a546001600160a01b03831660009081526020819052604081206007018054829190859081106107b9576107b9613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a01546107eb919061323b565b6001600160a01b038316600090815260208190526040812060070180548291908590811061081b5761081b613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a01558061084d8161324e565b915050610763565b5060005b6001600160a01b03821660009081526020819052604090206008015481101561094b57600a546001600160a01b03831660009081526020819052604081206008018054829190859081106108af576108af613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a01546108e19190613212565b6001600160a01b038316600090815260208190526040812060080180548291908590811061091157610911613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a0155806109438161324e565b915050610859565b505b50565b6001600160a01b0381166000908152600e6020526040902060020154610977906001613212565b6001600160a01b039091166000908152600e6020908152604082206002810193909355600490920180546001810182559082529190200180546001600160a01b03191633179055565b8015610cd2576000805b6001600160a01b038416600090815260208190526040902060030154811015610b91576001600160a01b0384166000908152602081905260408120600701805482919084908110610a1d57610a1d613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c0154610a50906001613212565b6001600160a01b0385166000908152602081905260408120600701805482919085908110610a8057610a80613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c0155600a54610ab59083613212565b9150600a54600080806000886001600160a01b03166001600160a01b031681526020019081526020016000206007018481548110610af557610af5613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a0154610b279190613212565b6001600160a01b0385166000908152602081905260408120600701805482919085908110610b5757610b57613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a015580610b898161324e565b9150506109ca565b506001600160a01b0383166000908152602081905260409020600a0154610bb990829061323b565b6001600160a01b0384166000908152602081905260408120600a01919091555b6001600160a01b038416600090815260208190526040902060040154811015610ccb576001600160a01b0384166000908152602081905260408120600801805460019291829185908110610c2f57610c2f613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c0154610c61919061323b565b6001600160a01b0385166000908152602081905260408120600801805482919085908110610c9157610c91613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c015580610cc38161324e565b915050610bd9565b505061094b565b6000805b6001600160a01b038416600090815260208190526040902060040154811015610e9d576001600160a01b0384166000908152602081905260408120600801805482919084908110610d2957610d29613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c0154610d5c906001613212565b6001600160a01b0385166000908152602081905260408120600801805482919085908110610d8c57610d8c613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c0155600a54610dc19083613212565b9150600a54600080806000886001600160a01b03166001600160a01b031681526020019081526020016000206008018481548110610e0157610e01613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a0154610e339190613212565b6001600160a01b0385166000908152602081905260408120600801805482919085908110610e6357610e63613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a015580610e958161324e565b915050610cd6565b506001600160a01b0383166000908152602081905260409020600a0154610ec590829061323b565b6001600160a01b0384166000908152602081905260408120600a01919091555b6001600160a01b038416600090815260208190526040902060030154811015610fd7576001600160a01b0384166000908152602081905260408120600701805460019291829185908110610f3b57610f3b613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c0154610f6d919061323b565b6001600160a01b0385166000908152602081905260408120600701805482919085908110610f9d57610f9d613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c015580610fcf8161324e565b915050610ee5565b50505050565b600454600854606091906000908190610ff6908461323b565b67ffffffffffffffff81111561100e5761100e612f6e565b60405190808252806020026020018201604052801561104757816020015b611034612cfc565b81526020019060019003908161102c5790505b50905060005b838110156113655760006004828154811061106a5761106a613225565b60009182526020808320909101546001600160a01b03168083529082905260409091206006015490915060ff166113525760408051610120810182526001600160a01b0380841660008181526020818152948120805490931684529081528084526001909101805491938301916110e090613267565b80601f016020809104026020016040519081016040528092919081815260200182805461110c90613267565b80156111595780601f1061112e57610100808354040283529160200191611159565b820191906000526020600020905b81548152906001019060200180831161113c57829003601f168201915b50505050508152602001600080856001600160a01b03166001600160a01b03168152602001908152602001600020600201805461119590613267565b80601f01602080910402602001604051908101604052809291908181526020018280546111c190613267565b801561120e5780601f106111e35761010080835404028352916020019161120e565b820191906000526020600020905b8154815290600101906020018083116111f157829003601f168201915b50505091835250506001600160a01b03841660008181526020818152604080832060038101548387015260048101549186019190915260058101546060860152600681015460ff161515608086015292825252600b01805460a09092019161127590613267565b80601f01602080910402602001604051908101604052809291908181526020018280546112a190613267565b80156112ee5780601f106112c3576101008083540402835291602001916112ee565b820191906000526020600020905b8154815290600101906020018083116112d157829003601f168201915b50505050508152602001600080856001600160a01b03166001600160a01b03168152602001908152602001600020600d015481525090508084868151811061133857611338613225565b602090810291909101015261134e600186613212565b9450505b508061135d8161324e565b91505061104d565b509392505050565b6001600160a01b031660009081526020818152604080832033845260090190915290205460ff1660011490565b6001600160a01b0385166000908152602081905260409020600d0154156114085760405162461bcd60e51b815260206004820181905260248201527f4f7267616e697a6174696f6e20616c726561647920726567697374657265642160448201526064015b60405180910390fd5b6001600160a01b038516600081815260208190526040902080546001600160a01b031916909117815560010161143e85826132ef565b506001600160a01b038516600090815260208190526040902060020161146484826132ef565b506001600160a01b0385166000908152602081905260409020600b0161148a83826132ef565b50611498816202a300613212565b6001600160a01b0386166000908152602081905260409020600d01556114bd856128d9565b6114c8906001613212565b6001600160a01b039095166000818152602081905260408120600501969096556004805460018101825596527f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b90950180546001600160a01b03191690951790945550505050565b6001600160a01b0381166000908152600e602052604081206007015460ff161515900361094d576001600160a01b0381166000908152602081905260408120600601805460ff19169055600980546001929061158d90849061323b565b90915550506001600160a01b0381166000908152600260205260408120805460ff19169055805b6004548110156116f257600080600483815481106115d4576115d4613225565b60009182526020808320909101546001600160a01b0316835282019290925260400190206006015460ff16801561164757506000806004838154811061161c5761161c613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c015482105b156116e0576000806004838154811061166257611662613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c015460048054919350600691839081106116a4576116a4613225565b60009182526020808320909101548354600181018555938352912090910180546001600160a01b0319166001600160a01b039092169190911790555b806116ea8161324e565b9150506115b4565b5060005b600654811015611712578061170a8161324e565b9150506116f6565b5060065460005b81811015610fd7576006805480611732576117326133af565b600082815260209020810160001990810180546001600160a01b03191690550190558061175e8161324e565b915050611719565b6001600160a01b0382166000908152602081905260408120600d015482111561179157506001611795565b5060005b92915050565b6001600160a01b0383166000818152600e60209081526040822080546001600160a01b031916909317835560089092018054600181018255908252919020016117e483826132ef565b506001600160a01b0383166000908152600e602052604090206005018190556118108162069780613212565b6001600160a01b039093166000908152600e60205260409020600601929092555050565b6001600160a01b0381166000908152600d602052604090206003015461185b906001613212565b6001600160a01b039091166000908152600d6020908152604082206003810193909355600590920180546001810182559082529190200180546001600160a01b03191633179055565b60045460085460609190600090819067ffffffffffffffff8111156118cb576118cb612f6e565b60405190808252806020026020018201604052801561190457816020015b6118f1612cfc565b8152602001906001900390816118e95790505b50905060005b838110156113655760006004828154811061192757611927613225565b60009182526020808320909101546001600160a01b03168083529082905260409091206006015490915060ff1615611ba8576001600160a01b038082166000908152602081815260408083208151610120810190925280549094168152600184018054919283019161199890613267565b80601f01602080910402602001604051908101604052809291908181526020018280546119c490613267565b8015611a115780601f106119e657610100808354040283529160200191611a11565b820191906000526020600020905b8154815290600101906020018083116119f457829003601f168201915b50505050508152602001836002018054611a2a90613267565b80601f0160208091040260200160405190810160405280929190818152602001828054611a5690613267565b8015611aa35780601f10611a7857610100808354040283529160200191611aa3565b820191906000526020600020905b815481529060010190602001808311611a8657829003601f168201915b5050509183525050600384015460208201526004840154604082015260058401546060820152600684015460ff1615156080820152600b8401805460a090920191611aed90613267565b80601f0160208091040260200160405190810160405280929190818152602001828054611b1990613267565b8015611b665780601f10611b3b57610100808354040283529160200191611b66565b820191906000526020600020905b815481529060010190602001808311611b4957829003601f168201915b5050505050815260200183600d0154815250905080858781518110611b8d57611b8d613225565b6020908102919091010152611ba3600187613212565b955050505b5080611bb38161324e565b91505061190a565b6001600160a01b0381166000908152602081905260408120600601805460ff191660019081179091556009805491929091611bf7908490613212565b90915550506001600160a01b03166000908152600260205260409020805460ff19166001179055565b60006009546033611c3191906133c5565b6001600160a01b038316600090815260208190526040902060030154611c589060646133c5565b10611c6557506001919050565b506000919050565b6001600160a01b0381166000908152600d602052604081206004810154600390910154611c9a9190613212565b9050611ca78160336133c5565b6001600160a01b0383166000908152600d6020526040902060030154611cce9060646133c5565b10611cfe576001600160a01b0382166000908152600d60205260409020600b01805460ff1916600117905561094b565b506001600160a01b03166000908152600d60205260409020600b01805460ff19169055565b6001600160a01b0381166000908152600e602052604081206002810154600190910154611d509190613212565b9050611d5d8160336133c5565b6001600160a01b0383166000908152600e6020526040902060010154611d849060646133c5565b10611db4576001600160a01b0382166000908152600e60205260409020600701805460ff1916600117905561094b565b506001600160a01b03166000908152600e60205260409020600701805460ff19169055565b60055460005b81811015611e2c576005805480611df857611df86133af565b600082815260209020810160001990810180546001600160a01b031916905501905580611e248161324e565b915050611ddf565b5060005b6001600160a01b038316600090815260208190526040902060070154811015611ecb576001600160a01b03831660009081526020819052604081206007018054600391839185908110611e8557611e85613225565b6000918252602080832091909101546001600160a01b031683528201929092526040019020805460ff191691151591909117905580611ec38161324e565b915050611e30565b5060005b6001600160a01b038316600090815260208190526040902060080154811015611f6a576001600160a01b03831660009081526020819052604081206008018054600391839185908110611f2457611f24613225565b6000918252602080832091909101546001600160a01b031683528201929092526040019020805460ff191691151591909117905580611f628161324e565b915050611ecf565b505050565b600c5460005b8181101561094b57600c805480611f8e57611f8e6133af565b600082815260208120600f6000199093019283020180546001600160a01b031916815590611fbf6001830182612d53565b611fcd600283016000612d53565b600060038301819055600483018190556005830181905560068301805460ff19169055611ffe906007840190612d8d565b61200c600883016000612d8d565b600a820160009055600b820160006120249190612d53565b506000600c8201819055600d820155600e01805460ff1916905590558061204a8161324e565b915050611f75565b606060005b6001600160a01b0383166000908152602081905260409020600701548110156120fe57600160036000806000876001600160a01b03166001600160a01b0316815260200190815260200160002060070184815481106120b8576120b8613225565b6000918252602080832091909101546001600160a01b031683528201929092526040019020805460ff1916911515919091179055806120f68161324e565b915050612057565b5060005b6001600160a01b0383166000908152602081905260409020600801548110156121a957600160036000806000876001600160a01b03166001600160a01b03168152602001908152602001600020600801848154811061216357612163613225565b6000918252602080832091909101546001600160a01b031683528201929092526040019020805460ff1916911515919091179055806121a18161324e565b915050612102565b5060005b6004548110156122615760036000600483815481106121ce576121ce613225565b60009182526020808320909101546001600160a01b0316835282019290925260400181205460ff161515900361224f5760056004828154811061221357612213613225565b60009182526020808320909101548354600181018555938352912090910180546001600160a01b0319166001600160a01b039092169190911790555b806122598161324e565b9150506121ad565b5060058054806020026020016040519081016040528092919081815260200182805480156122b857602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831161229a575b50505050509050919050565b6001600160a01b0384166000818152600d6020526040902080546001600160a01b03191690911781556001016122fa84826132ef565b506001600160a01b0384166000908152600d6020526040902060020161232083826132ef565b506001600160a01b0384166000908152600d6020526040902060090181905561234c8162069780613212565b6001600160a01b0385166000908152600d60205260409020600a0155600b54612376906001613212565b600b5550505050565b6001600160a01b0381166000908152600d60205260409020600b015460ff16151560010361094d576001600160a01b0381166000908152602081905260408120600601805460ff1916905560098054600192906123dd90849061323b565b90915550506001600160a01b0381166000908152600260205260408120805460ff19169055805b600454811015612542576000806004838154811061242457612424613225565b60009182526020808320909101546001600160a01b0316835282019290925260400190206006015460ff16801561249757506000806004838154811061246c5761246c613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c015482105b1561253057600080600483815481106124b2576124b2613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600c015460048054919350600691839081106124f4576124f4613225565b60009182526020808320909101548354600181018555938352912090910180546001600160a01b0319166001600160a01b039092169190911790555b8061253a8161324e565b915050612404565b5060005b600654811015612562578061255a8161324e565b915050612546565b5060065460005b81811015610fd7576006805480612582576125826133af565b600082815260209020810160001990810180546001600160a01b0319169055019055806125ae8161324e565b915050612569565b6001600160a01b0381166000908152600e602052604090206001908101546125dd91613212565b6001600160a01b039091166000908152600e60209081526040822060018082019490945560030180549384018155825290200180546001600160a01b03191633179055565b60005b60055481101561094d57600a546000806005848154811061264857612648613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a015461267a919061323b565b6000806005848154811061269057612690613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a0155806126c28161324e565b915050612625565b6001600160a01b031660009081526020818152604080832033845260090190915290205460ff1660021490565b6001600160a01b0382166000908152602081905260408120600d0154839082036127335760405162461bcd60e51b81526004016113ff906133dc565b6001600160a01b03811660009081526020819052604090206006015460ff161561279f5760405162461bcd60e51b815260206004820152601e60248201527f4f7267616e697a6174696f6e20616c726561647920766572696669656421000060448201526064016113ff565b336000908152602081905260409020600d0154158015906127d257503360009081526020819052604090206006015460ff165b6127ee5760405162461bcd60e51b81526004016113ff90613420565b6127f7816126ca565b15801561280a57506128088161136d565b155b6128265760405162461bcd60e51b81526004016113ff9061347d565b6001600160a01b0384166000908152602081905260408120600301805460019290612852908490613212565b90915550506001600160a01b0384166000908152602081815260408083206007810180546001810182559085528385200180546001600160a01b0319163390811790915584526009019091529020805460ff191660021790556128b58484611766565b156128cd576128c384611c20565b50600191506128d2565b600091505b5092915050565b6001600160a01b03811660009081526020819052604081206004810154600390910154600954612909919061323b565b611795919061323b565b6001600160a01b0381166000908152600e602052604081206007015460ff161515900361094d5760005b6001600160a01b038216600090815260208190526040902060070154811015612a2f57600a546001600160a01b038316600090815260208190526040812060070180548291908590811061299357612993613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a01546129c5919061323b565b6001600160a01b03831660009081526020819052604081206007018054829190859081106129f5576129f5613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a015580612a278161324e565b91505061293d565b5060005b6001600160a01b03821660009081526020819052604090206008015481101561094b57600a546001600160a01b0383166000908152602081905260408120600801805482919085908110612a8957612a89613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a0154612abb9190613212565b6001600160a01b0383166000908152602081905260408120600801805482919085908110612aeb57612aeb613225565b60009182526020808320909101546001600160a01b031683528201929092526040019020600a015580612b1d8161324e565b915050612a33565b6001600160a01b0382166000908152602081905260408120600d015483908203612b615760405162461bcd60e51b81526004016113ff906133dc565b6001600160a01b03811660009081526020819052604090206006015460ff1615612bcd5760405162461bcd60e51b815260206004820152601e60248201527f4f7267616e697a6174696f6e20616c726561647920766572696669656421000060448201526064016113ff565b336000908152602081905260409020600d015415801590612c0057503360009081526020819052604090206006015460ff165b612c1c5760405162461bcd60e51b81526004016113ff90613420565b612c25816126ca565b158015612c385750612c368161136d565b155b612c545760405162461bcd60e51b81526004016113ff9061347d565b6001600160a01b0384166000908152602081905260408120600401805460019290612c80908490613212565b90915550506001600160a01b038416600090815260208181526040808320600881018054600181810183559186528486200180546001600160a01b0319163390811790915585526009909101909252909120805460ff19169091179055612ce78484611766565b156128cd57612cf584611c20565b91506128d2565b60405180610120016040528060006001600160a01b03168152602001606081526020016060815260200160008152602001600081526020016000815260200160001515815260200160608152602001600081525090565b508054612d5f90613267565b6000825580601f10612d6f575050565b601f01602090049060005260206000209081019061094d9190612da7565b508054600082559060005260206000209081019061094d91905b5b80821115612dbc5760008155600101612da8565b5090565b80356001600160a01b0381168114612dd757600080fd5b919050565b600060208284031215612dee57600080fd5b612df782612dc0565b9392505050565b60008060408385031215612e1157600080fd5b612e1a83612dc0565b915060208301358015158114612e2f57600080fd5b809150509250929050565b6000815180845260005b81811015612e6057602081850181015186830182015201612e44565b506000602082860101526020601f19601f83011685010191505092915050565b60006020808301818452808551808352604092508286019150828160051b87010184880160005b83811015612f6057888303603f19018552815180516001600160a01b0316845261012088820151818a870152612edf82870182612e3a565b9150508782015185820389870152612ef78282612e3a565b606084810151908801526080808501519088015260a0808501519088015260c08085015115159088015260e080850151888303828a01529193509150612f3d8382612e3a565b610100948501519790940196909652505094870194925090860190600101612ea7565b509098975050505050505050565b634e487b7160e01b600052604160045260246000fd5b600082601f830112612f9557600080fd5b813567ffffffffffffffff80821115612fb057612fb0612f6e565b604051601f8301601f19908116603f01168101908282118183101715612fd857612fd8612f6e565b81604052838152866020858801011115612ff157600080fd5b836020870160208301376000602085830101528094505050505092915050565b600080600080600060a0868803121561302957600080fd5b61303286612dc0565b9450602086013567ffffffffffffffff8082111561304f57600080fd5b61305b89838a01612f84565b9550604088013591508082111561307157600080fd5b61307d89838a01612f84565b9450606088013591508082111561309357600080fd5b506130a088828901612f84565b95989497509295608001359392505050565b600080604083850312156130c557600080fd5b6130ce83612dc0565b946020939093013593505050565b6000806000606084860312156130f157600080fd5b6130fa84612dc0565b9250602084013567ffffffffffffffff81111561311657600080fd5b61312286828701612f84565b925050604084013590509250925092565b6020808252825182820181905260009190848201906040850190845b818110156131745783516001600160a01b03168352928401929184019160010161314f565b50909695505050505050565b6000806000806080858703121561319657600080fd5b61319f85612dc0565b9350602085013567ffffffffffffffff808211156131bc57600080fd5b6131c888838901612f84565b945060408701359150808211156131de57600080fd5b506131eb87828801612f84565b949793965093946060013593505050565b634e487b7160e01b600052601160045260246000fd5b80820180821115611795576117956131fc565b634e487b7160e01b600052603260045260246000fd5b81810381811115611795576117956131fc565b600060018201613260576132606131fc565b5060010190565b600181811c9082168061327b57607f821691505b60208210810361329b57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115611f6a57600081815260208120601f850160051c810160208610156132c85750805b601f850160051c820191505b818110156132e7578281556001016132d4565b505050505050565b815167ffffffffffffffff81111561330957613309612f6e565b61331d816133178454613267565b846132a1565b602080601f831160018114613352576000841561333a5750858301515b600019600386901b1c1916600185901b1785556132e7565b600085815260208120601f198616915b8281101561338157888601518255948401946001909101908401613362565b508582101561339f5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052603160045260246000fd5b8082028115828204841417611795576117956131fc565b60208082526024908201527f4f7267616e697a6174696f6e206164647265737320646f6573206e6f742065786040820152636973742160e01b606082015260800190565b6020808252603a908201527f566f746572206f7267616e697a6174696f6e206973206e6f742076657269666960408201527f65642c206e6f74207065726d697474656420746f20766f746521000000000000606082015260800190565b6020808252602e908201527f566f746572206f7267616e697a6174696f6e2063616e6e6f7420766f7465206d60408201526d6f7265207468616e206f6e63652160901b60608201526080019056fea2646970667358221220daa6af178e1b36d9681b3304da3c4ee706ca1b3f4494f3802e4d990e3091fa3564736f6c63430008110033", + "sourceMap": "96:14609:1:-:0;;;1192:1:0;1167:26;;962:16:1;;;;;;;;;-1:-1:-1;1380:5:0;:18;;-1:-1:-1;;;;;;1380:18:0;1388:10;1380:18;;;;;;1432:10;1409:20;:33;1380:5;1453:20;:24;;;1488:68;;;;;;;;;;;-1:-1:-1;;;1488:68:0;;;;;;;;;;;;;;;;;;-1:-1:-1;;;1488:68:0;;;;;;;;;;;;;;;-1:-1:-1;;;1488:68:0;;;;;;1388:10;1488:68;;1540:15;1488:11;:68::i;:::-;1581:10;1567:13;:25;;;;;;;;;;:45;;:52;;-1:-1:-1;;1567:52:0;1615:4;1567:52;;;96:14609:1;;7704:885:0;-1:-1:-1;;;;;7949:35:0;;:13;:35;;;;;;;;;;:52;;;:57;7927:139;;;;-1:-1:-1;;;7927:139:0;;216:2:2;7927:139:0;;;198:21:2;;;235:18;;;228:30;294:34;274:18;;;267:62;346:18;;7927:139:0;;;;;;;;-1:-1:-1;;;;;8079:35:0;;:13;:35;;;;;;;;;;:70;;-1:-1:-1;;;;;;8079:70:0;;;;;;;8160:40;:60;8203:17;8160:40;:60;:::i;:::-;-1:-1:-1;;;;;;8231:35:0;;:13;:35;;;;;;;;;;:43;;:58;8277:12;8231:43;:58;:::i;:::-;-1:-1:-1;;;;;;8300:35:0;;:13;:35;;;;;;;;;;:40;;:54;8343:11;8300:40;:54;:::i;:::-;-1:-1:-1;8420:13:0;:4;8427:6;8420:13;:::i;:::-;-1:-1:-1;;;;;8365:35:0;;:13;:35;;;;;;;;;;:52;;:68;8488:34;8379:20;8488:12;:34::i;:::-;:36;;8523:1;8488:36;:::i;:::-;-1:-1:-1;;;;;8444:35:0;;;:13;:35;;;;;;;;;;:41;;:80;;;;8535:19;:46;;;;;;;;;;;;;;;-1:-1:-1;;;;;;8535:46:0;;;;;;;-1:-1:-1;;;;7704:885:0:o;2693:209::-;-1:-1:-1;;;;;2644:23:0;;2754:7;2644:23;;;;;;;;;;:33;;;;2415:31;;;;;2794:18;;:58;;2415:31;2794:58;:::i;:::-;:100;;;;:::i;:::-;2774:120;2693:209;-1:-1:-1;;2693:209:0:o;375:127:2:-;436:10;431:3;427:20;424:1;417:31;467:4;464:1;457:15;491:4;488:1;481:15;507:380;586:1;582:12;;;;629;;;650:61;;704:4;696:6;692:17;682:27;;650:61;757:2;749:6;746:14;726:18;723:38;720:161;;803:10;798:3;794:20;791:1;784:31;838:4;835:1;828:15;866:4;863:1;856:15;720:161;;507:380;;;:::o;1018:545::-;1120:2;1115:3;1112:11;1109:448;;;1156:1;1181:5;1177:2;1170:17;1226:4;1222:2;1212:19;1296:2;1284:10;1280:19;1277:1;1273:27;1267:4;1263:38;1332:4;1320:10;1317:20;1314:47;;;-1:-1:-1;1355:4:2;1314:47;1410:2;1405:3;1401:12;1398:1;1394:20;1388:4;1384:31;1374:41;;1465:82;1483:2;1476:5;1473:13;1465:82;;;1528:17;;;1509:1;1498:13;1465:82;;;1469:3;;;1109:448;1018:545;;;:::o;1739:1352::-;1859:10;;-1:-1:-1;;;;;1881:30:2;;1878:56;;;1914:18;;:::i;:::-;1943:97;2033:6;1993:38;2025:4;2019:11;1993:38;:::i;:::-;1987:4;1943:97;:::i;:::-;2095:4;;2159:2;2148:14;;2176:1;2171:663;;;;2878:1;2895:6;2892:89;;;-1:-1:-1;2947:19:2;;;2941:26;2892:89;-1:-1:-1;;1696:1:2;1692:11;;;1688:24;1684:29;1674:40;1720:1;1716:11;;;1671:57;2994:81;;2141:944;;2171:663;965:1;958:14;;;1002:4;989:18;;-1:-1:-1;;2207:20:2;;;2325:236;2339:7;2336:1;2333:14;2325:236;;;2428:19;;;2422:26;2407:42;;2520:27;;;;2488:1;2476:14;;;;2355:19;;2325:236;;;2329:3;2589:6;2580:7;2577:19;2574:201;;;2650:19;;;2644:26;-1:-1:-1;;2733:1:2;2729:14;;;2745:3;2725:24;2721:37;2717:42;2702:58;2687:74;;2574:201;-1:-1:-1;;;;;2821:1:2;2805:14;;;2801:22;2788:36;;-1:-1:-1;1739:1352:2:o;3096:127::-;3157:10;3152:3;3148:20;3145:1;3138:31;3188:4;3185:1;3178:15;3212:4;3209:1;3202:15;3228:125;3293:9;;;3314:10;;;3311:36;;;3327:18;;:::i;3358:128::-;3425:9;;;3446:11;;;3443:37;;;3460:18;;:::i;3358:128::-;96:14609:1;;;;;;", + "deployedSourceMap": "96:14609:1:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7158:241;;;;;;;;;;-1:-1:-1;7158:241:1;;;;;:::i;:::-;;:::i;8012:931::-;;;;;;;;;;-1:-1:-1;8012:931:1;;;;;:::i;:::-;;:::i;11312:257::-;;;;;;;;;;-1:-1:-1;11312:257:1;;;;;:::i;:::-;;:::i;1100:2250::-;;;;;;;;;;-1:-1:-1;1100:2250:1;;;;;:::i;:::-;;:::i;5206:1314:0:-;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3240:192;;;;;;;;;;-1:-1:-1;3240:192:0;;;;;:::i;:::-;;:::i;:::-;;;3502:14:2;;3495:22;3477:41;;3465:2;3450:18;3240:192:0;3337:187:2;7704:885:0;;;;;;;;;;-1:-1:-1;7704:885:0;;;;;:::i;:::-;;:::i;13341:1165:1:-;;;;;;;;;;-1:-1:-1;13341:1165:1;;;;;:::i;:::-;;:::i;3543:274:0:-;;;;;;;;;;-1:-1:-1;3543:274:0;;;;;:::i;:::-;;:::i;10399:488:1:-;;;;;;;;;;-1:-1:-1;10399:488:1;;;;;:::i;:::-;;:::i;1202:33:0:-;;;;;;;;;;;;;;;;;;;6151:25:2;;;6139:2;6124:18;1202:33:0;6005:177:2;6844:233:1;;;;;;;;;;-1:-1:-1;6844:233:1;;;;;:::i;:::-;;:::i;2325:129:0:-;;;;;;;;;;-1:-1:-1;2325:129:0;;;;;:::i;:::-;-1:-1:-1;;;;;2415:23:0;2388:7;2415:23;;;;;;;;;;:31;;;;2325:129;3917:1189;;;;;;;;;;;;;:::i;3470:203:1:-;;;;;;;;;;-1:-1:-1;3470:203:1;;;;;:::i;:::-;;:::i;9689:289:0:-;;;;;;;;;;-1:-1:-1;9689:289:0;;;;;:::i;:::-;;:::i;7486:403:1:-;;;;;;;;;;-1:-1:-1;7486:403:1;;;;;:::i;:::-;;:::i;1749:120:0:-;;;;;;;;;;-1:-1:-1;1830:10:0;1792:4;1816:25;;;;;;;;;;:45;;;;;1749:120;;11663:443:1;;;;;;;;;;-1:-1:-1;11663:443:1;;;;;:::i;:::-;;:::i;5002:641::-;;;;;;;;;;-1:-1:-1;5002:641:1;;;;;:::i;:::-;;:::i;6600:201:0:-;;;;;;;;;;;;;:::i;2130:100::-;;;;;;;;;;;;2192:10;2178:13;:25;;;;;;;;;;:37;;:44;;-1:-1:-1;;2178:44:0;2218:4;2178:44;;;2130:100;3801:759:1;;;;;;;;;;-1:-1:-1;3801:759:1;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;6111:654::-;;;;;;;;;;-1:-1:-1;6111:654:1;;;;;:::i;:::-;;:::i;9109:1141::-;;;;;;;;;;-1:-1:-1;9109:1141:1;;;;;:::i;:::-;;:::i;10974:248::-;;;;;;;;;;-1:-1:-1;10974:248:1;;;;;:::i;:::-;;:::i;2552:133:0:-;;;;;;;;;;-1:-1:-1;2552:133:0;;;;;:::i;:::-;-1:-1:-1;;;;;2644:23:0;2617:7;2644:23;;;;;;;;;;:33;;;;2552:133;4662:273:1;;;;;;;;;;;;;:::i;2975:190:0:-;;;;;;;;;;-1:-1:-1;2975:190:0;;;;;:::i;:::-;;:::i;8642:456::-;;;;;;;;;;-1:-1:-1;8642:456:0;;;;;:::i;:::-;;:::i;1958:110::-;;;;;;;;;;-1:-1:-1;2037:10:0;1999:4;2023:25;;;;;;;;;;:37;;;;;1958:110;;2693:209;;;;;;;;;;-1:-1:-1;2693:209:0;;;;;:::i;:::-;;:::i;12226:957:1:-;;;;;;;;;;-1:-1:-1;12226:957:1;;;;;:::i;:::-;;:::i;9153:457:0:-;;;;;;;;;;-1:-1:-1;9153:457:0;;;;;:::i;:::-;;:::i;1140:20::-;;;;;;;;;;-1:-1:-1;1140:20:0;;;;-1:-1:-1;;;;;1140:20:0;;;;;;-1:-1:-1;;;;;7705:32:2;;;7687:51;;7675:2;7660:18;1140:20:0;7541:203:2;7158:241:1;-1:-1:-1;;;;;7275:25:1;;;;;;:12;:25;;;;;:35;;;:52;;7326:1;7275:52;:::i;:::-;-1:-1:-1;;;;;7224:25:1;;;;;;;:12;:25;;;;;;;:35;;;:103;;;;7338:36;;;;:53;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;7338:53:1;7380:10;7338:53;;;7158:241::o;8012:931::-;-1:-1:-1;;;;;8080:25:1;;;;;;:12;:25;;;;;:36;;;;;8076:860;;;8156:9;8133:386;-1:-1:-1;;;;;8192:26:1;;:13;:26;;;;;;;;;;:35;;:42;8188:46;;8133:386;;;8483:20;;-1:-1:-1;;;;;8388:26:1;;8374:13;8388:26;;;;;;;;;;:35;;:38;;8374:13;;8388:35;8424:1;;8388:38;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;8388:38:1;8374:53;;;;;;;;;;;;:85;;;:129;;;;:::i;:::-;-1:-1:-1;;;;;8305:26:1;;8291:13;8305:26;;;;;;;;;;:35;;:38;;8291:13;;8305:35;8341:1;;8305:38;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;8305:38:1;8291:53;;;;;;;;;;;;:59;;:212;8253:3;;;;:::i;:::-;;;;8133:386;;;;8556:9;8533:392;-1:-1:-1;;;;;8592:26:1;;:13;:26;;;;;;;;;;:37;;:44;8588:48;;8533:392;;;8889:20;;-1:-1:-1;;;;;8792:26:1;;8778:13;8792:26;;;;;;;;;;:37;;:40;;8778:13;;8792:37;8830:1;;8792:40;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;8792:40:1;8778:55;;;;;;;;;;;;:87;;;:131;;;;:::i;:::-;-1:-1:-1;;;;;8707:26:1;;8693:13;8707:26;;;;;;;;;;:37;;:40;;8693:13;;8707:37;8745:1;;8707:40;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;8707:40:1;8693:55;;;;;;;;;;;;:61;;:216;8655:3;;;;:::i;:::-;;;;8533:392;;;;8076:860;8012:931;:::o;11312:257::-;-1:-1:-1;;;;;11433:31:1;;;;;;:18;:31;;;;;:41;;;:58;;11490:1;11433:58;:::i;:::-;-1:-1:-1;;;;;11376:31:1;;;;;;;:18;:31;;;;;;;:41;;;:115;;;;11502:42;;;;:59;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;11502:59:1;11550:10;11502:59;;;11312:257::o;1100:2250::-;1183:8;1179:2164;;;1208:11;1243:9;1238:577;-1:-1:-1;;;;;1262:26:1;;:13;:26;;;;;;;;;;:34;;;1258:38;;1238:577;;;-1:-1:-1;;;;;1420:26:1;;1406:13;1420:26;;;;;;;;;;:35;;:38;;1406:13;;1420:35;1456:1;;1420:38;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;1420:38:1;1406:53;;;;;;;;;;;;:86;;;:111;;1420:38;1406:111;:::i;:::-;-1:-1:-1;;;;;1336:26:1;;1322:13;1336:26;;;;;;;;;;:35;;:38;;1322:13;;1336:35;1372:1;;1336:38;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;1336:38:1;1322:53;;;;;;;;;;;;:60;;:195;1548:20;;1542:26;;:3;:26;:::i;:::-;1536:32;;1779:20;;1670:13;:53;1684:13;:26;1698:11;-1:-1:-1;;;;;1684:26:1;-1:-1:-1;;;;;1684:26:1;;;;;;;;;;;;:35;;1720:1;1684:38;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;1684:38:1;1670:53;;;;;;;;;;;;:85;;;:129;;;;:::i;:::-;-1:-1:-1;;;;;1601:26:1;;1587:13;1601:26;;;;;;;;;;:35;;:38;;1587:13;;1601:35;1637:1;;1601:38;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;1601:38:1;1587:53;;;;;;;;;;;;:59;;:212;1298:3;;;;:::i;:::-;;;;1238:577;;;-1:-1:-1;;;;;;1881:26:1;;:13;:26;;;;;;;;;;:32;;;:55;;1933:3;;1881:55;:::i;:::-;-1:-1:-1;;;;;1829:26:1;;:13;:26;;;;;;;;;;:32;;:107;;;;1951:301;-1:-1:-1;;;;;1975:26:1;;:13;:26;;;;;;;;;;:36;;;1971:40;;1951:301;;;-1:-1:-1;;;;;2137:26:1;;2123:13;2137:26;;;;;;;;;;:37;;:40;;2235:1;;2123:13;;;2175:1;;2137:40;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;2137:40:1;2123:55;;;;;;;;;;;;:88;;;:113;;;;:::i;:::-;-1:-1:-1;;;;;2051:26:1;;2037:13;2051:26;;;;;;;;;;:37;;:40;;2037:13;;2051:37;2089:1;;2051:40;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;2051:40:1;2037:55;;;;;;;;;;;;:62;;:199;2013:3;;;;:::i;:::-;;;;1951:301;;;;1193:1070;1179:2164;;;2284:11;2319:9;2314:587;-1:-1:-1;;;;;2338:26:1;;:13;:26;;;;;;;;;;:36;;;2334:40;;2314:587;;;-1:-1:-1;;;;;2500:26:1;;2486:13;2500:26;;;;;;;;;;:37;;:40;;2486:13;;2500:37;2538:1;;2500:40;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;2500:40:1;2486:55;;;;;;;;;;;;:88;;;:113;;2500:40;2486:113;:::i;:::-;-1:-1:-1;;;;;2414:26:1;;2400:13;2414:26;;;;;;;;;;:37;;:40;;2400:13;;2414:37;2452:1;;2414:40;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;2414:40:1;2400:55;;;;;;;;;;;;:62;;:199;2630:20;;2624:26;;:3;:26;:::i;:::-;2618:32;;2865:20;;2754:13;:55;2768:13;:26;2782:11;-1:-1:-1;;;;;2768:26:1;-1:-1:-1;;;;;2768:26:1;;;;;;;;;;;;:37;;2806:1;2768:40;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;2768:40:1;2754:55;;;;;;;;;;;;:87;;;:131;;;;:::i;:::-;-1:-1:-1;;;;;2683:26:1;;2669:13;2683:26;;;;;;;;;;:37;;:40;;2669:13;;2683:37;2721:1;;2683:40;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;2683:40:1;2669:55;;;;;;;;;;;;:61;;:216;2376:3;;;;:::i;:::-;;;;2314:587;;;-1:-1:-1;;;;;;2967:26:1;;:13;:26;;;;;;;;;;:32;;;:55;;3019:3;;2967:55;:::i;:::-;-1:-1:-1;;;;;2915:26:1;;:13;:26;;;;;;;;;;:32;;:107;;;;3037:295;-1:-1:-1;;;;;3061:26:1;;:13;:26;;;;;;;;;;:34;;;3057:38;;3037:295;;;-1:-1:-1;;;;;3219:26:1;;3205:13;3219:26;;;;;;;;;;:35;;:38;;3315:1;;3205:13;;;3255:1;;3219:38;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;3219:38:1;3205:53;;;;;;;;;;;;:86;;;:111;;;;:::i;:::-;-1:-1:-1;;;;;3135:26:1;;3121:13;3135:26;;;;;;;;;;:35;;:38;;3121:13;;3135:35;3171:1;;3135:38;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;3135:38:1;3121:53;;;;;;;;;;;;:60;;:195;3097:3;;;;:::i;:::-;;;;3037:295;;;;2269:1074;1100:2250;;:::o;5206:1314:0:-;5344:19;:26;5504:16;;5293:19;;5344:26;5330:11;;;;5475:45;;5344:26;5475:45;:::i;:::-;5444:87;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;5407:124;;5547:9;5542:939;5566:3;5562:1;:7;5542:939;;;5591:16;5610:19;5630:1;5610:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;5610:22:0;5652:23;;;;;;;;;;;:43;;;5610:22;;-1:-1:-1;5652:43:0;;5647:823;;5744:635;;;;;;;;-1:-1:-1;;;;;5791:23:0;;;5716:25;5791:23;;;;;;;;;;:35;;;;;5744:635;;5855:23;;;;;;5791:35;5855:28;;;5744:635;;5716:25;;5744:635;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5915:13;:23;5929:8;-1:-1:-1;;;;;5915:23:0;-1:-1:-1;;;;;5915:23:0;;;;;;;;;;;;:31;;5744:635;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;5744:635:0;;;-1:-1:-1;;;;;;;5978:23:0;;:13;:23;;;5744:635;5978:23;;;;;;;:31;;;;5744:635;;;;6043:33;;;;5744:635;;;;;;;6105:29;;;;5744:635;;;;6178:43;;;;;;5744:635;;;;;;6250:23;;;;:28;;5744:635;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6319:13;:23;6333:8;-1:-1:-1;;;;;6319:23:0;-1:-1:-1;;;;;6319:23:0;;;;;;;;;;;;:40;;;5744:635;;;5716:663;;6420:7;6398:14;6413:3;6398:19;;;;;;;;:::i;:::-;;;;;;;;;;:29;6446:8;6453:1;6446:8;;:::i;:::-;;;5697:773;5647:823;-1:-1:-1;5571:3:0;;;;:::i;:::-;;;;5542:939;;;-1:-1:-1;6498:14:0;5206:1314;-1:-1:-1;;;5206:1314:0:o;3240:192::-;-1:-1:-1;;;;;3374:26:0;3308:4;3374:26;;;;;;;;;;;3346:10;3374:45;;:33;;:45;;;;;;;;;:50;;3240:192::o;7704:885::-;-1:-1:-1;;;;;7949:35:0;;:13;:35;;;;;;;;;;:52;;;:57;7927:139;;;;-1:-1:-1;;;7927:139:0;;9003:2:2;7927:139:0;;;8985:21:2;;;9022:18;;;9015:30;9081:34;9061:18;;;9054:62;9133:18;;7927:139:0;;;;;;;;;-1:-1:-1;;;;;8079:35:0;;:13;:35;;;;;;;;;;:70;;-1:-1:-1;;;;;;8079:70:0;;;;;;;8160:40;:60;8203:17;8160:40;:60;:::i;:::-;-1:-1:-1;;;;;;8231:35:0;;:13;:35;;;;;;;;;;:43;;:58;8277:12;8231:43;:58;:::i;:::-;-1:-1:-1;;;;;;8300:35:0;;:13;:35;;;;;;;;;;:40;;:54;8343:11;8300:40;:54;:::i;:::-;-1:-1:-1;8420:13:0;:4;8427:6;8420:13;:::i;:::-;-1:-1:-1;;;;;8365:35:0;;:13;:35;;;;;;;;;;:52;;:68;8488:34;8379:20;8488:12;:34::i;:::-;:36;;8523:1;8488:36;:::i;:::-;-1:-1:-1;;;;;8444:35:0;;;:13;:35;;;;;;;;;;:41;;:80;;;;8535:19;:46;;;;;;;;;;;;;;;-1:-1:-1;;;;;;8535:46:0;;;;;;;-1:-1:-1;;;;7704:885:0:o;13341:1165:1:-;-1:-1:-1;;;;;13429:31:1;;;;;;:18;:31;;;;;:44;;;;;:53;;;;13425:1074;;-1:-1:-1;;;;;13499:26:1;;13548:5;13499:26;;;;;;;;;;:46;;:54;;-1:-1:-1;;13499:54:1;;;13568:18;:23;;13499:54;;13548:5;13568:23;;13499:54;;13568:23;:::i;:::-;;;;-1:-1:-1;;;;;;;13606:27:1;;13636:5;13606:27;;;:14;:27;;;;;:35;;-1:-1:-1;;13606:35:1;;;13636:5;13690:441;13714:19;:26;13710:30;;13690:441;;;13792:13;:37;13806:19;13826:1;13806:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;13806:22:1;13792:37;;;;;;;;;;;;:57;;;;;:138;;;;;13886:13;:37;13900:19;13920:1;13900:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;13900:22:1;13886:37;;;;;;;;;;;;:44;;;13874:56;;13792:138;13766:350;;;13985:13;:37;13999:19;14019:1;13999:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;13999:22:1;13985:37;;;;;;;;;;;;:44;;;14073:19;:22;;13985:44;;-1:-1:-1;14052:15:1;;14093:1;;14073:22;;;;;;:::i;:::-;;;;;;;;;;;;;14052:44;;14073:22;14052:44;;;;;;;;;;;;;;-1:-1:-1;;;;;;14052:44:1;-1:-1:-1;;;;;14073:22:1;;;14052:44;;;;;;13766:350;13742:3;;;;:::i;:::-;;;;13690:441;;;;14152:9;14147:174;14171:15;:22;14167:26;;14147:174;;;14195:3;;;;:::i;:::-;;;;14147:174;;;-1:-1:-1;14356:15:1;:22;14337:16;14393:95;14417:8;14413:1;:12;14393:95;;;14451:15;:21;;;;;;;:::i;:::-;;;;;;;;;;-1:-1:-1;;14451:21:1;;;;;-1:-1:-1;;;;;;14451:21:1;;;;;;14427:3;;;;:::i;:::-;;;;14393:95;;3543:274:0;-1:-1:-1;;;;;3670:23:0;;3649:4;3670:23;;;;;;;;;;:40;;;:55;-1:-1:-1;3666:144:0;;;-1:-1:-1;3749:4:0;3742:11;;3666:144;-1:-1:-1;3793:5:0;3666:144;3543:274;;;;:::o;10399:488:1:-;-1:-1:-1;;;;;10551:31:1;;;;;;:18;:31;;;;;;;:57;;-1:-1:-1;;;;;;10551:57:1;;;;;;10619:35;;;;:45;;10551:57;10619:45;;;;;;;;;;;;10660:3;10619:45;;:::i;:::-;-1:-1:-1;;;;;;10675:31:1;;;;;;:18;:31;;;;;:67;;:87;;;10840:39;10745:17;10873:6;10840:39;:::i;:::-;-1:-1:-1;;;;;10773:31:1;;;;;;;:18;:31;;;;;:51;;:106;;;;-1:-1:-1;;10399:488:1:o;6844:233::-;-1:-1:-1;;;;;6957:25:1;;;;;;:12;:25;;;;;:33;;;:50;;7006:1;6957:50;:::i;:::-;-1:-1:-1;;;;;6908:25:1;;;;;;;:12;:25;;;;;;;:33;;;:99;;;;7018:34;;;;:51;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;7018:51:1;7058:10;7018:51;;;6844:233::o;3917:1189:0:-;4053:19;:26;4168:16;;4002:19;;4053:26;4039:11;;;;4151:34;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;4116:69;;4201:9;4196:873;4220:3;4216:1;:7;4196:873;;;4245:16;4264:19;4284:1;4264:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;4264:22:0;4305:23;;;;;;;;;;;:43;;;4264:22;;-1:-1:-1;4305:43:0;;4301:757;;;-1:-1:-1;;;;;4400:23:0;;;4369:28;4400:23;;;;;;;;;;;4474:491;;;;;;;;4521:19;;;;;4474:491;;4521:19;4569:12;;4474:491;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4613:7;:15;;4474:491;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;4474:491:0;;;-1:-1:-1;;4660:15:0;;;;4474:491;;;;4709:17;;;;4474:491;;;;4755:13;;;;4474:491;;;;4812:27;;;;;;4474:491;;;;;;4868:12;;;4474:491;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4921:7;:24;;;4474:491;;;4442:523;;5004:11;4984:12;4997:3;4984:17;;;;;;;;:::i;:::-;;;;;;;;;;:31;5034:8;5041:1;5034:8;;:::i;:::-;;;4350:708;;4301:757;-1:-1:-1;4225:3:0;;;;:::i;:::-;;;;4196:873;;3470:203:1;-1:-1:-1;;;;;3533:26:1;;:13;:26;;;;;;;;;;:46;;:53;;-1:-1:-1;;3533:53:1;3582:4;3533:53;;;;;;3597:18;:23;;3582:4;;3597:18;;:23;;3582:4;;3597:23;:::i;:::-;;;;-1:-1:-1;;;;;;;3631:27:1;;;;;:14;:27;;;;;:34;;-1:-1:-1;;3631:34:1;3661:4;3631:34;;;3470:203::o;9689:289:0:-;9791:4;9875:18;;9896:2;9875:23;;;;:::i;:::-;-1:-1:-1;;;;;9831:26:0;;:13;:26;;;;;;;;;;:34;;;:40;;9868:3;9831:40;:::i;:::-;:67;9813:135;;-1:-1:-1;9932:4:0;;9689:289;-1:-1:-1;9689:289:0:o;9813:135::-;-1:-1:-1;9965:5:0;;9689:289;-1:-1:-1;9689:289:0:o;7486:403:1:-;-1:-1:-1;;;;;7625:25:1;;7555:18;7625:25;;;:12;:25;;;;;:35;;;;7576:33;;;;;:84;;7625:35;7576:84;:::i;:::-;7555:105;-1:-1:-1;7718:15:1;7555:105;7731:2;7718:15;:::i;:::-;-1:-1:-1;;;;;7675:25:1;;;;;;:12;:25;;;;;:33;;;:39;;7711:3;7675:39;:::i;:::-;:58;7671:211;;-1:-1:-1;;;;;7750:25:1;;;;;;:12;:25;;;;;:36;;:43;;-1:-1:-1;;7750:43:1;7789:4;7750:43;;;7671:211;;;-1:-1:-1;;;;;;7826:25:1;7865:5;7826:25;;;:12;:25;;;;;:36;;:44;;-1:-1:-1;;7826:44:1;;;7486:403::o;11663:443::-;-1:-1:-1;;;;;11814:31:1;;11738:18;11814:31;;;:18;:31;;;;;:41;;;;11759:39;;;;;:96;;11814:41;11759:96;:::i;:::-;11738:117;-1:-1:-1;11919:15:1;11738:117;11932:2;11919:15;:::i;:::-;-1:-1:-1;;;;;11870:31:1;;;;;;:18;:31;;;;;:39;;;:45;;11912:3;11870:45;:::i;:::-;:64;11866:233;;-1:-1:-1;;;;;11951:31:1;;;;;;:18;:31;;;;;:44;;:51;;-1:-1:-1;;11951:51:1;11998:4;11951:51;;;11866:233;;;-1:-1:-1;;;;;;12035:31:1;12082:5;12035:31;;;:18;:31;;;;;:44;;:52;;-1:-1:-1;;12035:52:1;;;11663:443::o;5002:641::-;5088:15;:22;5069:16;5121:87;5145:8;5141:1;:12;5121:87;;;5175:15;:21;;;;;;;:::i;:::-;;;;;;;;;;-1:-1:-1;;5175:21:1;;;;;-1:-1:-1;;;;;;5175:21:1;;;;;;5155:3;;;;:::i;:::-;;;;5121:87;;;;5237:9;5218:202;-1:-1:-1;;;;;5269:26:1;;:13;:26;;;;;;;;;;:35;;:42;5265:46;;5218:202;;;-1:-1:-1;;;;;5361:26:1;;5403:5;5361:26;;;;;;;;;;:35;;:38;;5356:4;;5403:5;;5397:1;;5361:38;;;;;;:::i;:::-;;;;;;;;;;;;;;-1:-1:-1;;;;;5361:38:1;5356:44;;;;;;;;;;;;:52;;-1:-1:-1;;5356:52:1;;;;;;;;;;5326:3;;;;:::i;:::-;;;;5218:202;;;;5449:9;5430:206;-1:-1:-1;;;;;5481:26:1;;:13;:26;;;;;;;;;;:37;;:44;5477:48;;5430:206;;;-1:-1:-1;;;;;5575:26:1;;5619:5;5575:26;;;;;;;;;;:37;;:40;;5570:4;;5619:5;;5613:1;;5575:40;;;;;;:::i;:::-;;;;;;;;;;;;;;-1:-1:-1;;;;;5575:40:1;5570:46;;;;;;;;;;;;:54;;-1:-1:-1;;5570:54:1;;;;;;;;;;5540:3;;;;:::i;:::-;;;;5430:206;;;;5058:585;5002:641;:::o;6600:201:0:-;6670:17;:24;6651:16;6705:89;6729:8;6725:1;:12;6705:89;;;6759:17;:23;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;6759:23:0;;;;;;;;;-1:-1:-1;;;;;;6759:23:0;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;6759:23:0;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;6759:23:0;;;;;;;;;;;;;;;-1:-1:-1;;6759:23:0;;;;;6739:3;;;;:::i;:::-;;;;6705:89;;3801:759:1;3856:16;3904:9;3885:201;-1:-1:-1;;;;;3936:26:1;;:13;:26;;;;;;;;;;:35;;:42;3932:46;;3885:201;;;4070:4;4023;:44;4028:13;:26;4042:11;-1:-1:-1;;;;;4028:26:1;-1:-1:-1;;;;;4028:26:1;;;;;;;;;;;;:35;;4064:1;4028:38;;;;;;;;:::i;:::-;;;;;;;;;;;;;;-1:-1:-1;;;;;4028:38:1;4023:44;;;;;;;;;;;;:51;;-1:-1:-1;;4023:51:1;;;;;;;;;;3993:3;;;;:::i;:::-;;;;3885:201;;;;4115:9;4096:205;-1:-1:-1;;;;;4147:26:1;;:13;:26;;;;;;;;;;:37;;:44;4143:48;;4096:205;;;4285:4;4236;:46;4241:13;:26;4255:11;-1:-1:-1;;;;;4241:26:1;-1:-1:-1;;;;;4241:26:1;;;;;;;;;;;;:37;;4279:1;4241:40;;;;;;;;:::i;:::-;;;;;;;;;;;;;;-1:-1:-1;;;;;4241:40:1;4236:46;;;;;;;;;;;;:53;;-1:-1:-1;;4236:53:1;;;;;;;;;;4206:3;;;;:::i;:::-;;;;4096:205;;;;4318:9;4313:205;4337:19;:26;4333:30;;4313:205;;;4389:4;:28;4394:19;4414:1;4394:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;4394:22:1;4389:28;;;;;;;;;;;;;;;:37;;;;4385:122;;4447:15;4468:19;4488:1;4468:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;4447:44;;4468:22;4447:44;;;;;;;;;;;;;;-1:-1:-1;;;;;;4447:44:1;-1:-1:-1;;;;;4468:22:1;;;4447:44;;;;;;4385:122;4365:3;;;;:::i;:::-;;;;4313:205;;;;4537:15;4530:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4530:22:1;;;;;;;;;;;;;;;;;;;;;;;3801:759;;;:::o;6111:654::-;-1:-1:-1;;;;;6311:34:1;;;;;;:12;:34;;;;;:69;;-1:-1:-1;;;;;;6311:69:1;;;;;;;6391:42;:57;6436:12;6391:42;:57;:::i;:::-;-1:-1:-1;;;;;;6459:34:1;;;;;;:12;:34;;;;;:39;;:53;6501:11;6459:39;:53;:::i;:::-;-1:-1:-1;;;;;;6523:34:1;;;;;;:12;:34;;;;;:45;;:65;;;6658:39;6571:17;6691:6;6658:39;:::i;:::-;-1:-1:-1;;;;;6599:34:1;;;;;;:12;:34;;;;;:43;;:98;6733:20;;:24;;6756:1;6733:24;:::i;:::-;6710:20;:47;-1:-1:-1;;;;6111:654:1:o;9109:1141::-;-1:-1:-1;;;;;9182:25:1;;;;;;:12;:25;;;;;:36;;;;;:44;;:36;:44;9178:1065;;-1:-1:-1;;;;;9243:26:1;;9292:5;9243:26;;;;;;;;;;:46;;:54;;-1:-1:-1;;9243:54:1;;;9312:18;:23;;9243:54;;9292:5;9312:23;;9243:54;;9312:23;:::i;:::-;;;;-1:-1:-1;;;;;;;9350:27:1;;9380:5;9350:27;;;:14;:27;;;;;:35;;-1:-1:-1;;9350:35:1;;;9380:5;9434:441;9458:19;:26;9454:30;;9434:441;;;9536:13;:37;9550:19;9570:1;9550:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;9550:22:1;9536:37;;;;;;;;;;;;:57;;;;;:138;;;;;9630:13;:37;9644:19;9664:1;9644:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;9644:22:1;9630:37;;;;;;;;;;;;:44;;;9618:56;;9536:138;9510:350;;;9729:13;:37;9743:19;9763:1;9743:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;9743:22:1;9729:37;;;;;;;;;;;;:44;;;9817:19;:22;;9729:44;;-1:-1:-1;9796:15:1;;9837:1;;9817:22;;;;;;:::i;:::-;;;;;;;;;;;;;9796:44;;9817:22;9796:44;;;;;;;;;;;;;;-1:-1:-1;;;;;;9796:44:1;-1:-1:-1;;;;;9817:22:1;;;9796:44;;;;;;9510:350;9486:3;;;;:::i;:::-;;;;9434:441;;;;9896:9;9891:174;9915:15;:22;9911:26;;9891:174;;;9939:3;;;;:::i;:::-;;;;9891:174;;;-1:-1:-1;10100:15:1;:22;10081:16;10137:95;10161:8;10157:1;:12;10137:95;;;10195:15;:21;;;;;;;:::i;:::-;;;;;;;;;;-1:-1:-1;;10195:21:1;;;;;-1:-1:-1;;;;;;10195:21:1;;;;;;10171:3;;;;:::i;:::-;;;;10137:95;;10974:248;-1:-1:-1;;;;;11090:31:1;;;;;;:18;:31;;;;;:39;;;;;:56;;;:::i;:::-;-1:-1:-1;;;;;11035:31:1;;;;;;;:18;:31;;;;;;;:39;;;;:111;;;;11157:40;;:57;;;;;;;;;;;;;;-1:-1:-1;;;;;;11157:57:1;11203:10;11157:57;;;10974:248::o;4662:273::-;4715:9;4710:218;4734:15;:22;4730:26;;4710:218;;;4896:20;;4837:13;:33;4851:15;4867:1;4851:18;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;4851:18:1;4837:33;;;;;;;;;;;;:39;;;:79;;;;:::i;:::-;4778:13;:33;4792:15;4808:1;4792:18;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;4792:18:1;4778:33;;;;;;;;;;;;:39;;:138;4758:3;;;;:::i;:::-;;;;4710:218;;2975:190:0;-1:-1:-1;;;;;3107:26:0;3041:4;3107:26;;;;;;;;;;;3079:10;3107:45;;:33;;:45;;;;;;;;3156:1;3107:50;;2975:190::o;8642:456::-;-1:-1:-1;;;;;6886:23:0;;8762:4;6886:23;;;;;;;;;;:40;;;8742:8;;6886:45;;6864:131;;;;-1:-1:-1;;;6864:131:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;7029:23:0;;:13;:23;;;;;;;;;;:43;;;;;7028:44;7006:124;;;;-1:-1:-1;;;7006:124:0;;12278:2:2;7006:124:0;;;12260:21:2;12317:2;12297:18;;;12290:30;12356:32;12336:18;;;12329:60;12406:18;;7006:124:0;12076:354:2;7006:124:0;7177:10;7163:13;:25;;;;;;;;;;:42;;;:47;;;;:113;;-1:-1:-1;7245:10:0;7231:13;:25;;;;;;;;;;:45;;;;;7163:113;7141:221;;;;-1:-1:-1;;;7141:221:0;;;;;;;:::i;:::-;7396:24;7411:8;7396:14;:24::i;:::-;7395:25;:56;;;;;7425:26;7442:8;7425:16;:26::i;:::-;7424:27;7395:56;7373:152;;;;-1:-1:-1;;;7373:152:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;8778:23:0;::::1;:13;:23:::0;;;::::1;::::0;;;;;;:31:::1;;:36:::0;;8813:1:::1;::::0;8778:13;:36:::1;::::0;8813:1;;8778:36:::1;:::i;:::-;::::0;;;-1:-1:-1;;;;;;;8825:23:0;::::1;:13;:23:::0;;;::::1;::::0;;;;;;;:32:::1;::::0;::::1;:49:::0;;::::1;::::0;::::1;::::0;;;;;;;;::::1;::::0;;-1:-1:-1;;;;;;8825:49:0::1;8863:10;8825:49:::0;;::::1;::::0;;;8885:42;;:30:::1;;:42:::0;;;;;:46;;-1:-1:-1;;8885:46:0::1;8930:1;8885:46;::::0;;8946:34:::1;8839:8:::0;8967:12;8946:10:::1;:34::i;:::-;8942:126;;;8997:33;9021:8;8997:23;:33::i;:::-;;9052:4;9045:11;;;;8942:126;9085:5;9078:12;;7536:1;8642:456:::0;;;;;:::o;2693:209::-;-1:-1:-1;;;;;2644:23:0;;2754:7;2644:23;;;;;;;;;;:33;;;;2415:31;;;;;2794:18;;:58;;2415:31;2794:58;:::i;:::-;:100;;;;:::i;12226:957:1:-;-1:-1:-1;;;;;12303:31:1;;;;;;:18;:31;;;;;:44;;;;;:53;;;;12299:877;;12396:9;12373:386;-1:-1:-1;;;;;12432:26:1;;:13;:26;;;;;;;;;;:35;;:42;12428:46;;12373:386;;;12723:20;;-1:-1:-1;;;;;12628:26:1;;12614:13;12628:26;;;;;;;;;;:35;;:38;;12614:13;;12628:35;12664:1;;12628:38;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;12628:38:1;12614:53;;;;;;;;;;;;:85;;;:129;;;;:::i;:::-;-1:-1:-1;;;;;12545:26:1;;12531:13;12545:26;;;;;;;;;;:35;;:38;;12531:13;;12545:35;12581:1;;12545:38;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;12545:38:1;12531:53;;;;;;;;;;;;:59;;:212;12493:3;;;;:::i;:::-;;;;12373:386;;;;12796:9;12773:392;-1:-1:-1;;;;;12832:26:1;;:13;:26;;;;;;;;;;:37;;:44;12828:48;;12773:392;;;13129:20;;-1:-1:-1;;;;;13032:26:1;;13018:13;13032:26;;;;;;;;;;:37;;:40;;13018:13;;13032:37;13070:1;;13032:40;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;13032:40:1;13018:55;;;;;;;;;;;;:87;;;:131;;;;:::i;:::-;-1:-1:-1;;;;;12947:26:1;;12933:13;12947:26;;;;;;;;;;:37;;:40;;12933:13;;12947:37;12985:1;;12947:40;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;12947:40:1;12933:55;;;;;;;;;;;;:61;;:216;12895:3;;;;:::i;:::-;;;;12773:392;;9153:457:0;-1:-1:-1;;;;;6886:23:0;;9275:4;6886:23;;;;;;;;;;:40;;;9256:8;;6886:45;;6864:131;;;;-1:-1:-1;;;6864:131:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;7029:23:0;;:13;:23;;;;;;;;;;:43;;;;;7028:44;7006:124;;;;-1:-1:-1;;;7006:124:0;;12278:2:2;7006:124:0;;;12260:21:2;12317:2;12297:18;;;12290:30;12356:32;12336:18;;;12329:60;12406:18;;7006:124:0;12076:354:2;7006:124:0;7177:10;7163:13;:25;;;;;;;;;;:42;;;:47;;;;:113;;-1:-1:-1;7245:10:0;7231:13;:25;;;;;;;;;;:45;;;;;7163:113;7141:221;;;;-1:-1:-1;;;7141:221:0;;;;;;;:::i;:::-;7396:24;7411:8;7396:14;:24::i;:::-;7395:25;:56;;;;;7425:26;7442:8;7425:16;:26::i;:::-;7424:27;7395:56;7373:152;;;;-1:-1:-1;;;7373:152:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;9292:23:0;::::1;:13;:23:::0;;;::::1;::::0;;;;;;:33:::1;;:38:::0;;9329:1:::1;::::0;9292:13;:38:::1;::::0;9329:1;;9292:38:::1;:::i;:::-;::::0;;;-1:-1:-1;;;;;;;9341:23:0;::::1;:13;:23:::0;;;::::1;::::0;;;;;;;:34:::1;::::0;::::1;:51:::0;;::::1;::::0;;::::1;::::0;;;;;;;;::::1;::::0;;-1:-1:-1;;;;;;9341:51:0::1;9381:10;9341:51:::0;;::::1;::::0;;;9403:42;;:30:::1;::::0;;::::1;:42:::0;;;;;;:46;;-1:-1:-1;;9403:46:0::1;::::0;;::::1;::::0;;9464:34:::1;9355:8:::0;9485:12;9464:10:::1;:34::i;:::-;9460:120;;;9522:33;9546:8;9522:23;:33::i;:::-;9515:40;;;;-1:-1:-1::0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;:::i;:::-;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:173:2:-;82:20;;-1:-1:-1;;;;;131:31:2;;121:42;;111:70;;177:1;174;167:12;111:70;14:173;;;:::o;192:186::-;251:6;304:2;292:9;283:7;279:23;275:32;272:52;;;320:1;317;310:12;272:52;343:29;362:9;343:29;:::i;:::-;333:39;192:186;-1:-1:-1;;;192:186:2:o;383:347::-;448:6;456;509:2;497:9;488:7;484:23;480:32;477:52;;;525:1;522;515:12;477:52;548:29;567:9;548:29;:::i;:::-;538:39;;627:2;616:9;612:18;599:32;674:5;667:13;660:21;653:5;650:32;640:60;;696:1;693;686:12;640:60;719:5;709:15;;;383:347;;;;;:::o;844:423::-;886:3;924:5;918:12;951:6;946:3;939:19;976:1;986:162;1000:6;997:1;994:13;986:162;;;1062:4;1118:13;;;1114:22;;1108:29;1090:11;;;1086:20;;1079:59;1015:12;986:162;;;990:3;1193:1;1186:4;1177:6;1172:3;1168:16;1164:27;1157:38;1256:4;1249:2;1245:7;1240:2;1232:6;1228:15;1224:29;1219:3;1215:39;1211:50;1204:57;;;844:423;;;;:::o;1368:1964::-;1562:4;1591:2;1631;1620:9;1616:18;1661:2;1650:9;1643:21;1684:6;1719;1713:13;1750:6;1742;1735:22;1776:2;1766:12;;1809:2;1798:9;1794:18;1787:25;;1871:2;1861:6;1858:1;1854:14;1843:9;1839:30;1835:39;1909:2;1901:6;1897:15;1930:1;1940:1363;1954:6;1951:1;1948:13;1940:1363;;;2019:22;;;-1:-1:-1;;2015:36:2;2003:49;;2075:13;;2149:9;;-1:-1:-1;;;;;801:31:2;789:44;;2111:6;2214:2;2210;2206:11;2200:18;2255:2;2250;2242:6;2238:15;2231:27;2285:48;2329:2;2321:6;2317:15;2303:12;2285:48;:::i;:::-;2271:62;;;2382:2;2378;2374:11;2368:18;2435:6;2427;2423:19;2418:2;2410:6;2406:15;2399:44;2470:41;2504:6;2488:14;2470:41;:::i;:::-;2534:4;2581:11;;;2575:18;2558:15;;;2551:43;2617:4;2664:11;;;2658:18;2641:15;;;2634:43;2700:4;2747:11;;;2741:18;2724:15;;;2717:43;2783:4;2828:11;;;2822:18;1342:13;1335:21;2885:15;;;1323:34;2924:4;2969:11;;;2963:18;3018:19;;;3001:15;;;2994:44;2456:55;;-1:-1:-1;2924:4:2;-1:-1:-1;3065:41:2;2456:55;2963:18;3065:41;:::i;:::-;3130:6;3180:12;;;3174:19;3156:16;;;;3149:45;;;;-1:-1:-1;;3281:12:2;;;;3051:55;-1:-1:-1;3246:15:2;;;;1976:1;1969:9;1940:1363;;;-1:-1:-1;3320:6:2;;1368:1964;-1:-1:-1;;;;;;;;1368:1964:2:o;3529:127::-;3590:10;3585:3;3581:20;3578:1;3571:31;3621:4;3618:1;3611:15;3645:4;3642:1;3635:15;3661:719;3704:5;3757:3;3750:4;3742:6;3738:17;3734:27;3724:55;;3775:1;3772;3765:12;3724:55;3811:6;3798:20;3837:18;3874:2;3870;3867:10;3864:36;;;3880:18;;:::i;:::-;3955:2;3949:9;3923:2;4009:13;;-1:-1:-1;;4005:22:2;;;4029:2;4001:31;3997:40;3985:53;;;4053:18;;;4073:22;;;4050:46;4047:72;;;4099:18;;:::i;:::-;4139:10;4135:2;4128:22;4174:2;4166:6;4159:18;4220:3;4213:4;4208:2;4200:6;4196:15;4192:26;4189:35;4186:55;;;4237:1;4234;4227:12;4186:55;4301:2;4294:4;4286:6;4282:17;4275:4;4267:6;4263:17;4250:54;4348:1;4341:4;4336:2;4328:6;4324:15;4320:26;4313:37;4368:6;4359:15;;;;;;3661:719;;;;:::o;4385:887::-;4510:6;4518;4526;4534;4542;4595:3;4583:9;4574:7;4570:23;4566:33;4563:53;;;4612:1;4609;4602:12;4563:53;4635:29;4654:9;4635:29;:::i;:::-;4625:39;;4715:2;4704:9;4700:18;4687:32;4738:18;4779:2;4771:6;4768:14;4765:34;;;4795:1;4792;4785:12;4765:34;4818:50;4860:7;4851:6;4840:9;4836:22;4818:50;:::i;:::-;4808:60;;4921:2;4910:9;4906:18;4893:32;4877:48;;4950:2;4940:8;4937:16;4934:36;;;4966:1;4963;4956:12;4934:36;4989:52;5033:7;5022:8;5011:9;5007:24;4989:52;:::i;:::-;4979:62;;5094:2;5083:9;5079:18;5066:32;5050:48;;5123:2;5113:8;5110:16;5107:36;;;5139:1;5136;5129:12;5107:36;;5162:52;5206:7;5195:8;5184:9;5180:24;5162:52;:::i;:::-;4385:887;;;;-1:-1:-1;4385:887:2;;5261:3;5246:19;5233:33;;4385:887;-1:-1:-1;;;4385:887:2:o;5277:254::-;5345:6;5353;5406:2;5394:9;5385:7;5381:23;5377:32;5374:52;;;5422:1;5419;5412:12;5374:52;5445:29;5464:9;5445:29;:::i;:::-;5435:39;5521:2;5506:18;;;;5493:32;;-1:-1:-1;;;5277:254:2:o;5536:464::-;5623:6;5631;5639;5692:2;5680:9;5671:7;5667:23;5663:32;5660:52;;;5708:1;5705;5698:12;5660:52;5731:29;5750:9;5731:29;:::i;:::-;5721:39;;5811:2;5800:9;5796:18;5783:32;5838:18;5830:6;5827:30;5824:50;;;5870:1;5867;5860:12;5824:50;5893;5935:7;5926:6;5915:9;5911:22;5893:50;:::i;:::-;5883:60;;;5990:2;5979:9;5975:18;5962:32;5952:42;;5536:464;;;;;:::o;6187:658::-;6358:2;6410:21;;;6480:13;;6383:18;;;6502:22;;;6329:4;;6358:2;6581:15;;;;6555:2;6540:18;;;6329:4;6624:195;6638:6;6635:1;6632:13;6624:195;;;6703:13;;-1:-1:-1;;;;;6699:39:2;6687:52;;6794:15;;;;6759:12;;;;6735:1;6653:9;6624:195;;;-1:-1:-1;6836:3:2;;6187:658;-1:-1:-1;;;;;;6187:658:2:o;6850:686::-;6956:6;6964;6972;6980;7033:3;7021:9;7012:7;7008:23;7004:33;7001:53;;;7050:1;7047;7040:12;7001:53;7073:29;7092:9;7073:29;:::i;:::-;7063:39;;7153:2;7142:9;7138:18;7125:32;7176:18;7217:2;7209:6;7206:14;7203:34;;;7233:1;7230;7223:12;7203:34;7256:50;7298:7;7289:6;7278:9;7274:22;7256:50;:::i;:::-;7246:60;;7359:2;7348:9;7344:18;7331:32;7315:48;;7388:2;7378:8;7375:16;7372:36;;;7404:1;7401;7394:12;7372:36;;7427:52;7471:7;7460:8;7449:9;7445:24;7427:52;:::i;:::-;6850:686;;;;-1:-1:-1;7417:62:2;;7526:2;7511:18;7498:32;;-1:-1:-1;;;6850:686:2:o;7749:127::-;7810:10;7805:3;7801:20;7798:1;7791:31;7841:4;7838:1;7831:15;7865:4;7862:1;7855:15;7881:125;7946:9;;;7967:10;;;7964:36;;;7980:18;;:::i;8011:127::-;8072:10;8067:3;8063:20;8060:1;8053:31;8103:4;8100:1;8093:15;8127:4;8124:1;8117:15;8143:128;8210:9;;;8231:11;;;8228:37;;;8245:18;;:::i;8276:135::-;8315:3;8336:17;;;8333:43;;8356:18;;:::i;:::-;-1:-1:-1;8403:1:2;8392:13;;8276:135::o;8416:380::-;8495:1;8491:12;;;;8538;;;8559:61;;8613:4;8605:6;8601:17;8591:27;;8559:61;8666:2;8658:6;8655:14;8635:18;8632:38;8629:161;;8712:10;8707:3;8703:20;8700:1;8693:31;8747:4;8744:1;8737:15;8775:4;8772:1;8765:15;8629:161;;8416:380;;;:::o;9288:545::-;9390:2;9385:3;9382:11;9379:448;;;9426:1;9451:5;9447:2;9440:17;9496:4;9492:2;9482:19;9566:2;9554:10;9550:19;9547:1;9543:27;9537:4;9533:38;9602:4;9590:10;9587:20;9584:47;;;-1:-1:-1;9625:4:2;9584:47;9680:2;9675:3;9671:12;9668:1;9664:20;9658:4;9654:31;9644:41;;9735:82;9753:2;9746:5;9743:13;9735:82;;;9798:17;;;9779:1;9768:13;9735:82;;;9739:3;;;9288:545;;;:::o;10009:1352::-;10135:3;10129:10;10162:18;10154:6;10151:30;10148:56;;;10184:18;;:::i;:::-;10213:97;10303:6;10263:38;10295:4;10289:11;10263:38;:::i;:::-;10257:4;10213:97;:::i;:::-;10365:4;;10429:2;10418:14;;10446:1;10441:663;;;;11148:1;11165:6;11162:89;;;-1:-1:-1;11217:19:2;;;11211:26;11162:89;-1:-1:-1;;9966:1:2;9962:11;;;9958:24;9954:29;9944:40;9990:1;9986:11;;;9941:57;11264:81;;10411:944;;10441:663;9235:1;9228:14;;;9272:4;9259:18;;-1:-1:-1;;10477:20:2;;;10595:236;10609:7;10606:1;10603:14;10595:236;;;10698:19;;;10692:26;10677:42;;10790:27;;;;10758:1;10746:14;;;;10625:19;;10595:236;;;10599:3;10859:6;10850:7;10847:19;10844:201;;;10920:19;;;10914:26;-1:-1:-1;;11003:1:2;10999:14;;;11015:3;10995:24;10991:37;10987:42;10972:58;10957:74;;10844:201;-1:-1:-1;;;;;11091:1:2;11075:14;;;11071:22;11058:36;;-1:-1:-1;10009:1352:2:o;11366:127::-;11427:10;11422:3;11418:20;11415:1;11408:31;11458:4;11455:1;11448:15;11482:4;11479:1;11472:15;11498:168;11571:9;;;11602;;11619:15;;;11613:22;;11599:37;11589:71;;11640:18;;:::i;11671:400::-;11873:2;11855:21;;;11912:2;11892:18;;;11885:30;11951:34;11946:2;11931:18;;11924:62;-1:-1:-1;;;12017:2:2;12002:18;;11995:34;12061:3;12046:19;;11671:400::o;12435:422::-;12637:2;12619:21;;;12676:2;12656:18;;;12649:30;12715:34;12710:2;12695:18;;12688:62;12786:28;12781:2;12766:18;;12759:56;12847:3;12832:19;;12435:422::o;12862:410::-;13064:2;13046:21;;;13103:2;13083:18;;;13076:30;13142:34;13137:2;13122:18;;13115:62;-1:-1:-1;;;13208:2:2;13193:18;;13186:44;13262:3;13247:19;;12862:410::o", + "sourcePath": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol", + "compiler": { + "name": "solc", + "version": "0.8.17+commit.8df45f5f" + }, + "ast": { + "absolutePath": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgOperation.sol", + "exportedSymbols": { + "OrgCreation": [ + 779 + ], + "OrgOperation": [ + 2045 + ] + }, + "id": 2046, + "license": "UNLICENSED", + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 781, + "literals": [ + "solidity", + "^", + "0.8", + ".9" + ], + "nodeType": "PragmaDirective", + "src": "40:23:1" + }, + { + "absolutePath": "c:/EthForAll/Eth-For-All/hardhat/contracts/OrgCreation.sol", + "file": "./OrgCreation.sol", + "id": 782, + "nameLocation": "-1:-1:-1", + "nodeType": "ImportDirective", + "scope": 2046, + "sourceUnit": 780, + "src": "65:27:1", + "symbolAliases": [], + "unitAlias": "" + }, + { + "abstract": false, + "baseContracts": [ + { + "baseName": { + "id": 783, + "name": "OrgCreation", + "nameLocations": [ + "121:11:1" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 779, + "src": "121:11:1" + }, + "id": 784, + "nodeType": "InheritanceSpecifier", + "src": "121:11:1" + } + ], + "canonicalName": "OrgOperation", + "contractDependencies": [], + "contractKind": "contract", + "fullyImplemented": true, + "id": 2045, + "linearizedBaseContracts": [ + 2045, + 779 + ], + "name": "OrgOperation", + "nameLocation": "105:12:1", + "nodeType": "ContractDefinition", + "nodes": [ + { + "canonicalName": "OrgOperation.Violation", + "id": 815, + "members": [ + { + "constant": false, + "id": 786, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "176:11:1", + "nodeType": "VariableDeclaration", + "scope": 815, + "src": "168:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 785, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "168:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 788, + "mutability": "mutable", + "name": "doc_cid", + "nameLocation": "205:7:1", + "nodeType": "VariableDeclaration", + "scope": 815, + "src": "198:14:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + }, + "typeName": { + "id": 787, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "198:6:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 790, + "mutability": "mutable", + "name": "desc", + "nameLocation": "230:4:1", + "nodeType": "VariableDeclaration", + "scope": 815, + "src": "223:11:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + }, + "typeName": { + "id": 789, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "223:6:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 792, + "mutability": "mutable", + "name": "upvotes", + "nameLocation": "253:7:1", + "nodeType": "VariableDeclaration", + "scope": 815, + "src": "245:15:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 791, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "245:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 794, + "mutability": "mutable", + "name": "downvotes", + "nameLocation": "279:9:1", + "nodeType": "VariableDeclaration", + "scope": 815, + "src": "271:17:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 793, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "271:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 797, + "mutability": "mutable", + "name": "upvoters", + "nameLocation": "309:8:1", + "nodeType": "VariableDeclaration", + "scope": 815, + "src": "299:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 795, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "299:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 796, + "nodeType": "ArrayTypeName", + "src": "299:9:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 800, + "mutability": "mutable", + "name": "downvoters", + "nameLocation": "338:10:1", + "nodeType": "VariableDeclaration", + "scope": 815, + "src": "328:20:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 798, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "328:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 799, + "nodeType": "ArrayTypeName", + "src": "328:9:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 802, + "mutability": "mutable", + "name": "number", + "nameLocation": "367:6:1", + "nodeType": "VariableDeclaration", + "scope": 815, + "src": "359:14:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 801, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "359:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 804, + "mutability": "mutable", + "name": "isOpen", + "nameLocation": "389:6:1", + "nodeType": "VariableDeclaration", + "scope": 815, + "src": "384:11:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 803, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "384:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 806, + "mutability": "mutable", + "name": "start_time", + "nameLocation": "414:10:1", + "nodeType": "VariableDeclaration", + "scope": 815, + "src": "406:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 805, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "406:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 808, + "mutability": "mutable", + "name": "end_time", + "nameLocation": "443:8:1", + "nodeType": "VariableDeclaration", + "scope": 815, + "src": "435:16:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 807, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "435:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 810, + "mutability": "mutable", + "name": "isViolated", + "nameLocation": "467:10:1", + "nodeType": "VariableDeclaration", + "scope": 815, + "src": "462:15:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 809, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "462:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 814, + "mutability": "mutable", + "name": "voters", + "nameLocation": "516:6:1", + "nodeType": "VariableDeclaration", + "scope": 815, + "src": "488:34:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "typeName": { + "id": 813, + "keyType": { + "id": 811, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "496:7:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "488:27:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + }, + "valueType": { + "id": 812, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "507:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + } + }, + "visibility": "internal" + } + ], + "name": "Violation", + "nameLocation": "147:9:1", + "nodeType": "StructDefinition", + "scope": 2045, + "src": "140:390:1", + "visibility": "public" + }, + { + "canonicalName": "OrgOperation.FinancialReport", + "id": 837, + "members": [ + { + "constant": false, + "id": 817, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "580:11:1", + "nodeType": "VariableDeclaration", + "scope": 837, + "src": "572:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 816, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "572:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 819, + "mutability": "mutable", + "name": "upvotes", + "nameLocation": "610:7:1", + "nodeType": "VariableDeclaration", + "scope": 837, + "src": "602:15:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 818, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "602:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 821, + "mutability": "mutable", + "name": "downvotes", + "nameLocation": "636:9:1", + "nodeType": "VariableDeclaration", + "scope": 837, + "src": "628:17:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 820, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "628:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 824, + "mutability": "mutable", + "name": "upvoters", + "nameLocation": "666:8:1", + "nodeType": "VariableDeclaration", + "scope": 837, + "src": "656:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 822, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "656:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 823, + "nodeType": "ArrayTypeName", + "src": "656:9:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 827, + "mutability": "mutable", + "name": "downvoters", + "nameLocation": "695:10:1", + "nodeType": "VariableDeclaration", + "scope": 837, + "src": "685:20:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 825, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "685:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 826, + "nodeType": "ArrayTypeName", + "src": "685:9:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 829, + "mutability": "mutable", + "name": "reportUploadStartTime", + "nameLocation": "724:21:1", + "nodeType": "VariableDeclaration", + "scope": 837, + "src": "716:29:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 828, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "716:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 831, + "mutability": "mutable", + "name": "reportUploadEndTime", + "nameLocation": "764:19:1", + "nodeType": "VariableDeclaration", + "scope": 837, + "src": "756:27:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 830, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "756:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 833, + "mutability": "mutable", + "name": "isReportTrue", + "nameLocation": "799:12:1", + "nodeType": "VariableDeclaration", + "scope": 837, + "src": "794:17:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 832, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "794:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 836, + "mutability": "mutable", + "name": "cid", + "nameLocation": "831:3:1", + "nodeType": "VariableDeclaration", + "scope": 837, + "src": "822:12:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr", + "typeString": "string[]" + }, + "typeName": { + "baseType": { + "id": 834, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "822:6:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "id": 835, + "nodeType": "ArrayTypeName", + "src": "822:8:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_storage_$dyn_storage_ptr", + "typeString": "string[]" + } + }, + "visibility": "internal" + } + ], + "name": "FinancialReport", + "nameLocation": "545:15:1", + "nodeType": "StructDefinition", + "scope": 2045, + "src": "538:304:1", + "visibility": "public" + }, + { + "constant": false, + "id": 842, + "mutability": "mutable", + "name": "violationMap", + "nameLocation": "880:12:1", + "nodeType": "VariableDeclaration", + "scope": 2045, + "src": "850:42:1", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation)" + }, + "typeName": { + "id": 841, + "keyType": { + "id": 838, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "858:7:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "850:29:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation)" + }, + "valueType": { + "id": 840, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 839, + "name": "Violation", + "nameLocations": [ + "869:9:1" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 815, + "src": "869:9:1" + }, + "referencedDeclaration": 815, + "src": "869:9:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage_ptr", + "typeString": "struct OrgOperation.Violation" + } + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 847, + "mutability": "mutable", + "name": "financialReportMap", + "nameLocation": "935:18:1", + "nodeType": "VariableDeclaration", + "scope": 2045, + "src": "899:54:1", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport)" + }, + "typeName": { + "id": 846, + "keyType": { + "id": 843, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "907:7:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Mapping", + "src": "899:35:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport)" + }, + "valueType": { + "id": 845, + "nodeType": "UserDefinedTypeName", + "pathNode": { + "id": 844, + "name": "FinancialReport", + "nameLocations": [ + "918:15:1" + ], + "nodeType": "IdentifierPath", + "referencedDeclaration": 837, + "src": "918:15:1" + }, + "referencedDeclaration": 837, + "src": "918:15:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage_ptr", + "typeString": "struct OrgOperation.FinancialReport" + } + } + }, + "visibility": "internal" + }, + { + "body": { + "id": 850, + "nodeType": "Block", + "src": "976:2:1", + "statements": [] + }, + "id": 851, + "implemented": true, + "kind": "constructor", + "modifiers": [], + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 848, + "nodeType": "ParameterList", + "parameters": [], + "src": "973:2:1" + }, + "returnParameters": { + "id": 849, + "nodeType": "ParameterList", + "parameters": [], + "src": "976:0:1" + }, + "scope": 2045, + "src": "962:16:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1098, + "nodeType": "Block", + "src": "1168:2182:1", + "statements": [ + { + "condition": { + "id": 858, + "name": "category", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 855, + "src": "1183:8:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 1096, + "nodeType": "Block", + "src": "2269:1074:1", + "statements": [ + { + "assignments": [ + 979 + ], + "declarations": [ + { + "constant": false, + "id": 979, + "mutability": "mutable", + "name": "sum", + "nameLocation": "2292:3:1", + "nodeType": "VariableDeclaration", + "scope": 1096, + "src": "2284:11:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 978, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2284:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 981, + "initialValue": { + "hexValue": "30", + "id": 980, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2298:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "2284:15:1" + }, + { + "body": { + "id": 1045, + "nodeType": "Block", + "src": "2381:520:1", + "statements": [ + { + "expression": { + "id": 1015, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 995, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "2400:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1002, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 996, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "2414:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 998, + "indexExpression": { + "id": 997, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "2428:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2414:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 999, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2441:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 21, + "src": "2414:37:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1001, + "indexExpression": { + "id": 1000, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 983, + "src": "2452:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2414:40:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2400:55:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1003, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "2456:6:1", + "memberName": "points", + "nodeType": "MemberAccess", + "referencedDeclaration": 31, + "src": "2400:62:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1014, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1004, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "2486:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1011, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 1005, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "2500:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1007, + "indexExpression": { + "id": 1006, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "2514:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2500:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1008, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2527:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 21, + "src": "2500:37:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1010, + "indexExpression": { + "id": 1009, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 983, + "src": "2538:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2500:40:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2486:55:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1012, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2568:6:1", + "memberName": "points", + "nodeType": "MemberAccess", + "referencedDeclaration": 31, + "src": "2486:88:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 1013, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2598:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "2486:113:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2400:199:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1016, + "nodeType": "ExpressionStatement", + "src": "2400:199:1" + }, + { + "expression": { + "id": 1021, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1017, + "name": "sum", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 979, + "src": "2618:3:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1020, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1018, + "name": "sum", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 979, + "src": "2624:3:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 1019, + "name": "stakeToBeDistributed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 92, + "src": "2630:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2624:26:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2618:32:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1022, + "nodeType": "ExpressionStatement", + "src": "2618:32:1" + }, + { + "expression": { + "id": 1043, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1023, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "2669:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1030, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 1024, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "2683:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1026, + "indexExpression": { + "id": 1025, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "2697:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2683:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1027, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2710:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 21, + "src": "2683:37:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1029, + "indexExpression": { + "id": 1028, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 983, + "src": "2721:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2683:40:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2669:55:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1031, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "2725:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "2669:61:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1042, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1032, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "2754:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1039, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 1033, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "2768:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1035, + "indexExpression": { + "id": 1034, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "2782:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2768:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1036, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2795:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 21, + "src": "2768:37:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1038, + "indexExpression": { + "id": 1037, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 983, + "src": "2806:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2768:40:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2754:55:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1040, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2836:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "2754:87:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 1041, + "name": "stakeToBeDistributed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 92, + "src": "2865:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2754:131:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2669:216:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1044, + "nodeType": "ExpressionStatement", + "src": "2669:216:1" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 991, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 986, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 983, + "src": "2334:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "baseExpression": { + "id": 987, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "2338:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 989, + "indexExpression": { + "id": 988, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "2352:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2338:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 990, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2365:9:1", + "memberName": "downvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 11, + "src": "2338:36:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2334:40:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1046, + "initializationExpression": { + "assignments": [ + 983 + ], + "declarations": [ + { + "constant": false, + "id": 983, + "mutability": "mutable", + "name": "i", + "nameLocation": "2327:1:1", + "nodeType": "VariableDeclaration", + "scope": 1046, + "src": "2319:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 982, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "2319:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 985, + "initialValue": { + "hexValue": "30", + "id": 984, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2331:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "2319:13:1" + }, + "loopExpression": { + "expression": { + "id": 993, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "2376:3:1", + "subExpression": { + "id": 992, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 983, + "src": "2376:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 994, + "nodeType": "ExpressionStatement", + "src": "2376:3:1" + }, + "nodeType": "ForStatement", + "src": "2314:587:1" + }, + { + "expression": { + "id": 1057, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1047, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "2915:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1049, + "indexExpression": { + "id": 1048, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "2929:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2915:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1050, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "2942:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "2915:32:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1056, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1051, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "2967:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1053, + "indexExpression": { + "id": 1052, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "2981:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2967:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1054, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2994:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "2967:32:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 1055, + "name": "sum", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 979, + "src": "3019:3:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2967:55:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2915:107:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1058, + "nodeType": "ExpressionStatement", + "src": "2915:107:1" + }, + { + "body": { + "id": 1094, + "nodeType": "Block", + "src": "3102:230:1", + "statements": [ + { + "expression": { + "id": 1092, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1072, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "3121:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1079, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 1073, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "3135:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1075, + "indexExpression": { + "id": 1074, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "3149:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3135:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1076, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3162:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 18, + "src": "3135:35:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1078, + "indexExpression": { + "id": 1077, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1060, + "src": "3171:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3135:38:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3121:53:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1080, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "3175:6:1", + "memberName": "points", + "nodeType": "MemberAccess", + "referencedDeclaration": 31, + "src": "3121:60:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1091, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1081, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "3205:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1088, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 1082, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "3219:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1084, + "indexExpression": { + "id": 1083, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "3233:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3219:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1085, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3246:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 18, + "src": "3219:35:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1087, + "indexExpression": { + "id": 1086, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1060, + "src": "3255:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3219:38:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3205:53:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1089, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3285:6:1", + "memberName": "points", + "nodeType": "MemberAccess", + "referencedDeclaration": 31, + "src": "3205:86:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "hexValue": "31", + "id": 1090, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3315:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "3205:111:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3121:195:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1093, + "nodeType": "ExpressionStatement", + "src": "3121:195:1" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1068, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1063, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1060, + "src": "3057:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "baseExpression": { + "id": 1064, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "3061:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1066, + "indexExpression": { + "id": 1065, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "3075:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3061:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1067, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3088:7:1", + "memberName": "upvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 9, + "src": "3061:34:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3057:38:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1095, + "initializationExpression": { + "assignments": [ + 1060 + ], + "declarations": [ + { + "constant": false, + "id": 1060, + "mutability": "mutable", + "name": "i", + "nameLocation": "3050:1:1", + "nodeType": "VariableDeclaration", + "scope": 1095, + "src": "3042:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1059, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3042:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1062, + "initialValue": { + "hexValue": "30", + "id": 1061, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3054:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "3042:13:1" + }, + "loopExpression": { + "expression": { + "id": 1070, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "3097:3:1", + "subExpression": { + "id": 1069, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1060, + "src": "3097:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1071, + "nodeType": "ExpressionStatement", + "src": "3097:3:1" + }, + "nodeType": "ForStatement", + "src": "3037:295:1" + } + ] + }, + "id": 1097, + "nodeType": "IfStatement", + "src": "1179:2164:1", + "trueBody": { + "id": 977, + "nodeType": "Block", + "src": "1193:1070:1", + "statements": [ + { + "assignments": [ + 860 + ], + "declarations": [ + { + "constant": false, + "id": 860, + "mutability": "mutable", + "name": "sum", + "nameLocation": "1216:3:1", + "nodeType": "VariableDeclaration", + "scope": 977, + "src": "1208:11:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 859, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1208:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 862, + "initialValue": { + "hexValue": "30", + "id": 861, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1222:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "1208:15:1" + }, + { + "body": { + "id": 926, + "nodeType": "Block", + "src": "1303:512:1", + "statements": [ + { + "expression": { + "id": 896, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 876, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "1322:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 883, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 877, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "1336:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 879, + "indexExpression": { + "id": 878, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "1350:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1336:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 880, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1363:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 18, + "src": "1336:35:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 882, + "indexExpression": { + "id": 881, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 864, + "src": "1372:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1336:38:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1322:53:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 884, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "1376:6:1", + "memberName": "points", + "nodeType": "MemberAccess", + "referencedDeclaration": 31, + "src": "1322:60:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 895, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 885, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "1406:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 892, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 886, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "1420:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 888, + "indexExpression": { + "id": 887, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "1434:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1420:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 889, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1447:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 18, + "src": "1420:35:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 891, + "indexExpression": { + "id": 890, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 864, + "src": "1456:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1420:38:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1406:53:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 893, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1486:6:1", + "memberName": "points", + "nodeType": "MemberAccess", + "referencedDeclaration": 31, + "src": "1406:86:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 894, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1516:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "1406:111:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1322:195:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 897, + "nodeType": "ExpressionStatement", + "src": "1322:195:1" + }, + { + "expression": { + "id": 902, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 898, + "name": "sum", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 860, + "src": "1536:3:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 901, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 899, + "name": "sum", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 860, + "src": "1542:3:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 900, + "name": "stakeToBeDistributed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 92, + "src": "1548:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1542:26:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1536:32:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 903, + "nodeType": "ExpressionStatement", + "src": "1536:32:1" + }, + { + "expression": { + "id": 924, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 904, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "1587:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 911, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 905, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "1601:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 907, + "indexExpression": { + "id": 906, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "1615:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1601:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 908, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1628:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 18, + "src": "1601:35:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 910, + "indexExpression": { + "id": 909, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 864, + "src": "1637:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1601:38:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1587:53:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 912, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "1641:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "1587:59:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 923, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 913, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "1670:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 920, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 914, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "1684:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 916, + "indexExpression": { + "id": 915, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "1698:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1684:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 917, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1711:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 18, + "src": "1684:35:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 919, + "indexExpression": { + "id": 918, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 864, + "src": "1720:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1684:38:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1670:53:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 921, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1750:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "1670:85:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 922, + "name": "stakeToBeDistributed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 92, + "src": "1779:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1670:129:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1587:212:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 925, + "nodeType": "ExpressionStatement", + "src": "1587:212:1" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 872, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 867, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 864, + "src": "1258:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "baseExpression": { + "id": 868, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "1262:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 870, + "indexExpression": { + "id": 869, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "1276:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1262:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 871, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1289:7:1", + "memberName": "upvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 9, + "src": "1262:34:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1258:38:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 927, + "initializationExpression": { + "assignments": [ + 864 + ], + "declarations": [ + { + "constant": false, + "id": 864, + "mutability": "mutable", + "name": "i", + "nameLocation": "1251:1:1", + "nodeType": "VariableDeclaration", + "scope": 927, + "src": "1243:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 863, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1243:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 866, + "initialValue": { + "hexValue": "30", + "id": 865, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1255:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "1243:13:1" + }, + "loopExpression": { + "expression": { + "id": 874, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "1298:3:1", + "subExpression": { + "id": 873, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 864, + "src": "1298:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 875, + "nodeType": "ExpressionStatement", + "src": "1298:3:1" + }, + "nodeType": "ForStatement", + "src": "1238:577:1" + }, + { + "expression": { + "id": 938, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 928, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "1829:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 930, + "indexExpression": { + "id": 929, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "1843:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1829:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 931, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "1856:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "1829:32:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 937, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 932, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "1881:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 934, + "indexExpression": { + "id": 933, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "1895:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1881:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 935, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "1908:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "1881:32:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 936, + "name": "sum", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 860, + "src": "1933:3:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1881:55:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1829:107:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 939, + "nodeType": "ExpressionStatement", + "src": "1829:107:1" + }, + { + "body": { + "id": 975, + "nodeType": "Block", + "src": "2018:234:1", + "statements": [ + { + "expression": { + "id": 973, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 953, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "2037:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 960, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 954, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "2051:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 956, + "indexExpression": { + "id": 955, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "2065:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2051:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 957, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2078:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 21, + "src": "2051:37:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 959, + "indexExpression": { + "id": 958, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 941, + "src": "2089:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2051:40:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2037:55:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 961, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "2093:6:1", + "memberName": "points", + "nodeType": "MemberAccess", + "referencedDeclaration": 31, + "src": "2037:62:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 972, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 962, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "2123:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 969, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 963, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "2137:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 965, + "indexExpression": { + "id": 964, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "2151:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2137:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 966, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2164:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 21, + "src": "2137:37:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 968, + "indexExpression": { + "id": 967, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 941, + "src": "2175:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2137:40:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "2123:55:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 970, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2205:6:1", + "memberName": "points", + "nodeType": "MemberAccess", + "referencedDeclaration": 31, + "src": "2123:88:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "hexValue": "31", + "id": 971, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "2235:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "2123:113:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "2037:199:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 974, + "nodeType": "ExpressionStatement", + "src": "2037:199:1" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 949, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 944, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 941, + "src": "1971:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "baseExpression": { + "id": 945, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "1975:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 947, + "indexExpression": { + "id": 946, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 853, + "src": "1989:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "1975:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 948, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "2002:9:1", + "memberName": "downvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 11, + "src": "1975:36:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "1971:40:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 976, + "initializationExpression": { + "assignments": [ + 941 + ], + "declarations": [ + { + "constant": false, + "id": 941, + "mutability": "mutable", + "name": "i", + "nameLocation": "1964:1:1", + "nodeType": "VariableDeclaration", + "scope": 976, + "src": "1956:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 940, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "1956:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 943, + "initialValue": { + "hexValue": "30", + "id": 942, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "1968:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "1956:13:1" + }, + "loopExpression": { + "expression": { + "id": 951, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "2013:3:1", + "subExpression": { + "id": 950, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 941, + "src": "2013:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 952, + "nodeType": "ExpressionStatement", + "src": "2013:3:1" + }, + "nodeType": "ForStatement", + "src": "1951:301:1" + } + ] + } + } + ] + }, + "functionSelector": "1e477180", + "id": 1099, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "distributeStake", + "nameLocation": "1109:15:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 856, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 853, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "1133:11:1", + "nodeType": "VariableDeclaration", + "scope": 1099, + "src": "1125:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 852, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "1125:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 855, + "mutability": "mutable", + "name": "category", + "nameLocation": "1151:8:1", + "nodeType": "VariableDeclaration", + "scope": 1099, + "src": "1146:13:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "typeName": { + "id": 854, + "name": "bool", + "nodeType": "ElementaryTypeName", + "src": "1146:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "visibility": "internal" + } + ], + "src": "1124:36:1" + }, + "returnParameters": { + "id": 857, + "nodeType": "ParameterList", + "parameters": [], + "src": "1168:0:1" + }, + "scope": 2045, + "src": "1100:2250:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1121, + "nodeType": "Block", + "src": "3522:151:1", + "statements": [ + { + "expression": { + "id": 1109, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1104, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "3533:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1106, + "indexExpression": { + "id": 1105, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1101, + "src": "3547:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3533:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1107, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "3560:19:1", + "memberName": "verification_status", + "nodeType": "MemberAccess", + "referencedDeclaration": 15, + "src": "3533:46:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 1108, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3582:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "3533:53:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1110, + "nodeType": "ExpressionStatement", + "src": "3533:53:1" + }, + { + "expression": { + "id": 1113, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1111, + "name": "totalOrganizations", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 90, + "src": "3597:18:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "+=", + "rightHandSide": { + "hexValue": "31", + "id": 1112, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3619:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "3597:23:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1114, + "nodeType": "ExpressionStatement", + "src": "3597:23:1" + }, + { + "expression": { + "id": 1119, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 1115, + "name": "verifiedOrgMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 70, + "src": "3631:14:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 1117, + "indexExpression": { + "id": 1116, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1101, + "src": "3646:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "3631:27:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 1118, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3661:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "3631:34:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1120, + "nodeType": "ExpressionStatement", + "src": "3631:34:1" + } + ] + }, + "functionSelector": "62ae7ac7", + "id": 1122, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "markAsVerified", + "nameLocation": "3479:14:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1102, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1101, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "3502:11:1", + "nodeType": "VariableDeclaration", + "scope": 1122, + "src": "3494:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1100, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3494:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "3493:21:1" + }, + "returnParameters": { + "id": 1103, + "nodeType": "ParameterList", + "parameters": [], + "src": "3522:0:1" + }, + "scope": 2045, + "src": "3470:203:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1216, + "nodeType": "Block", + "src": "3874:686:1", + "statements": [ + { + "body": { + "id": 1155, + "nodeType": "Block", + "src": "4008:78:1", + "statements": [ + { + "expression": { + "id": 1153, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 1144, + "name": "temp", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 74, + "src": "4023:4:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 1151, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 1145, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "4028:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1147, + "indexExpression": { + "id": 1146, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1124, + "src": "4042:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4028:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1148, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4055:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 18, + "src": "4028:35:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1150, + "indexExpression": { + "id": 1149, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1131, + "src": "4064:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4028:38:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "4023:44:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 1152, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4070:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "4023:51:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1154, + "nodeType": "ExpressionStatement", + "src": "4023:51:1" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1140, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1134, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1131, + "src": "3932:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "expression": { + "baseExpression": { + "id": 1135, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "3936:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1137, + "indexExpression": { + "id": 1136, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1124, + "src": "3950:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "3936:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1138, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3963:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 18, + "src": "3936:35:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1139, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "3972:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "3936:42:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "3932:46:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1156, + "initializationExpression": { + "assignments": [ + 1131 + ], + "declarations": [ + { + "constant": false, + "id": 1131, + "mutability": "mutable", + "name": "i", + "nameLocation": "3912:1:1", + "nodeType": "VariableDeclaration", + "scope": 1156, + "src": "3904:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1130, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "3904:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1133, + "initialValue": { + "hexValue": "30", + "id": 1132, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "3916:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "3904:13:1" + }, + "loopExpression": { + "expression": { + "id": 1142, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "3993:3:1", + "subExpression": { + "id": 1141, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1131, + "src": "3993:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1143, + "nodeType": "ExpressionStatement", + "src": "3993:3:1" + }, + "nodeType": "ForStatement", + "src": "3885:201:1" + }, + { + "body": { + "id": 1182, + "nodeType": "Block", + "src": "4221:80:1", + "statements": [ + { + "expression": { + "id": 1180, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 1171, + "name": "temp", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 74, + "src": "4236:4:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 1178, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 1172, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "4241:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1174, + "indexExpression": { + "id": 1173, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1124, + "src": "4255:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4241:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1175, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4268:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 21, + "src": "4241:37:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1177, + "indexExpression": { + "id": 1176, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1158, + "src": "4279:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4241:40:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "4236:46:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 1179, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4285:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "4236:53:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1181, + "nodeType": "ExpressionStatement", + "src": "4236:53:1" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1167, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1161, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1158, + "src": "4143:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "expression": { + "baseExpression": { + "id": 1162, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "4147:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1164, + "indexExpression": { + "id": 1163, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1124, + "src": "4161:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4147:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1165, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4174:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 21, + "src": "4147:37:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1166, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4185:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "4147:44:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4143:48:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1183, + "initializationExpression": { + "assignments": [ + 1158 + ], + "declarations": [ + { + "constant": false, + "id": 1158, + "mutability": "mutable", + "name": "i", + "nameLocation": "4123:1:1", + "nodeType": "VariableDeclaration", + "scope": 1183, + "src": "4115:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1157, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4115:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1160, + "initialValue": { + "hexValue": "30", + "id": 1159, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4127:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "4115:13:1" + }, + "loopExpression": { + "expression": { + "id": 1169, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "4206:3:1", + "subExpression": { + "id": 1168, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1158, + "src": "4206:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1170, + "nodeType": "ExpressionStatement", + "src": "4206:3:1" + }, + "nodeType": "ForStatement", + "src": "4096:205:1" + }, + { + "body": { + "id": 1212, + "nodeType": "Block", + "src": "4370:148:1", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1201, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "baseExpression": { + "id": 1195, + "name": "temp", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 74, + "src": "4389:4:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 1199, + "indexExpression": { + "baseExpression": { + "id": 1196, + "name": "organizationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 77, + "src": "4394:19:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1198, + "indexExpression": { + "id": 1197, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1185, + "src": "4414:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4394:22:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4389:28:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "66616c7365", + "id": 1200, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4421:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "src": "4389:37:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1211, + "nodeType": "IfStatement", + "src": "4385:122:1", + "trueBody": { + "id": 1210, + "nodeType": "Block", + "src": "4428:79:1", + "statements": [ + { + "expression": { + "arguments": [ + { + "baseExpression": { + "id": 1205, + "name": "organizationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 77, + "src": "4468:19:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1207, + "indexExpression": { + "id": 1206, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1185, + "src": "4488:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4468:22:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 1202, + "name": "notVotedAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 80, + "src": "4447:15:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1204, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4463:4:1", + "memberName": "push", + "nodeType": "MemberAccess", + "src": "4447:20:1", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$_t_address_$returns$__$bound_to$_t_array$_t_address_$dyn_storage_ptr_$", + "typeString": "function (address[] storage pointer,address)" + } + }, + "id": 1208, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "4447:44:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1209, + "nodeType": "ExpressionStatement", + "src": "4447:44:1" + } + ] + } + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1191, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1188, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1185, + "src": "4333:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 1189, + "name": "organizationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 77, + "src": "4337:19:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1190, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4357:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "4337:26:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4333:30:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1213, + "initializationExpression": { + "assignments": [ + 1185 + ], + "declarations": [ + { + "constant": false, + "id": 1185, + "mutability": "mutable", + "name": "i", + "nameLocation": "4326:1:1", + "nodeType": "VariableDeclaration", + "scope": 1213, + "src": "4318:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1184, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4318:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1187, + "initialValue": { + "hexValue": "30", + "id": 1186, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4330:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "4318:13:1" + }, + "loopExpression": { + "expression": { + "id": 1193, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "4365:3:1", + "subExpression": { + "id": 1192, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1185, + "src": "4365:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1194, + "nodeType": "ExpressionStatement", + "src": "4365:3:1" + }, + "nodeType": "ForStatement", + "src": "4313:205:1" + }, + { + "expression": { + "id": 1214, + "name": "notVotedAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 80, + "src": "4537:15:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "functionReturnParameters": 1129, + "id": 1215, + "nodeType": "Return", + "src": "4530:22:1" + } + ] + }, + "functionSelector": "a52da85d", + "id": 1217, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "notVoted", + "nameLocation": "3810:8:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1125, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1124, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "3827:11:1", + "nodeType": "VariableDeclaration", + "scope": 1217, + "src": "3819:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1123, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3819:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "3818:21:1" + }, + "returnParameters": { + "id": 1129, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1128, + "mutability": "mutable", + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "VariableDeclaration", + "scope": 1217, + "src": "3856:16:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr", + "typeString": "address[]" + }, + "typeName": { + "baseType": { + "id": 1126, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "3856:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1127, + "nodeType": "ArrayTypeName", + "src": "3856:9:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", + "typeString": "address[]" + } + }, + "visibility": "internal" + } + ], + "src": "3855:18:1" + }, + "scope": 2045, + "src": "3801:759:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1249, + "nodeType": "Block", + "src": "4699:236:1", + "statements": [ + { + "body": { + "id": 1247, + "nodeType": "Block", + "src": "4763:165:1", + "statements": [ + { + "expression": { + "id": 1245, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1231, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "4778:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1235, + "indexExpression": { + "baseExpression": { + "id": 1232, + "name": "notVotedAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 80, + "src": "4792:15:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1234, + "indexExpression": { + "id": 1233, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1221, + "src": "4808:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4792:18:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4778:33:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1236, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "4812:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "4778:39:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1244, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1237, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "4837:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1241, + "indexExpression": { + "baseExpression": { + "id": 1238, + "name": "notVotedAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 80, + "src": "4851:15:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1240, + "indexExpression": { + "id": 1239, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1221, + "src": "4867:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4851:18:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "4837:33:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1242, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4871:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "4837:39:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 1243, + "name": "stakeToBeDistributed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 92, + "src": "4896:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4837:79:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4778:138:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1246, + "nodeType": "ExpressionStatement", + "src": "4778:138:1" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1227, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1224, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1221, + "src": "4730:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 1225, + "name": "notVotedAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 80, + "src": "4734:15:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1226, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "4750:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "4734:22:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "4730:26:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1248, + "initializationExpression": { + "assignments": [ + 1221 + ], + "declarations": [ + { + "constant": false, + "id": 1221, + "mutability": "mutable", + "name": "i", + "nameLocation": "4723:1:1", + "nodeType": "VariableDeclaration", + "scope": 1248, + "src": "4715:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1220, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "4715:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1223, + "initialValue": { + "hexValue": "30", + "id": 1222, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "4727:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "4715:13:1" + }, + "loopExpression": { + "expression": { + "id": 1229, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "4758:3:1", + "subExpression": { + "id": 1228, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1221, + "src": "4758:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1230, + "nodeType": "ExpressionStatement", + "src": "4758:3:1" + }, + "nodeType": "ForStatement", + "src": "4710:218:1" + } + ] + }, + "functionSelector": "bc489aa9", + "id": 1250, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "cutStakeOfNotVoted", + "nameLocation": "4671:18:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1218, + "nodeType": "ParameterList", + "parameters": [], + "src": "4689:2:1" + }, + "returnParameters": { + "id": 1219, + "nodeType": "ParameterList", + "parameters": [], + "src": "4699:0:1" + }, + "scope": 2045, + "src": "4662:273:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1331, + "nodeType": "Block", + "src": "5058:585:1", + "statements": [ + { + "assignments": [ + 1256 + ], + "declarations": [ + { + "constant": false, + "id": 1256, + "mutability": "mutable", + "name": "loopTime", + "nameLocation": "5077:8:1", + "nodeType": "VariableDeclaration", + "scope": 1331, + "src": "5069:16:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1255, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5069:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1259, + "initialValue": { + "expression": { + "id": 1257, + "name": "notVotedAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 80, + "src": "5088:15:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1258, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5104:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "5088:22:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "5069:41:1" + }, + { + "body": { + "id": 1275, + "nodeType": "Block", + "src": "5160:48:1", + "statements": [ + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 1270, + "name": "notVotedAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 80, + "src": "5175:15:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1272, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5191:3:1", + "memberName": "pop", + "nodeType": "MemberAccess", + "src": "5175:19:1", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypop_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$returns$__$bound_to$_t_array$_t_address_$dyn_storage_ptr_$", + "typeString": "function (address[] storage pointer)" + } + }, + "id": 1273, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "5175:21:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1274, + "nodeType": "ExpressionStatement", + "src": "5175:21:1" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1266, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1264, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1261, + "src": "5141:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 1265, + "name": "loopTime", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1256, + "src": "5145:8:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5141:12:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1276, + "initializationExpression": { + "assignments": [ + 1261 + ], + "declarations": [ + { + "constant": false, + "id": 1261, + "mutability": "mutable", + "name": "i", + "nameLocation": "5134:1:1", + "nodeType": "VariableDeclaration", + "scope": 1276, + "src": "5126:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1260, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5126:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1263, + "initialValue": { + "hexValue": "30", + "id": 1262, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5138:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "5126:13:1" + }, + "loopExpression": { + "expression": { + "id": 1268, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "5155:3:1", + "subExpression": { + "id": 1267, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1261, + "src": "5155:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1269, + "nodeType": "ExpressionStatement", + "src": "5155:3:1" + }, + "nodeType": "ForStatement", + "src": "5121:87:1" + }, + { + "body": { + "id": 1302, + "nodeType": "Block", + "src": "5341:79:1", + "statements": [ + { + "expression": { + "id": 1300, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 1291, + "name": "temp", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 74, + "src": "5356:4:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 1298, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 1292, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "5361:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1294, + "indexExpression": { + "id": 1293, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1252, + "src": "5375:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5361:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1295, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5388:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 18, + "src": "5361:35:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1297, + "indexExpression": { + "id": 1296, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1278, + "src": "5397:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5361:38:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "5356:44:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "66616c7365", + "id": 1299, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5403:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "src": "5356:52:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1301, + "nodeType": "ExpressionStatement", + "src": "5356:52:1" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1287, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1281, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1278, + "src": "5265:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "expression": { + "baseExpression": { + "id": 1282, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "5269:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1284, + "indexExpression": { + "id": 1283, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1252, + "src": "5283:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5269:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1285, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5296:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 18, + "src": "5269:35:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1286, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5305:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "5269:42:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5265:46:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1303, + "initializationExpression": { + "assignments": [ + 1278 + ], + "declarations": [ + { + "constant": false, + "id": 1278, + "mutability": "mutable", + "name": "i", + "nameLocation": "5245:1:1", + "nodeType": "VariableDeclaration", + "scope": 1303, + "src": "5237:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1277, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5237:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1280, + "initialValue": { + "hexValue": "30", + "id": 1279, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5249:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "5237:13:1" + }, + "loopExpression": { + "expression": { + "id": 1289, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "5326:3:1", + "subExpression": { + "id": 1288, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1278, + "src": "5326:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1290, + "nodeType": "ExpressionStatement", + "src": "5326:3:1" + }, + "nodeType": "ForStatement", + "src": "5218:202:1" + }, + { + "body": { + "id": 1329, + "nodeType": "Block", + "src": "5555:81:1", + "statements": [ + { + "expression": { + "id": 1327, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 1318, + "name": "temp", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 74, + "src": "5570:4:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 1325, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 1319, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "5575:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1321, + "indexExpression": { + "id": 1320, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1252, + "src": "5589:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5575:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1322, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5602:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 21, + "src": "5575:37:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1324, + "indexExpression": { + "id": 1323, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1305, + "src": "5613:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5575:40:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "5570:46:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "66616c7365", + "id": 1326, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5619:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "src": "5570:54:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1328, + "nodeType": "ExpressionStatement", + "src": "5570:54:1" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1314, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1308, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1305, + "src": "5477:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "expression": { + "baseExpression": { + "id": 1309, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "5481:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1311, + "indexExpression": { + "id": 1310, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1252, + "src": "5495:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "5481:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1312, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5508:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 21, + "src": "5481:37:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1313, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "5519:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "5481:44:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "5477:48:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1330, + "initializationExpression": { + "assignments": [ + 1305 + ], + "declarations": [ + { + "constant": false, + "id": 1305, + "mutability": "mutable", + "name": "i", + "nameLocation": "5457:1:1", + "nodeType": "VariableDeclaration", + "scope": 1330, + "src": "5449:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1304, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "5449:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1307, + "initialValue": { + "hexValue": "30", + "id": 1306, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "5461:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "5449:13:1" + }, + "loopExpression": { + "expression": { + "id": 1316, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "5540:3:1", + "subExpression": { + "id": 1315, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1305, + "src": "5540:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1317, + "nodeType": "ExpressionStatement", + "src": "5540:3:1" + }, + "nodeType": "ForStatement", + "src": "5430:206:1" + } + ] + }, + "functionSelector": "8e349519", + "id": 1332, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "emptyNotVotedArray", + "nameLocation": "5011:18:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1253, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1252, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "5038:11:1", + "nodeType": "VariableDeclaration", + "scope": 1332, + "src": "5030:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1251, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "5030:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "5029:21:1" + }, + "returnParameters": { + "id": 1254, + "nodeType": "ParameterList", + "parameters": [], + "src": "5058:0:1" + }, + "scope": 2045, + "src": "5002:641:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1386, + "nodeType": "Block", + "src": "6300:465:1", + "statements": [ + { + "expression": { + "id": 1348, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1343, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "6311:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1345, + "indexExpression": { + "id": 1344, + "name": "organization_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1334, + "src": "6324:20:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6311:34:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1346, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "6346:11:1", + "memberName": "org_address", + "nodeType": "MemberAccess", + "referencedDeclaration": 786, + "src": "6311:46:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 1347, + "name": "organization_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1334, + "src": "6360:20:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "6311:69:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1349, + "nodeType": "ExpressionStatement", + "src": "6311:69:1" + }, + { + "expression": { + "id": 1355, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1350, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "6391:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1352, + "indexExpression": { + "id": 1351, + "name": "organization_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1334, + "src": "6404:20:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6391:34:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1353, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "6426:7:1", + "memberName": "doc_cid", + "nodeType": "MemberAccess", + "referencedDeclaration": 788, + "src": "6391:42:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 1354, + "name": "document_cid", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1336, + "src": "6436:12:1", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "src": "6391:57:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "id": 1356, + "nodeType": "ExpressionStatement", + "src": "6391:57:1" + }, + { + "expression": { + "id": 1362, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1357, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "6459:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1359, + "indexExpression": { + "id": 1358, + "name": "organization_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1334, + "src": "6472:20:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6459:34:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1360, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "6494:4:1", + "memberName": "desc", + "nodeType": "MemberAccess", + "referencedDeclaration": 790, + "src": "6459:39:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 1361, + "name": "description", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1338, + "src": "6501:11:1", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + }, + "src": "6459:53:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage", + "typeString": "string storage ref" + } + }, + "id": 1363, + "nodeType": "ExpressionStatement", + "src": "6459:53:1" + }, + { + "expression": { + "id": 1369, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1364, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "6523:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1366, + "indexExpression": { + "id": 1365, + "name": "organization_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1334, + "src": "6536:20:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6523:34:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1367, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "6558:10:1", + "memberName": "start_time", + "nodeType": "MemberAccess", + "referencedDeclaration": 806, + "src": "6523:45:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 1368, + "name": "registration_time", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1340, + "src": "6571:17:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6523:65:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1370, + "nodeType": "ExpressionStatement", + "src": "6523:65:1" + }, + { + "expression": { + "id": 1378, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1371, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "6599:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1373, + "indexExpression": { + "id": 1372, + "name": "organization_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1334, + "src": "6612:20:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6599:34:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1374, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "6634:8:1", + "memberName": "end_time", + "nodeType": "MemberAccess", + "referencedDeclaration": 808, + "src": "6599:43:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1377, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1375, + "name": "registration_time", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1340, + "src": "6658:17:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "35", + "id": 1376, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6691:6:1", + "subdenomination": "days", + "typeDescriptions": { + "typeIdentifier": "t_rational_432000_by_1", + "typeString": "int_const 432000" + }, + "value": "5" + }, + "src": "6658:39:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6599:98:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1379, + "nodeType": "ExpressionStatement", + "src": "6599:98:1" + }, + { + "expression": { + "id": 1384, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1380, + "name": "registeredViolations", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 94, + "src": "6710:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1383, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1381, + "name": "registeredViolations", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 94, + "src": "6733:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 1382, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "6756:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "6733:24:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6710:47:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1385, + "nodeType": "ExpressionStatement", + "src": "6710:47:1" + } + ] + }, + "functionSelector": "ac64fcde", + "id": 1387, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "registerViolation", + "nameLocation": "6120:17:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1341, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1334, + "mutability": "mutable", + "name": "organization_address", + "nameLocation": "6156:20:1", + "nodeType": "VariableDeclaration", + "scope": 1387, + "src": "6148:28:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1333, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6148:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1336, + "mutability": "mutable", + "name": "document_cid", + "nameLocation": "6201:12:1", + "nodeType": "VariableDeclaration", + "scope": 1387, + "src": "6187:26:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1335, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6187:6:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1338, + "mutability": "mutable", + "name": "description", + "nameLocation": "6238:11:1", + "nodeType": "VariableDeclaration", + "scope": 1387, + "src": "6224:25:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1337, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "6224:6:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1340, + "mutability": "mutable", + "name": "registration_time", + "nameLocation": "6268:17:1", + "nodeType": "VariableDeclaration", + "scope": 1387, + "src": "6260:25:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1339, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "6260:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "6137:155:1" + }, + "returnParameters": { + "id": 1342, + "nodeType": "ParameterList", + "parameters": [], + "src": "6300:0:1" + }, + "scope": 2045, + "src": "6111:654:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1413, + "nodeType": "Block", + "src": "6897:180:1", + "statements": [ + { + "expression": { + "id": 1402, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1392, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "6908:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1394, + "indexExpression": { + "id": 1393, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1389, + "src": "6921:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6908:25:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1395, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "6934:7:1", + "memberName": "upvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 792, + "src": "6908:33:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1401, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1396, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "6957:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1398, + "indexExpression": { + "id": 1397, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1389, + "src": "6970:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "6957:25:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1399, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "6983:7:1", + "memberName": "upvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 792, + "src": "6957:33:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 1400, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7006:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "6957:50:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "6908:99:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1403, + "nodeType": "ExpressionStatement", + "src": "6908:99:1" + }, + { + "expression": { + "arguments": [ + { + "expression": { + "id": 1409, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "7058:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1410, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7062:6:1", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "7058:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "expression": { + "baseExpression": { + "id": 1404, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "7018:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1406, + "indexExpression": { + "id": 1405, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1389, + "src": "7031:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7018:25:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1407, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7044:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 797, + "src": "7018:34:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1408, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7053:4:1", + "memberName": "push", + "nodeType": "MemberAccess", + "src": "7018:39:1", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$_t_address_$returns$__$bound_to$_t_array$_t_address_$dyn_storage_ptr_$", + "typeString": "function (address[] storage pointer,address)" + } + }, + "id": 1411, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7018:51:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1412, + "nodeType": "ExpressionStatement", + "src": "7018:51:1" + } + ] + }, + "functionSelector": "55779b65", + "id": 1414, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "violationUpVote", + "nameLocation": "6853:15:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1390, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1389, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "6877:11:1", + "nodeType": "VariableDeclaration", + "scope": 1414, + "src": "6869:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1388, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "6869:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "6868:21:1" + }, + "returnParameters": { + "id": 1391, + "nodeType": "ParameterList", + "parameters": [], + "src": "6897:0:1" + }, + "scope": 2045, + "src": "6844:233:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1440, + "nodeType": "Block", + "src": "7213:186:1", + "statements": [ + { + "expression": { + "id": 1429, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1419, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "7224:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1421, + "indexExpression": { + "id": 1420, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1416, + "src": "7237:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7224:25:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1422, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "7250:9:1", + "memberName": "downvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 794, + "src": "7224:35:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1428, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1423, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "7275:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1425, + "indexExpression": { + "id": 1424, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1416, + "src": "7288:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7275:25:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1426, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7301:9:1", + "memberName": "downvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 794, + "src": "7275:35:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 1427, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7326:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "7275:52:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7224:103:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1430, + "nodeType": "ExpressionStatement", + "src": "7224:103:1" + }, + { + "expression": { + "arguments": [ + { + "expression": { + "id": 1436, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "7380:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1437, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7384:6:1", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "7380:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "expression": { + "baseExpression": { + "id": 1431, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "7338:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1433, + "indexExpression": { + "id": 1432, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1416, + "src": "7351:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7338:25:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1434, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7364:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 800, + "src": "7338:36:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1435, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7375:4:1", + "memberName": "push", + "nodeType": "MemberAccess", + "src": "7338:41:1", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$_t_address_$returns$__$bound_to$_t_array$_t_address_$dyn_storage_ptr_$", + "typeString": "function (address[] storage pointer,address)" + } + }, + "id": 1438, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "7338:53:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1439, + "nodeType": "ExpressionStatement", + "src": "7338:53:1" + } + ] + }, + "functionSelector": "0037556e", + "id": 1441, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "violationDownVote", + "nameLocation": "7167:17:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1417, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1416, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "7193:11:1", + "nodeType": "VariableDeclaration", + "scope": 1441, + "src": "7185:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1415, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7185:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "7184:21:1" + }, + "returnParameters": { + "id": 1418, + "nodeType": "ParameterList", + "parameters": [], + "src": "7213:0:1" + }, + "scope": 2045, + "src": "7158:241:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1485, + "nodeType": "Block", + "src": "7544:345:1", + "statements": [ + { + "assignments": [ + 1447 + ], + "declarations": [ + { + "constant": false, + "id": 1447, + "mutability": "mutable", + "name": "totalVotes", + "nameLocation": "7563:10:1", + "nodeType": "VariableDeclaration", + "scope": 1485, + "src": "7555:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1446, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "7555:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1457, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1456, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1448, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "7576:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1450, + "indexExpression": { + "id": 1449, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1443, + "src": "7589:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7576:25:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1451, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7602:7:1", + "memberName": "upvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 792, + "src": "7576:33:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "expression": { + "baseExpression": { + "id": 1452, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "7625:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1454, + "indexExpression": { + "id": 1453, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1443, + "src": "7638:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7625:25:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1455, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7651:9:1", + "memberName": "downvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 794, + "src": "7625:35:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7576:84:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "7555:105:1" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1467, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1463, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1458, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "7675:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1460, + "indexExpression": { + "id": 1459, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1443, + "src": "7688:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7675:25:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1461, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "7701:7:1", + "memberName": "upvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 792, + "src": "7675:33:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "313030", + "id": 1462, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7711:3:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_100_by_1", + "typeString": "int_const 100" + }, + "value": "100" + }, + "src": "7675:39:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1466, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1464, + "name": "totalVotes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1447, + "src": "7718:10:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "3531", + "id": 1465, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7731:2:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_51_by_1", + "typeString": "int_const 51" + }, + "value": "51" + }, + "src": "7718:15:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "7675:58:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 1483, + "nodeType": "Block", + "src": "7811:71:1", + "statements": [ + { + "expression": { + "id": 1481, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1476, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "7826:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1478, + "indexExpression": { + "id": 1477, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1443, + "src": "7839:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7826:25:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1479, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "7852:10:1", + "memberName": "isViolated", + "nodeType": "MemberAccess", + "referencedDeclaration": 810, + "src": "7826:36:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "66616c7365", + "id": 1480, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7865:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "src": "7826:44:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1482, + "nodeType": "ExpressionStatement", + "src": "7826:44:1" + } + ] + }, + "id": 1484, + "nodeType": "IfStatement", + "src": "7671:211:1", + "trueBody": { + "id": 1475, + "nodeType": "Block", + "src": "7735:70:1", + "statements": [ + { + "expression": { + "id": 1473, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1468, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "7750:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1470, + "indexExpression": { + "id": 1469, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1443, + "src": "7763:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "7750:25:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1471, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "7776:10:1", + "memberName": "isViolated", + "nodeType": "MemberAccess", + "referencedDeclaration": 810, + "src": "7750:36:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 1472, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "7789:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "7750:43:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1474, + "nodeType": "ExpressionStatement", + "src": "7750:43:1" + } + ] + } + } + ] + }, + "functionSelector": "71206274", + "id": 1486, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "checkViolationStatus", + "nameLocation": "7495:20:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1444, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1443, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "7524:11:1", + "nodeType": "VariableDeclaration", + "scope": 1486, + "src": "7516:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1442, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "7516:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "7515:21:1" + }, + "returnParameters": { + "id": 1445, + "nodeType": "ParameterList", + "parameters": [], + "src": "7544:0:1" + }, + "scope": 2045, + "src": "7486:403:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1573, + "nodeType": "Block", + "src": "8065:878:1", + "statements": [ + { + "condition": { + "expression": { + "baseExpression": { + "id": 1491, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "8080:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1493, + "indexExpression": { + "id": 1492, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1488, + "src": "8093:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8080:25:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1494, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8106:10:1", + "memberName": "isViolated", + "nodeType": "MemberAccess", + "referencedDeclaration": 810, + "src": "8080:36:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1572, + "nodeType": "IfStatement", + "src": "8076:860:1", + "trueBody": { + "id": 1571, + "nodeType": "Block", + "src": "8118:818:1", + "statements": [ + { + "body": { + "id": 1531, + "nodeType": "Block", + "src": "8272:247:1", + "statements": [ + { + "expression": { + "id": 1529, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1509, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "8291:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1516, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 1510, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "8305:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1512, + "indexExpression": { + "id": 1511, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1488, + "src": "8319:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8305:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1513, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8332:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 18, + "src": "8305:35:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1515, + "indexExpression": { + "id": 1514, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1496, + "src": "8341:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8305:38:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8291:53:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1517, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "8345:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "8291:59:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1528, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1518, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "8374:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1525, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 1519, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "8388:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1521, + "indexExpression": { + "id": 1520, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1488, + "src": "8402:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8388:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1522, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8415:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 18, + "src": "8388:35:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1524, + "indexExpression": { + "id": 1523, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1496, + "src": "8424:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8388:38:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8374:53:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1526, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8454:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "8374:85:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 1527, + "name": "stakeToBeDistributed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 92, + "src": "8483:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8374:129:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8291:212:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1530, + "nodeType": "ExpressionStatement", + "src": "8291:212:1" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1505, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1499, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1496, + "src": "8188:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "expression": { + "baseExpression": { + "id": 1500, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "8192:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1502, + "indexExpression": { + "id": 1501, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1488, + "src": "8206:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8192:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1503, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8219:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 18, + "src": "8192:35:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1504, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8228:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "8192:42:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8188:46:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1532, + "initializationExpression": { + "assignments": [ + 1496 + ], + "declarations": [ + { + "constant": false, + "id": 1496, + "mutability": "mutable", + "name": "i", + "nameLocation": "8164:1:1", + "nodeType": "VariableDeclaration", + "scope": 1532, + "src": "8156:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1495, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8156:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1498, + "initialValue": { + "hexValue": "30", + "id": 1497, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8168:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "8156:13:1" + }, + "loopExpression": { + "expression": { + "id": 1507, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "8253:3:1", + "subExpression": { + "id": 1506, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1496, + "src": "8253:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1508, + "nodeType": "ExpressionStatement", + "src": "8253:3:1" + }, + "nodeType": "ForStatement", + "src": "8133:386:1" + }, + { + "body": { + "id": 1569, + "nodeType": "Block", + "src": "8674:251:1", + "statements": [ + { + "expression": { + "id": 1567, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1547, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "8693:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1554, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 1548, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "8707:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1550, + "indexExpression": { + "id": 1549, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1488, + "src": "8721:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8707:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1551, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8734:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 21, + "src": "8707:37:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1553, + "indexExpression": { + "id": 1552, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1534, + "src": "8745:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8707:40:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8693:55:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1555, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "8749:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "8693:61:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1566, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1556, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "8778:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1563, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 1557, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "8792:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1559, + "indexExpression": { + "id": 1558, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1488, + "src": "8806:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8792:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1560, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8819:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 21, + "src": "8792:37:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1562, + "indexExpression": { + "id": 1561, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1534, + "src": "8830:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8792:40:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8778:55:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1564, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8860:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "8778:87:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 1565, + "name": "stakeToBeDistributed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 92, + "src": "8889:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8778:131:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8693:216:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1568, + "nodeType": "ExpressionStatement", + "src": "8693:216:1" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1543, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1537, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1534, + "src": "8588:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "expression": { + "baseExpression": { + "id": 1538, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "8592:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1540, + "indexExpression": { + "id": 1539, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1488, + "src": "8606:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "8592:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1541, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8619:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 21, + "src": "8592:37:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1542, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "8630:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "8592:44:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "8588:48:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1570, + "initializationExpression": { + "assignments": [ + 1534 + ], + "declarations": [ + { + "constant": false, + "id": 1534, + "mutability": "mutable", + "name": "i", + "nameLocation": "8564:1:1", + "nodeType": "VariableDeclaration", + "scope": 1570, + "src": "8556:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1533, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "8556:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1536, + "initialValue": { + "hexValue": "30", + "id": 1535, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "8568:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "8556:13:1" + }, + "loopExpression": { + "expression": { + "id": 1545, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "8655:3:1", + "subExpression": { + "id": 1544, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1534, + "src": "8655:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1546, + "nodeType": "ExpressionStatement", + "src": "8655:3:1" + }, + "nodeType": "ForStatement", + "src": "8533:392:1" + } + ] + } + } + ] + }, + "functionSelector": "0a54ecbf", + "id": 1574, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "upvotedOnVerify", + "nameLocation": "8021:15:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1489, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1488, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "8045:11:1", + "nodeType": "VariableDeclaration", + "scope": 1574, + "src": "8037:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1487, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "8037:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "8036:21:1" + }, + "returnParameters": { + "id": 1490, + "nodeType": "ParameterList", + "parameters": [], + "src": "8065:0:1" + }, + "scope": 2045, + "src": "8012:931:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1689, + "nodeType": "Block", + "src": "9167:1083:1", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1584, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1579, + "name": "violationMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 842, + "src": "9182:12:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Violation_$815_storage_$", + "typeString": "mapping(address => struct OrgOperation.Violation storage ref)" + } + }, + "id": 1581, + "indexExpression": { + "id": 1580, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1576, + "src": "9195:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "9182:25:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Violation_$815_storage", + "typeString": "struct OrgOperation.Violation storage ref" + } + }, + "id": 1582, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9208:10:1", + "memberName": "isViolated", + "nodeType": "MemberAccess", + "referencedDeclaration": 810, + "src": "9182:36:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "74727565", + "id": 1583, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9222:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "9182:44:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1688, + "nodeType": "IfStatement", + "src": "9178:1065:1", + "trueBody": { + "id": 1687, + "nodeType": "Block", + "src": "9228:1015:1", + "statements": [ + { + "expression": { + "id": 1590, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1585, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "9243:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1587, + "indexExpression": { + "id": 1586, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1576, + "src": "9257:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "9243:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1588, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "9270:19:1", + "memberName": "verification_status", + "nodeType": "MemberAccess", + "referencedDeclaration": 15, + "src": "9243:46:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "66616c7365", + "id": 1589, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9292:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "src": "9243:54:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1591, + "nodeType": "ExpressionStatement", + "src": "9243:54:1" + }, + { + "expression": { + "id": 1594, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1592, + "name": "totalOrganizations", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 90, + "src": "9312:18:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "hexValue": "31", + "id": 1593, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9334:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "9312:23:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1595, + "nodeType": "ExpressionStatement", + "src": "9312:23:1" + }, + { + "expression": { + "id": 1600, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 1596, + "name": "verifiedOrgMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 70, + "src": "9350:14:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 1598, + "indexExpression": { + "id": 1597, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1576, + "src": "9365:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "9350:27:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "66616c7365", + "id": 1599, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9380:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "src": "9350:35:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1601, + "nodeType": "ExpressionStatement", + "src": "9350:35:1" + }, + { + "assignments": [ + 1603 + ], + "declarations": [ + { + "constant": false, + "id": 1603, + "mutability": "mutable", + "name": "maxPoints", + "nameLocation": "9408:9:1", + "nodeType": "VariableDeclaration", + "scope": 1687, + "src": "9400:17:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1602, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9400:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1604, + "nodeType": "VariableDeclarationStatement", + "src": "9400:17:1" + }, + { + "body": { + "id": 1650, + "nodeType": "Block", + "src": "9491:384:1", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1630, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1616, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "9536:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1620, + "indexExpression": { + "baseExpression": { + "id": 1617, + "name": "organizationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 77, + "src": "9550:19:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1619, + "indexExpression": { + "id": 1618, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1606, + "src": "9570:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "9550:22:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "9536:37:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1621, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9574:19:1", + "memberName": "verification_status", + "nodeType": "MemberAccess", + "referencedDeclaration": 15, + "src": "9536:57:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1629, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1622, + "name": "maxPoints", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1603, + "src": "9618:9:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "baseExpression": { + "id": 1623, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "9630:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1627, + "indexExpression": { + "baseExpression": { + "id": 1624, + "name": "organizationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 77, + "src": "9644:19:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1626, + "indexExpression": { + "id": 1625, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1606, + "src": "9664:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "9644:22:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "9630:37:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1628, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9668:6:1", + "memberName": "points", + "nodeType": "MemberAccess", + "referencedDeclaration": 31, + "src": "9630:44:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9618:56:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "9536:138:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1649, + "nodeType": "IfStatement", + "src": "9510:350:1", + "trueBody": { + "id": 1648, + "nodeType": "Block", + "src": "9694:166:1", + "statements": [ + { + "expression": { + "id": 1638, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1631, + "name": "maxPoints", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1603, + "src": "9717:9:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "expression": { + "baseExpression": { + "id": 1632, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "9729:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1636, + "indexExpression": { + "baseExpression": { + "id": 1633, + "name": "organizationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 77, + "src": "9743:19:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1635, + "indexExpression": { + "id": 1634, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1606, + "src": "9763:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "9743:22:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "9729:37:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1637, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9767:6:1", + "memberName": "points", + "nodeType": "MemberAccess", + "referencedDeclaration": 31, + "src": "9729:44:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9717:56:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1639, + "nodeType": "ExpressionStatement", + "src": "9717:56:1" + }, + { + "expression": { + "arguments": [ + { + "baseExpression": { + "id": 1643, + "name": "organizationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 77, + "src": "9817:19:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1645, + "indexExpression": { + "id": 1644, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1606, + "src": "9837:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "9817:22:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 1640, + "name": "maxPointAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 83, + "src": "9796:15:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1642, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9812:4:1", + "memberName": "push", + "nodeType": "MemberAccess", + "src": "9796:20:1", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$_t_address_$returns$__$bound_to$_t_array$_t_address_$dyn_storage_ptr_$", + "typeString": "function (address[] storage pointer,address)" + } + }, + "id": 1646, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "9796:44:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1647, + "nodeType": "ExpressionStatement", + "src": "9796:44:1" + } + ] + } + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1612, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1609, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1606, + "src": "9454:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 1610, + "name": "organizationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 77, + "src": "9458:19:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1611, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9478:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "9458:26:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9454:30:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1651, + "initializationExpression": { + "assignments": [ + 1606 + ], + "declarations": [ + { + "constant": false, + "id": 1606, + "mutability": "mutable", + "name": "i", + "nameLocation": "9447:1:1", + "nodeType": "VariableDeclaration", + "scope": 1651, + "src": "9439:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1605, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9439:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1608, + "initialValue": { + "hexValue": "30", + "id": 1607, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9451:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "9439:13:1" + }, + "loopExpression": { + "expression": { + "id": 1614, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "9486:3:1", + "subExpression": { + "id": 1613, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1606, + "src": "9486:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1615, + "nodeType": "ExpressionStatement", + "src": "9486:3:1" + }, + "nodeType": "ForStatement", + "src": "9434:441:1" + }, + { + "body": { + "id": 1663, + "nodeType": "Block", + "src": "9944:121:1", + "statements": [] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1659, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1656, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1653, + "src": "9911:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 1657, + "name": "maxPointAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 83, + "src": "9915:15:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1658, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "9931:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "9915:22:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "9911:26:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1664, + "initializationExpression": { + "assignments": [ + 1653 + ], + "declarations": [ + { + "constant": false, + "id": 1653, + "mutability": "mutable", + "name": "i", + "nameLocation": "9904:1:1", + "nodeType": "VariableDeclaration", + "scope": 1664, + "src": "9896:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1652, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "9896:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1655, + "initialValue": { + "hexValue": "30", + "id": 1654, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "9908:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "9896:13:1" + }, + "loopExpression": { + "expression": { + "id": 1661, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "9939:3:1", + "subExpression": { + "id": 1660, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1653, + "src": "9939:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1662, + "nodeType": "ExpressionStatement", + "src": "9939:3:1" + }, + "nodeType": "ForStatement", + "src": "9891:174:1" + }, + { + "assignments": [ + 1666 + ], + "declarations": [ + { + "constant": false, + "id": 1666, + "mutability": "mutable", + "name": "loopTime", + "nameLocation": "10089:8:1", + "nodeType": "VariableDeclaration", + "scope": 1687, + "src": "10081:16:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1665, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10081:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1669, + "initialValue": { + "expression": { + "id": 1667, + "name": "maxPointAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 83, + "src": "10100:15:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1668, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "10116:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "10100:22:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "10081:41:1" + }, + { + "body": { + "id": 1685, + "nodeType": "Block", + "src": "10176:56:1", + "statements": [ + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 1680, + "name": "maxPointAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 83, + "src": "10195:15:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1682, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "10211:3:1", + "memberName": "pop", + "nodeType": "MemberAccess", + "src": "10195:19:1", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypop_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$returns$__$bound_to$_t_array$_t_address_$dyn_storage_ptr_$", + "typeString": "function (address[] storage pointer)" + } + }, + "id": 1683, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10195:21:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1684, + "nodeType": "ExpressionStatement", + "src": "10195:21:1" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1676, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1674, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1671, + "src": "10157:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 1675, + "name": "loopTime", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1666, + "src": "10161:8:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "10157:12:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1686, + "initializationExpression": { + "assignments": [ + 1671 + ], + "declarations": [ + { + "constant": false, + "id": 1671, + "mutability": "mutable", + "name": "i", + "nameLocation": "10150:1:1", + "nodeType": "VariableDeclaration", + "scope": 1686, + "src": "10142:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1670, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10142:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1673, + "initialValue": { + "hexValue": "30", + "id": 1672, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10154:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "10142:13:1" + }, + "loopExpression": { + "expression": { + "id": 1678, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "10171:3:1", + "subExpression": { + "id": 1677, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1671, + "src": "10171:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1679, + "nodeType": "ExpressionStatement", + "src": "10171:3:1" + }, + "nodeType": "ForStatement", + "src": "10137:95:1" + } + ] + } + } + ] + }, + "functionSelector": "ae51c2bc", + "id": 1690, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "RemoveCharityIfFraud", + "nameLocation": "9118:20:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1577, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1576, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "9147:11:1", + "nodeType": "VariableDeclaration", + "scope": 1690, + "src": "9139:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1575, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "9139:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "9138:21:1" + }, + "returnParameters": { + "id": 1578, + "nodeType": "ParameterList", + "parameters": [], + "src": "9167:0:1" + }, + "scope": 2045, + "src": "9109:1141:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1730, + "nodeType": "Block", + "src": "10540:347:1", + "statements": [ + { + "expression": { + "id": 1704, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1699, + "name": "financialReportMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 847, + "src": "10551:18:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport storage ref)" + } + }, + "id": 1701, + "indexExpression": { + "id": 1700, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1692, + "src": "10570:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "10551:31:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage", + "typeString": "struct OrgOperation.FinancialReport storage ref" + } + }, + "id": 1702, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "10583:11:1", + "memberName": "org_address", + "nodeType": "MemberAccess", + "referencedDeclaration": 817, + "src": "10551:43:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 1703, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1692, + "src": "10597:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "10551:57:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1705, + "nodeType": "ExpressionStatement", + "src": "10551:57:1" + }, + { + "expression": { + "arguments": [ + { + "id": 1711, + "name": "cid", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1694, + "src": "10660:3:1", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string memory" + } + ], + "expression": { + "expression": { + "baseExpression": { + "id": 1706, + "name": "financialReportMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 847, + "src": "10619:18:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport storage ref)" + } + }, + "id": 1708, + "indexExpression": { + "id": 1707, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1692, + "src": "10638:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "10619:31:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage", + "typeString": "struct OrgOperation.FinancialReport storage ref" + } + }, + "id": 1709, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "10651:3:1", + "memberName": "cid", + "nodeType": "MemberAccess", + "referencedDeclaration": 836, + "src": "10619:35:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_string_storage_$dyn_storage", + "typeString": "string storage ref[] storage ref" + } + }, + "id": 1710, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "10655:4:1", + "memberName": "push", + "nodeType": "MemberAccess", + "src": "10619:40:1", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_string_storage_$dyn_storage_ptr_$_t_string_storage_$returns$__$bound_to$_t_array$_t_string_storage_$dyn_storage_ptr_$", + "typeString": "function (string storage ref[] storage pointer,string storage ref)" + } + }, + "id": 1712, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "10619:45:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1713, + "nodeType": "ExpressionStatement", + "src": "10619:45:1" + }, + { + "expression": { + "id": 1719, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1714, + "name": "financialReportMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 847, + "src": "10675:18:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport storage ref)" + } + }, + "id": 1716, + "indexExpression": { + "id": 1715, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1692, + "src": "10694:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "10675:31:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage", + "typeString": "struct OrgOperation.FinancialReport storage ref" + } + }, + "id": 1717, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "10721:21:1", + "memberName": "reportUploadStartTime", + "nodeType": "MemberAccess", + "referencedDeclaration": 829, + "src": "10675:67:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "id": 1718, + "name": "registration_time", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1696, + "src": "10745:17:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "10675:87:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1720, + "nodeType": "ExpressionStatement", + "src": "10675:87:1" + }, + { + "expression": { + "id": 1728, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1721, + "name": "financialReportMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 847, + "src": "10773:18:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport storage ref)" + } + }, + "id": 1723, + "indexExpression": { + "id": 1722, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1692, + "src": "10792:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "10773:31:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage", + "typeString": "struct OrgOperation.FinancialReport storage ref" + } + }, + "id": 1724, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "10805:19:1", + "memberName": "reportUploadEndTime", + "nodeType": "MemberAccess", + "referencedDeclaration": 831, + "src": "10773:51:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1727, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1725, + "name": "registration_time", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1696, + "src": "10840:17:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "35", + "id": 1726, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "10873:6:1", + "subdenomination": "days", + "typeDescriptions": { + "typeIdentifier": "t_rational_432000_by_1", + "typeString": "int_const 432000" + }, + "value": "5" + }, + "src": "10840:39:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "10773:106:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1729, + "nodeType": "ExpressionStatement", + "src": "10773:106:1" + } + ] + }, + "functionSelector": "482bd55b", + "id": 1731, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "registerFinancialReport", + "nameLocation": "10408:23:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1697, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1692, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "10450:11:1", + "nodeType": "VariableDeclaration", + "scope": 1731, + "src": "10442:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1691, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10442:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1694, + "mutability": "mutable", + "name": "cid", + "nameLocation": "10486:3:1", + "nodeType": "VariableDeclaration", + "scope": 1731, + "src": "10472:17:1", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_string_memory_ptr", + "typeString": "string" + }, + "typeName": { + "id": 1693, + "name": "string", + "nodeType": "ElementaryTypeName", + "src": "10472:6:1", + "typeDescriptions": { + "typeIdentifier": "t_string_storage_ptr", + "typeString": "string" + } + }, + "visibility": "internal" + }, + { + "constant": false, + "id": 1696, + "mutability": "mutable", + "name": "registration_time", + "nameLocation": "10508:17:1", + "nodeType": "VariableDeclaration", + "scope": 1731, + "src": "10500:25:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1695, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "10500:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "src": "10431:101:1" + }, + "returnParameters": { + "id": 1698, + "nodeType": "ParameterList", + "parameters": [], + "src": "10540:0:1" + }, + "scope": 2045, + "src": "10399:488:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1757, + "nodeType": "Block", + "src": "11024:198:1", + "statements": [ + { + "expression": { + "id": 1746, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1736, + "name": "financialReportMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 847, + "src": "11035:18:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport storage ref)" + } + }, + "id": 1738, + "indexExpression": { + "id": 1737, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1733, + "src": "11054:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "11035:31:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage", + "typeString": "struct OrgOperation.FinancialReport storage ref" + } + }, + "id": 1739, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "11067:7:1", + "memberName": "upvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 819, + "src": "11035:39:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1745, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1740, + "name": "financialReportMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 847, + "src": "11090:18:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport storage ref)" + } + }, + "id": 1742, + "indexExpression": { + "id": 1741, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1733, + "src": "11109:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "11090:31:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage", + "typeString": "struct OrgOperation.FinancialReport storage ref" + } + }, + "id": 1743, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "11122:7:1", + "memberName": "upvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 819, + "src": "11090:39:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 1744, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11145:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "11090:56:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "11035:111:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1747, + "nodeType": "ExpressionStatement", + "src": "11035:111:1" + }, + { + "expression": { + "arguments": [ + { + "expression": { + "id": 1753, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "11203:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1754, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "11207:6:1", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "11203:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "expression": { + "baseExpression": { + "id": 1748, + "name": "financialReportMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 847, + "src": "11157:18:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport storage ref)" + } + }, + "id": 1750, + "indexExpression": { + "id": 1749, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1733, + "src": "11176:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "11157:31:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage", + "typeString": "struct OrgOperation.FinancialReport storage ref" + } + }, + "id": 1751, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "11189:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 824, + "src": "11157:40:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1752, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "11198:4:1", + "memberName": "push", + "nodeType": "MemberAccess", + "src": "11157:45:1", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$_t_address_$returns$__$bound_to$_t_array$_t_address_$dyn_storage_ptr_$", + "typeString": "function (address[] storage pointer,address)" + } + }, + "id": 1755, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11157:57:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1756, + "nodeType": "ExpressionStatement", + "src": "11157:57:1" + } + ] + }, + "functionSelector": "b5e801d5", + "id": 1758, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "reportUpVote", + "nameLocation": "10983:12:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1734, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1733, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "11004:11:1", + "nodeType": "VariableDeclaration", + "scope": 1758, + "src": "10996:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1732, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "10996:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "10995:21:1" + }, + "returnParameters": { + "id": 1735, + "nodeType": "ParameterList", + "parameters": [], + "src": "11024:0:1" + }, + "scope": 2045, + "src": "10974:248:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1784, + "nodeType": "Block", + "src": "11365:204:1", + "statements": [ + { + "expression": { + "id": 1773, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1763, + "name": "financialReportMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 847, + "src": "11376:18:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport storage ref)" + } + }, + "id": 1765, + "indexExpression": { + "id": 1764, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1760, + "src": "11395:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "11376:31:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage", + "typeString": "struct OrgOperation.FinancialReport storage ref" + } + }, + "id": 1766, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "11408:9:1", + "memberName": "downvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 821, + "src": "11376:41:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1772, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1767, + "name": "financialReportMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 847, + "src": "11433:18:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport storage ref)" + } + }, + "id": 1769, + "indexExpression": { + "id": 1768, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1760, + "src": "11452:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "11433:31:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage", + "typeString": "struct OrgOperation.FinancialReport storage ref" + } + }, + "id": 1770, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "11465:9:1", + "memberName": "downvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 821, + "src": "11433:41:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "hexValue": "31", + "id": 1771, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11490:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "11433:58:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "11376:115:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1774, + "nodeType": "ExpressionStatement", + "src": "11376:115:1" + }, + { + "expression": { + "arguments": [ + { + "expression": { + "id": 1780, + "name": "msg", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 4294967281, + "src": "11550:3:1", + "typeDescriptions": { + "typeIdentifier": "t_magic_message", + "typeString": "msg" + } + }, + "id": 1781, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "11554:6:1", + "memberName": "sender", + "nodeType": "MemberAccess", + "src": "11550:10:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "expression": { + "baseExpression": { + "id": 1775, + "name": "financialReportMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 847, + "src": "11502:18:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport storage ref)" + } + }, + "id": 1777, + "indexExpression": { + "id": 1776, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1760, + "src": "11521:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "11502:31:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage", + "typeString": "struct OrgOperation.FinancialReport storage ref" + } + }, + "id": 1778, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "11534:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 827, + "src": "11502:42:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1779, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "11545:4:1", + "memberName": "push", + "nodeType": "MemberAccess", + "src": "11502:47:1", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$_t_address_$returns$__$bound_to$_t_array$_t_address_$dyn_storage_ptr_$", + "typeString": "function (address[] storage pointer,address)" + } + }, + "id": 1782, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "11502:59:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1783, + "nodeType": "ExpressionStatement", + "src": "11502:59:1" + } + ] + }, + "functionSelector": "14cb11e8", + "id": 1785, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "reportsDownVote", + "nameLocation": "11321:15:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1761, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1760, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "11345:11:1", + "nodeType": "VariableDeclaration", + "scope": 1785, + "src": "11337:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1759, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "11337:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "11336:21:1" + }, + "returnParameters": { + "id": 1762, + "nodeType": "ParameterList", + "parameters": [], + "src": "11365:0:1" + }, + "scope": 2045, + "src": "11312:257:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1829, + "nodeType": "Block", + "src": "11727:379:1", + "statements": [ + { + "assignments": [ + 1791 + ], + "declarations": [ + { + "constant": false, + "id": 1791, + "mutability": "mutable", + "name": "totalVotes", + "nameLocation": "11746:10:1", + "nodeType": "VariableDeclaration", + "scope": 1829, + "src": "11738:18:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1790, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "11738:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1801, + "initialValue": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1800, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1792, + "name": "financialReportMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 847, + "src": "11759:18:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport storage ref)" + } + }, + "id": 1794, + "indexExpression": { + "id": 1793, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1787, + "src": "11778:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "11759:31:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage", + "typeString": "struct OrgOperation.FinancialReport storage ref" + } + }, + "id": 1795, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "11791:7:1", + "memberName": "upvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 819, + "src": "11759:39:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "expression": { + "baseExpression": { + "id": 1796, + "name": "financialReportMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 847, + "src": "11814:18:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport storage ref)" + } + }, + "id": 1798, + "indexExpression": { + "id": 1797, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1787, + "src": "11833:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "11814:31:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage", + "typeString": "struct OrgOperation.FinancialReport storage ref" + } + }, + "id": 1799, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "11846:9:1", + "memberName": "downvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 821, + "src": "11814:41:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "11759:96:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "11738:117:1" + }, + { + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1811, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1807, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1802, + "name": "financialReportMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 847, + "src": "11870:18:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport storage ref)" + } + }, + "id": 1804, + "indexExpression": { + "id": 1803, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1787, + "src": "11889:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "11870:31:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage", + "typeString": "struct OrgOperation.FinancialReport storage ref" + } + }, + "id": 1805, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "11902:7:1", + "memberName": "upvotes", + "nodeType": "MemberAccess", + "referencedDeclaration": 819, + "src": "11870:39:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "313030", + "id": 1806, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11912:3:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_100_by_1", + "typeString": "int_const 100" + }, + "value": "100" + }, + "src": "11870:45:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": ">=", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1810, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1808, + "name": "totalVotes", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1791, + "src": "11919:10:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "*", + "rightExpression": { + "hexValue": "3531", + "id": 1809, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11932:2:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_51_by_1", + "typeString": "int_const 51" + }, + "value": "51" + }, + "src": "11919:15:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "11870:64:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "falseBody": { + "id": 1827, + "nodeType": "Block", + "src": "12020:79:1", + "statements": [ + { + "expression": { + "id": 1825, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1820, + "name": "financialReportMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 847, + "src": "12035:18:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport storage ref)" + } + }, + "id": 1822, + "indexExpression": { + "id": 1821, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1787, + "src": "12054:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12035:31:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage", + "typeString": "struct OrgOperation.FinancialReport storage ref" + } + }, + "id": 1823, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "12067:12:1", + "memberName": "isReportTrue", + "nodeType": "MemberAccess", + "referencedDeclaration": 833, + "src": "12035:44:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "66616c7365", + "id": 1824, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12082:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "src": "12035:52:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1826, + "nodeType": "ExpressionStatement", + "src": "12035:52:1" + } + ] + }, + "id": 1828, + "nodeType": "IfStatement", + "src": "11866:233:1", + "trueBody": { + "id": 1819, + "nodeType": "Block", + "src": "11936:78:1", + "statements": [ + { + "expression": { + "id": 1817, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1812, + "name": "financialReportMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 847, + "src": "11951:18:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport storage ref)" + } + }, + "id": 1814, + "indexExpression": { + "id": 1813, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1787, + "src": "11970:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "11951:31:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage", + "typeString": "struct OrgOperation.FinancialReport storage ref" + } + }, + "id": 1815, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "11983:12:1", + "memberName": "isReportTrue", + "nodeType": "MemberAccess", + "referencedDeclaration": 833, + "src": "11951:44:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "74727565", + "id": 1816, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "11998:4:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "true" + }, + "src": "11951:51:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1818, + "nodeType": "ExpressionStatement", + "src": "11951:51:1" + } + ] + } + } + ] + }, + "functionSelector": "80e179e9", + "id": 1830, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "checkFinancialReportStatus", + "nameLocation": "11672:26:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1788, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1787, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "11707:11:1", + "nodeType": "VariableDeclaration", + "scope": 1830, + "src": "11699:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1786, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "11699:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "11698:21:1" + }, + "returnParameters": { + "id": 1789, + "nodeType": "ParameterList", + "parameters": [], + "src": "11727:0:1" + }, + "scope": 2045, + "src": "11663:443:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 1919, + "nodeType": "Block", + "src": "12288:895:1", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1840, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1835, + "name": "financialReportMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 847, + "src": "12303:18:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport storage ref)" + } + }, + "id": 1837, + "indexExpression": { + "id": 1836, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1832, + "src": "12322:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12303:31:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage", + "typeString": "struct OrgOperation.FinancialReport storage ref" + } + }, + "id": 1838, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "12335:12:1", + "memberName": "isReportTrue", + "nodeType": "MemberAccess", + "referencedDeclaration": 833, + "src": "12303:44:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "66616c7365", + "id": 1839, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12351:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "src": "12303:53:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1918, + "nodeType": "IfStatement", + "src": "12299:877:1", + "trueBody": { + "id": 1917, + "nodeType": "Block", + "src": "12358:818:1", + "statements": [ + { + "body": { + "id": 1877, + "nodeType": "Block", + "src": "12512:247:1", + "statements": [ + { + "expression": { + "id": 1875, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1855, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "12531:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1862, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 1856, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "12545:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1858, + "indexExpression": { + "id": 1857, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1832, + "src": "12559:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12545:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1859, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "12572:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 18, + "src": "12545:35:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1861, + "indexExpression": { + "id": 1860, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1842, + "src": "12581:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12545:38:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12531:53:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1863, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "12585:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "12531:59:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1874, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1864, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "12614:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1871, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 1865, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "12628:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1867, + "indexExpression": { + "id": 1866, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1832, + "src": "12642:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12628:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1868, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "12655:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 18, + "src": "12628:35:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1870, + "indexExpression": { + "id": 1869, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1842, + "src": "12664:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12628:38:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12614:53:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1872, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "12694:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "12614:85:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "-", + "rightExpression": { + "id": 1873, + "name": "stakeToBeDistributed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 92, + "src": "12723:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12614:129:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12531:212:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1876, + "nodeType": "ExpressionStatement", + "src": "12531:212:1" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1851, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1845, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1842, + "src": "12428:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "expression": { + "baseExpression": { + "id": 1846, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "12432:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1848, + "indexExpression": { + "id": 1847, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1832, + "src": "12446:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12432:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1849, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "12459:8:1", + "memberName": "upvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 18, + "src": "12432:35:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1850, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "12468:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "12432:42:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12428:46:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1878, + "initializationExpression": { + "assignments": [ + 1842 + ], + "declarations": [ + { + "constant": false, + "id": 1842, + "mutability": "mutable", + "name": "i", + "nameLocation": "12404:1:1", + "nodeType": "VariableDeclaration", + "scope": 1878, + "src": "12396:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1841, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12396:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1844, + "initialValue": { + "hexValue": "30", + "id": 1843, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12408:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "12396:13:1" + }, + "loopExpression": { + "expression": { + "id": 1853, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "12493:3:1", + "subExpression": { + "id": 1852, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1842, + "src": "12493:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1854, + "nodeType": "ExpressionStatement", + "src": "12493:3:1" + }, + "nodeType": "ForStatement", + "src": "12373:386:1" + }, + { + "body": { + "id": 1915, + "nodeType": "Block", + "src": "12914:251:1", + "statements": [ + { + "expression": { + "id": 1913, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1893, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "12933:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1900, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 1894, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "12947:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1896, + "indexExpression": { + "id": 1895, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1832, + "src": "12961:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12947:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1897, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "12974:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 21, + "src": "12947:37:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1899, + "indexExpression": { + "id": 1898, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1880, + "src": "12985:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12947:40:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12933:55:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1901, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "12989:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "12933:61:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1912, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1902, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "13018:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1909, + "indexExpression": { + "baseExpression": { + "expression": { + "baseExpression": { + "id": 1903, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "13032:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1905, + "indexExpression": { + "id": 1904, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1832, + "src": "13046:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "13032:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1906, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "13059:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 21, + "src": "13032:37:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1908, + "indexExpression": { + "id": 1907, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1880, + "src": "13070:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "13032:40:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "13018:55:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1910, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "13100:5:1", + "memberName": "stake", + "nodeType": "MemberAccess", + "referencedDeclaration": 27, + "src": "13018:87:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "+", + "rightExpression": { + "id": 1911, + "name": "stakeToBeDistributed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 92, + "src": "13129:20:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "13018:131:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12933:216:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1914, + "nodeType": "ExpressionStatement", + "src": "12933:216:1" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1889, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1883, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1880, + "src": "12828:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "expression": { + "baseExpression": { + "id": 1884, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "12832:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1886, + "indexExpression": { + "id": 1885, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1832, + "src": "12846:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "12832:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1887, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "12859:10:1", + "memberName": "downvoters", + "nodeType": "MemberAccess", + "referencedDeclaration": 21, + "src": "12832:37:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1888, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "12870:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "12832:44:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "12828:48:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1916, + "initializationExpression": { + "assignments": [ + 1880 + ], + "declarations": [ + { + "constant": false, + "id": 1880, + "mutability": "mutable", + "name": "i", + "nameLocation": "12804:1:1", + "nodeType": "VariableDeclaration", + "scope": 1916, + "src": "12796:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1879, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "12796:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1882, + "initialValue": { + "hexValue": "30", + "id": 1881, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "12808:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "12796:13:1" + }, + "loopExpression": { + "expression": { + "id": 1891, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "12895:3:1", + "subExpression": { + "id": 1890, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1880, + "src": "12895:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1892, + "nodeType": "ExpressionStatement", + "src": "12895:3:1" + }, + "nodeType": "ForStatement", + "src": "12773:392:1" + } + ] + } + } + ] + }, + "functionSelector": "ef2d5847", + "id": 1920, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "upvotedOnFinancialReport", + "nameLocation": "12235:24:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1833, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1832, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "12268:11:1", + "nodeType": "VariableDeclaration", + "scope": 1920, + "src": "12260:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1831, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "12260:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "12259:21:1" + }, + "returnParameters": { + "id": 1834, + "nodeType": "ParameterList", + "parameters": [], + "src": "12288:0:1" + }, + "scope": 2045, + "src": "12226:957:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 2035, + "nodeType": "Block", + "src": "13414:1092:1", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1930, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1925, + "name": "financialReportMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 847, + "src": "13429:18:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_FinancialReport_$837_storage_$", + "typeString": "mapping(address => struct OrgOperation.FinancialReport storage ref)" + } + }, + "id": 1927, + "indexExpression": { + "id": 1926, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1922, + "src": "13448:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "13429:31:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_FinancialReport_$837_storage", + "typeString": "struct OrgOperation.FinancialReport storage ref" + } + }, + "id": 1928, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "13461:12:1", + "memberName": "isReportTrue", + "nodeType": "MemberAccess", + "referencedDeclaration": 833, + "src": "13429:44:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "==", + "rightExpression": { + "hexValue": "66616c7365", + "id": 1929, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13477:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "src": "13429:53:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2034, + "nodeType": "IfStatement", + "src": "13425:1074:1", + "trueBody": { + "id": 2033, + "nodeType": "Block", + "src": "13484:1015:1", + "statements": [ + { + "expression": { + "id": 1936, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "expression": { + "baseExpression": { + "id": 1931, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "13499:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1933, + "indexExpression": { + "id": 1932, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1922, + "src": "13513:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "13499:26:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1934, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "memberLocation": "13526:19:1", + "memberName": "verification_status", + "nodeType": "MemberAccess", + "referencedDeclaration": 15, + "src": "13499:46:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "66616c7365", + "id": 1935, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13548:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "src": "13499:54:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1937, + "nodeType": "ExpressionStatement", + "src": "13499:54:1" + }, + { + "expression": { + "id": 1940, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1938, + "name": "totalOrganizations", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 90, + "src": "13568:18:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "-=", + "rightHandSide": { + "hexValue": "31", + "id": 1939, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13590:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_1_by_1", + "typeString": "int_const 1" + }, + "value": "1" + }, + "src": "13568:23:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1941, + "nodeType": "ExpressionStatement", + "src": "13568:23:1" + }, + { + "expression": { + "id": 1946, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "baseExpression": { + "id": 1942, + "name": "verifiedOrgMap", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 70, + "src": "13606:14:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_bool_$", + "typeString": "mapping(address => bool)" + } + }, + "id": 1944, + "indexExpression": { + "id": 1943, + "name": "org_address", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1922, + "src": "13621:11:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": true, + "nodeType": "IndexAccess", + "src": "13606:27:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "hexValue": "66616c7365", + "id": 1945, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "bool", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13636:5:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "value": "false" + }, + "src": "13606:35:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1947, + "nodeType": "ExpressionStatement", + "src": "13606:35:1" + }, + { + "assignments": [ + 1949 + ], + "declarations": [ + { + "constant": false, + "id": 1949, + "mutability": "mutable", + "name": "maxPoints", + "nameLocation": "13664:9:1", + "nodeType": "VariableDeclaration", + "scope": 2033, + "src": "13656:17:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1948, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "13656:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1950, + "nodeType": "VariableDeclarationStatement", + "src": "13656:17:1" + }, + { + "body": { + "id": 1996, + "nodeType": "Block", + "src": "13747:384:1", + "statements": [ + { + "condition": { + "commonType": { + "typeIdentifier": "t_bool", + "typeString": "bool" + }, + "id": 1976, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "expression": { + "baseExpression": { + "id": 1962, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "13792:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1966, + "indexExpression": { + "baseExpression": { + "id": 1963, + "name": "organizationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 77, + "src": "13806:19:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1965, + "indexExpression": { + "id": 1964, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1952, + "src": "13826:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "13806:22:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "13792:37:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1967, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "13830:19:1", + "memberName": "verification_status", + "nodeType": "MemberAccess", + "referencedDeclaration": 15, + "src": "13792:57:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "nodeType": "BinaryOperation", + "operator": "&&", + "rightExpression": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1975, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1968, + "name": "maxPoints", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1949, + "src": "13874:9:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "baseExpression": { + "id": 1969, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "13886:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1973, + "indexExpression": { + "baseExpression": { + "id": 1970, + "name": "organizationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 77, + "src": "13900:19:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1972, + "indexExpression": { + "id": 1971, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1952, + "src": "13920:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "13900:22:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "13886:37:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1974, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "13924:6:1", + "memberName": "points", + "nodeType": "MemberAccess", + "referencedDeclaration": 31, + "src": "13886:44:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "13874:56:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "src": "13792:138:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1995, + "nodeType": "IfStatement", + "src": "13766:350:1", + "trueBody": { + "id": 1994, + "nodeType": "Block", + "src": "13950:166:1", + "statements": [ + { + "expression": { + "id": 1984, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "id": 1977, + "name": "maxPoints", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1949, + "src": "13973:9:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "expression": { + "baseExpression": { + "id": 1978, + "name": "orgIdentifier", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 60, + "src": "13985:13:1", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Organization_$36_storage_$", + "typeString": "mapping(address => struct OrgCreation.Organization storage ref)" + } + }, + "id": 1982, + "indexExpression": { + "baseExpression": { + "id": 1979, + "name": "organizationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 77, + "src": "13999:19:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1981, + "indexExpression": { + "id": 1980, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1952, + "src": "14019:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "13999:22:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "13985:37:1", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Organization_$36_storage", + "typeString": "struct OrgCreation.Organization storage ref" + } + }, + "id": 1983, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "memberLocation": "14023:6:1", + "memberName": "points", + "nodeType": "MemberAccess", + "referencedDeclaration": 31, + "src": "13985:44:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "13973:56:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1985, + "nodeType": "ExpressionStatement", + "src": "13973:56:1" + }, + { + "expression": { + "arguments": [ + { + "baseExpression": { + "id": 1989, + "name": "organizationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 77, + "src": "14073:19:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1991, + "indexExpression": { + "id": 1990, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1952, + "src": "14093:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "isConstant": false, + "isLValue": true, + "isPure": false, + "lValueRequested": false, + "nodeType": "IndexAccess", + "src": "14073:22:1", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "expression": { + "id": 1986, + "name": "maxPointAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 83, + "src": "14052:15:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1988, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "14068:4:1", + "memberName": "push", + "nodeType": "MemberAccess", + "src": "14052:20:1", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypush_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$_t_address_$returns$__$bound_to$_t_array$_t_address_$dyn_storage_ptr_$", + "typeString": "function (address[] storage pointer,address)" + } + }, + "id": 1992, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14052:44:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1993, + "nodeType": "ExpressionStatement", + "src": "14052:44:1" + } + ] + } + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 1958, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 1955, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1952, + "src": "13710:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 1956, + "name": "organizationAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 77, + "src": "13714:19:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 1957, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "13734:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "13714:26:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "13710:30:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 1997, + "initializationExpression": { + "assignments": [ + 1952 + ], + "declarations": [ + { + "constant": false, + "id": 1952, + "mutability": "mutable", + "name": "i", + "nameLocation": "13703:1:1", + "nodeType": "VariableDeclaration", + "scope": 1997, + "src": "13695:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1951, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "13695:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 1954, + "initialValue": { + "hexValue": "30", + "id": 1953, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "13707:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "13695:13:1" + }, + "loopExpression": { + "expression": { + "id": 1960, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "13742:3:1", + "subExpression": { + "id": 1959, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1952, + "src": "13742:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 1961, + "nodeType": "ExpressionStatement", + "src": "13742:3:1" + }, + "nodeType": "ForStatement", + "src": "13690:441:1" + }, + { + "body": { + "id": 2009, + "nodeType": "Block", + "src": "14200:121:1", + "statements": [] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2005, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2002, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1999, + "src": "14167:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "expression": { + "id": 2003, + "name": "maxPointAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 83, + "src": "14171:15:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 2004, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "14187:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "14171:22:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "14167:26:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2010, + "initializationExpression": { + "assignments": [ + 1999 + ], + "declarations": [ + { + "constant": false, + "id": 1999, + "mutability": "mutable", + "name": "i", + "nameLocation": "14160:1:1", + "nodeType": "VariableDeclaration", + "scope": 2010, + "src": "14152:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 1998, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14152:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2001, + "initialValue": { + "hexValue": "30", + "id": 2000, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14164:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "14152:13:1" + }, + "loopExpression": { + "expression": { + "id": 2007, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "14195:3:1", + "subExpression": { + "id": 2006, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1999, + "src": "14195:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2008, + "nodeType": "ExpressionStatement", + "src": "14195:3:1" + }, + "nodeType": "ForStatement", + "src": "14147:174:1" + }, + { + "assignments": [ + 2012 + ], + "declarations": [ + { + "constant": false, + "id": 2012, + "mutability": "mutable", + "name": "loopTime", + "nameLocation": "14345:8:1", + "nodeType": "VariableDeclaration", + "scope": 2033, + "src": "14337:16:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2011, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14337:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2015, + "initialValue": { + "expression": { + "id": 2013, + "name": "maxPointAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 83, + "src": "14356:15:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 2014, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "14372:6:1", + "memberName": "length", + "nodeType": "MemberAccess", + "src": "14356:22:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "14337:41:1" + }, + { + "body": { + "id": 2031, + "nodeType": "Block", + "src": "14432:56:1", + "statements": [ + { + "expression": { + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "id": 2026, + "name": "maxPointAddress", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 83, + "src": "14451:15:1", + "typeDescriptions": { + "typeIdentifier": "t_array$_t_address_$dyn_storage", + "typeString": "address[] storage ref" + } + }, + "id": 2028, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberLocation": "14467:3:1", + "memberName": "pop", + "nodeType": "MemberAccess", + "src": "14451:19:1", + "typeDescriptions": { + "typeIdentifier": "t_function_arraypop_nonpayable$_t_array$_t_address_$dyn_storage_ptr_$returns$__$bound_to$_t_array$_t_address_$dyn_storage_ptr_$", + "typeString": "function (address[] storage pointer)" + } + }, + "id": 2029, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "nameLocations": [], + "names": [], + "nodeType": "FunctionCall", + "src": "14451:21:1", + "tryCall": false, + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 2030, + "nodeType": "ExpressionStatement", + "src": "14451:21:1" + } + ] + }, + "condition": { + "commonType": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "id": 2022, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "id": 2020, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2017, + "src": "14413:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "nodeType": "BinaryOperation", + "operator": "<", + "rightExpression": { + "id": 2021, + "name": "loopTime", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2012, + "src": "14417:8:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "src": "14413:12:1", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + }, + "id": 2032, + "initializationExpression": { + "assignments": [ + 2017 + ], + "declarations": [ + { + "constant": false, + "id": 2017, + "mutability": "mutable", + "name": "i", + "nameLocation": "14406:1:1", + "nodeType": "VariableDeclaration", + "scope": 2032, + "src": "14398:9:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + }, + "typeName": { + "id": 2016, + "name": "uint256", + "nodeType": "ElementaryTypeName", + "src": "14398:7:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "visibility": "internal" + } + ], + "id": 2019, + "initialValue": { + "hexValue": "30", + "id": 2018, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "14410:1:1", + "typeDescriptions": { + "typeIdentifier": "t_rational_0_by_1", + "typeString": "int_const 0" + }, + "value": "0" + }, + "nodeType": "VariableDeclarationStatement", + "src": "14398:13:1" + }, + "loopExpression": { + "expression": { + "id": 2024, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "UnaryOperation", + "operator": "++", + "prefix": false, + "src": "14427:3:1", + "subExpression": { + "id": 2023, + "name": "i", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 2017, + "src": "14427:1:1", + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "typeDescriptions": { + "typeIdentifier": "t_uint256", + "typeString": "uint256" + } + }, + "id": 2025, + "nodeType": "ExpressionStatement", + "src": "14427:3:1" + }, + "nodeType": "ForStatement", + "src": "14393:95:1" + } + ] + } + } + ] + }, + "functionSelector": "4438d4b0", + "id": 2036, + "implemented": true, + "kind": "function", + "modifiers": [], + "name": "RemoveCharityIfFinancialReportFraud", + "nameLocation": "13350:35:1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1923, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1922, + "mutability": "mutable", + "name": "org_address", + "nameLocation": "13394:11:1", + "nodeType": "VariableDeclaration", + "scope": 2036, + "src": "13386:19:1", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1921, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "13386:7:1", + "stateMutability": "nonpayable", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "visibility": "internal" + } + ], + "src": "13385:21:1" + }, + "returnParameters": { + "id": 1924, + "nodeType": "ParameterList", + "parameters": [], + "src": "13414:0:1" + }, + "scope": 2045, + "src": "13341:1165:1", + "stateMutability": "nonpayable", + "virtual": false, + "visibility": "public" + }, + { + "body": { + "id": 2039, + "nodeType": "Block", + "src": "14599:2:1", + "statements": [] + }, + "id": 2040, + "implemented": true, + "kind": "receive", + "modifiers": [], + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2037, + "nodeType": "ParameterList", + "parameters": [], + "src": "14579:2:1" + }, + "returnParameters": { + "id": 2038, + "nodeType": "ParameterList", + "parameters": [], + "src": "14599:0:1" + }, + "scope": 2045, + "src": "14572:29:1", + "stateMutability": "payable", + "virtual": false, + "visibility": "external" + }, + { + "body": { + "id": 2043, + "nodeType": "Block", + "src": "14700:2:1", + "statements": [] + }, + "id": 2044, + "implemented": true, + "kind": "fallback", + "modifiers": [], + "name": "", + "nameLocation": "-1:-1:-1", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 2041, + "nodeType": "ParameterList", + "parameters": [], + "src": "14680:2:1" + }, + "returnParameters": { + "id": 2042, + "nodeType": "ParameterList", + "parameters": [], + "src": "14700:0:1" + }, + "scope": 2045, + "src": "14672:30:1", + "stateMutability": "payable", + "virtual": false, + "visibility": "external" + } + ], + "scope": 2046, + "src": "96:14609:1", + "usedErrors": [] + } + ], + "src": "40:14667:1" + }, + "functionHashes": { + "RemoveCharityIfFinancialReportFraud(address)": "4438d4b0", + "RemoveCharityIfFraud(address)": "ae51c2bc", + "admin()": "f851a440", + "changeIsStakedPaid()": "a1b0ffe0", + "checkFinancialReportStatus(address)": "80e179e9", + "checkIfDownvoted(address)": "3e85747e", + "checkIfUpvoted(address)": "c9dfca10", + "checkVerificationStatus(address)": "6fc3911c", + "checkViolationStatus(address)": "71206274", + "countOfDownvotes(address)": "b7627e41", + "countOfUpvotes(address)": "5cf9303f", + "countOfViews(address)": "e75176b5", + "cutStakeOfNotVoted()": "bc489aa9", + "distributeStake(address,bool)": "1e477180", + "downVote(address,uint256)": "f15c01dd", + "emptyListOrganization()": "8fc0ed2f", + "emptyNotVotedArray(address)": "8e349519", + "isStaked()": "e3323aba", + "isVerified()": "80007e83", + "markAsVerified(address)": "62ae7ac7", + "notVoted(address)": "a52da85d", + "registerFinancialReport(address,string,uint256)": "482bd55b", + "registerOrg(address,string,string,string,uint256)": "440370fe", + "registerViolation(address,string,string,uint256)": "ac64fcde", + "reportUpVote(address)": "b5e801d5", + "reportsDownVote(address)": "14cb11e8", + "totalOrganizations()": "4cf5d552", + "unverifiedOrganizationsList()": "2d80468d", + "upVote(address,uint256)": "e2579114", + "upvotedOnFinancialReport(address)": "ef2d5847", + "upvotedOnVerify(address)": "0a54ecbf", + "verifiedOrganizationsList()": "5d0161f1", + "violationDownVote(address)": "0037556e", + "violationUpVote(address)": "55779b65", + "votingDone(address,uint256)": "4648df2a" + }, + "gasEstimates": { + "creation": { + "codeDepositCost": "2713800", + "executionCost": "infinite", + "totalCost": "infinite" + }, + "external": { + "": "208", + "RemoveCharityIfFinancialReportFraud(address)": "infinite", + "RemoveCharityIfFraud(address)": "infinite", + "admin()": "2469", + "changeIsStakedPaid()": "24478", + "checkFinancialReportStatus(address)": "infinite", + "checkIfDownvoted(address)": "2709", + "checkIfUpvoted(address)": "2730", + "checkVerificationStatus(address)": "infinite", + "checkViolationStatus(address)": "infinite", + "countOfDownvotes(address)": "2591", + "countOfUpvotes(address)": "2591", + "countOfViews(address)": "infinite", + "cutStakeOfNotVoted()": "infinite", + "distributeStake(address,bool)": "infinite", + "downVote(address,uint256)": "infinite", + "emptyListOrganization()": "infinite", + "emptyNotVotedArray(address)": "infinite", + "isStaked()": "2425", + "isVerified()": "2427", + "markAsVerified(address)": "73334", + "notVoted(address)": "infinite", + "registerFinancialReport(address,string,uint256)": "infinite", + "registerOrg(address,string,string,string,uint256)": "infinite", + "registerViolation(address,string,string,uint256)": "infinite", + "reportUpVote(address)": "73430", + "reportsDownVote(address)": "73394", + "totalOrganizations()": "2385", + "unverifiedOrganizationsList()": "infinite", + "upVote(address,uint256)": "infinite", + "upvotedOnFinancialReport(address)": "infinite", + "upvotedOnVerify(address)": "infinite", + "verifiedOrganizationsList()": "infinite", + "violationDownVote(address)": "73350", + "violationUpVote(address)": "73415", + "votingDone(address,uint256)": "2680" + } + } +} \ No newline at end of file diff --git a/frontend/constants/index.js b/frontend/constants/index.js index 8c76e27..426c3f7 100644 --- a/frontend/constants/index.js +++ b/frontend/constants/index.js @@ -1,672 +1,687 @@ -export const REGISTER_CONTRACT_ADDRESS = "0xE40eC3E826091f88F30Ea9926F583aea70F3E4fa"; +export const REGISTER_CONTRACT_ADDRESS = + "0x2C851eFF32208b05138475E50cD7c25De8039373"; + export const abi = [ - { - "inputs": [], - "stateMutability": "nonpayable", - "type": "constructor" - }, - { - "stateMutability": "payable", - "type": "fallback" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "org_address", - "type": "address" - } - ], - "name": "RemoveCharityIfFinancialReportFraud", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "org_address", - "type": "address" - } - ], - "name": "RemoveCharityIfFraud", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "admin", - "outputs": [ - { - "internalType": "address", - "name": "", - "type": "address" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "changeIsStakedPaid", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "org_address", - "type": "address" - } - ], - "name": "checkFinancialReportStatus", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "org_address", - "type": "address" - } - ], - "name": "checkIfDownvoted", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "org_address", - "type": "address" - } - ], - "name": "checkIfUpvoted", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "org_address", - "type": "address" - } - ], - "name": "checkVerificationStatus", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "org_address", - "type": "address" - } - ], - "name": "checkViolationStatus", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "org_addr", - "type": "address" - } - ], - "name": "countOfDownvotes", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "org_addr", - "type": "address" - } - ], - "name": "countOfUpvotes", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "org_addr", - "type": "address" - } - ], - "name": "countOfViews", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "cutStakeOfNotVoted", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "org_address", - "type": "address" - }, - { - "internalType": "bool", - "name": "category", - "type": "bool" - } - ], - "name": "distributeStake", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "org_addr", - "type": "address" - }, - { - "internalType": "uint256", - "name": "current_time", - "type": "uint256" - } - ], - "name": "downVote", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "emptyListOrganization", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "org_address", - "type": "address" - } - ], - "name": "emptyNotVotedArray", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "isStaked", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "isVerified", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "org_address", - "type": "address" - } - ], - "name": "markAsVerified", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "org_address", - "type": "address" - } - ], - "name": "notVoted", - "outputs": [ - { - "internalType": "address[]", - "name": "", - "type": "address[]" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "org_address", - "type": "address" - }, - { - "internalType": "string", - "name": "cid", - "type": "string" - }, - { - "internalType": "uint256", - "name": "registration_time", - "type": "uint256" - } - ], - "name": "registerFinancialReport", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "organization_address", - "type": "address" - }, - { - "internalType": "string", - "name": "organization_name", - "type": "string" - }, - { - "internalType": "string", - "name": "document_cid", - "type": "string" - }, - { - "internalType": "string", - "name": "description", - "type": "string" - }, - { - "internalType": "uint256", - "name": "time", - "type": "uint256" - } - ], - "name": "registerOrg", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "organization_address", - "type": "address" - }, - { - "internalType": "string", - "name": "document_cid", - "type": "string" - }, - { - "internalType": "string", - "name": "description", - "type": "string" - }, - { - "internalType": "uint256", - "name": "registration_time", - "type": "uint256" - } - ], - "name": "registerViolation", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "org_address", - "type": "address" - } - ], - "name": "reportUpVote", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "org_address", - "type": "address" - } - ], - "name": "reportsDownVote", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "totalOrganizations", - "outputs": [ - { - "internalType": "uint256", - "name": "", - "type": "uint256" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [], - "name": "unverifiedOrganizationsList", - "outputs": [ - { - "components": [ - { - "internalType": "address", - "name": "org_address", - "type": "address" - }, - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "doc_cid", - "type": "string" - }, - { - "internalType": "uint256", - "name": "upvotes", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "downvotes", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "views", - "type": "uint256" - }, - { - "internalType": "bool", - "name": "verification_status", - "type": "bool" - }, - { - "internalType": "string", - "name": "desc", - "type": "string" - }, - { - "internalType": "uint256", - "name": "application_time", - "type": "uint256" - } - ], - "internalType": "struct Charity.OrgDetails[]", - "name": "", - "type": "tuple[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "org_addr", - "type": "address" - }, - { - "internalType": "uint256", - "name": "current_time", - "type": "uint256" - } - ], - "name": "upVote", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "org_address", - "type": "address" - } - ], - "name": "upvotedOnFinancialReport", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "org_address", - "type": "address" - } - ], - "name": "upvotedOnVerify", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [], - "name": "verifiedOrganizationsList", - "outputs": [ - { - "components": [ - { - "internalType": "address", - "name": "org_address", - "type": "address" - }, - { - "internalType": "string", - "name": "name", - "type": "string" - }, - { - "internalType": "string", - "name": "doc_cid", - "type": "string" - }, - { - "internalType": "uint256", - "name": "upvotes", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "downvotes", - "type": "uint256" - }, - { - "internalType": "uint256", - "name": "views", - "type": "uint256" - }, - { - "internalType": "bool", - "name": "verification_status", - "type": "bool" - }, - { - "internalType": "string", - "name": "desc", - "type": "string" - }, - { - "internalType": "uint256", - "name": "application_time", - "type": "uint256" - } - ], - "internalType": "struct Charity.OrgDetails[]", - "name": "", - "type": "tuple[]" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "org_address", - "type": "address" - } - ], - "name": "violationDownVote", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "org_address", - "type": "address" - } - ], - "name": "violationUpVote", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" - }, - { - "inputs": [ - { - "internalType": "address", - "name": "org_addr", - "type": "address" - }, - { - "internalType": "uint256", - "name": "current_time", - "type": "uint256" - } - ], - "name": "votingDone", - "outputs": [ - { - "internalType": "bool", - "name": "", - "type": "bool" - } - ], - "stateMutability": "view", - "type": "function" - }, - { - "stateMutability": "payable", - "type": "receive" - } + { + inputs: [], + name: "changeIsStakedPaid", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "org_address", + type: "address", + }, + ], + name: "checkFinancialReportStatus", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "org_address", + type: "address", + }, + ], + name: "checkViolationStatus", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "cutStakeOfNotVoted", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "org_address", + type: "address", + }, + { + internalType: "bool", + name: "category", + type: "bool", + }, + ], + name: "distributeStake", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "org_addr", + type: "address", + }, + { + internalType: "uint256", + name: "current_time", + type: "uint256", + }, + ], + name: "downVote", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + name: "emptyListOrganization", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "org_address", + type: "address", + }, + ], + name: "emptyNotVotedArray", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "org_address", + type: "address", + }, + ], + name: "markAsVerified", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "org_address", + type: "address", + }, + ], + name: "notVoted", + outputs: [ + { + internalType: "address[]", + name: "", + type: "address[]", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "org_address", + type: "address", + }, + { + internalType: "string", + name: "cid", + type: "string", + }, + { + internalType: "uint256", + name: "registration_time", + type: "uint256", + }, + ], + name: "registerFinancialReport", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "organization_address", + type: "address", + }, + { + internalType: "string", + name: "organization_name", + type: "string", + }, + { + internalType: "string", + name: "document_cid", + type: "string", + }, + { + internalType: "string", + name: "description", + type: "string", + }, + { + internalType: "uint256", + name: "time", + type: "uint256", + }, + ], + name: "registerOrg", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "organization_address", + type: "address", + }, + { + internalType: "string", + name: "document_cid", + type: "string", + }, + { + internalType: "string", + name: "description", + type: "string", + }, + { + internalType: "uint256", + name: "registration_time", + type: "uint256", + }, + ], + name: "registerViolation", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "org_address", + type: "address", + }, + ], + name: "RemoveCharityIfFinancialReportFraud", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "org_address", + type: "address", + }, + ], + name: "RemoveCharityIfFraud", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "org_address", + type: "address", + }, + ], + name: "reportsDownVote", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "org_address", + type: "address", + }, + ], + name: "reportUpVote", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [], + stateMutability: "nonpayable", + type: "constructor", + }, + { + stateMutability: "payable", + type: "fallback", + }, + { + inputs: [ + { + internalType: "address", + name: "org_addr", + type: "address", + }, + { + internalType: "uint256", + name: "current_time", + type: "uint256", + }, + ], + name: "upVote", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "org_address", + type: "address", + }, + ], + name: "upvotedOnFinancialReport", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "org_address", + type: "address", + }, + ], + name: "upvotedOnVerify", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "org_address", + type: "address", + }, + ], + name: "violationDownVote", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "org_address", + type: "address", + }, + ], + name: "violationUpVote", + outputs: [], + stateMutability: "nonpayable", + type: "function", + }, + { + stateMutability: "payable", + type: "receive", + }, + { + inputs: [], + name: "admin", + outputs: [ + { + internalType: "address", + name: "", + type: "address", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "checkAlreadyRegistered", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "org_address", + type: "address", + }, + ], + name: "checkIfDownvoted", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "org_address", + type: "address", + }, + ], + name: "checkIfUpvoted", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "org_address", + type: "address", + }, + ], + name: "checkVerificationStatus", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "org_addr", + type: "address", + }, + ], + name: "countOfDownvotes", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "org_addr", + type: "address", + }, + ], + name: "countOfUpvotes", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "org_addr", + type: "address", + }, + ], + name: "countOfViews", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "isStaked", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "isVerified", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "totalOrganizations", + outputs: [ + { + internalType: "uint256", + name: "", + type: "uint256", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "unverifiedOrganizationsList", + outputs: [ + { + components: [ + { + internalType: "address", + name: "org_address", + type: "address", + }, + { + internalType: "string", + name: "name", + type: "string", + }, + { + internalType: "string", + name: "doc_cid", + type: "string", + }, + { + internalType: "uint256", + name: "upvotes", + type: "uint256", + }, + { + internalType: "uint256", + name: "downvotes", + type: "uint256", + }, + { + internalType: "uint256", + name: "views", + type: "uint256", + }, + { + internalType: "bool", + name: "verification_status", + type: "bool", + }, + { + internalType: "string", + name: "desc", + type: "string", + }, + { + internalType: "uint256", + name: "application_time", + type: "uint256", + }, + ], + internalType: "struct OrgCreation.OrgDetails[]", + name: "", + type: "tuple[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [], + name: "verifiedOrganizationsList", + outputs: [ + { + components: [ + { + internalType: "address", + name: "org_address", + type: "address", + }, + { + internalType: "string", + name: "name", + type: "string", + }, + { + internalType: "string", + name: "doc_cid", + type: "string", + }, + { + internalType: "uint256", + name: "upvotes", + type: "uint256", + }, + { + internalType: "uint256", + name: "downvotes", + type: "uint256", + }, + { + internalType: "uint256", + name: "views", + type: "uint256", + }, + { + internalType: "bool", + name: "verification_status", + type: "bool", + }, + { + internalType: "string", + name: "desc", + type: "string", + }, + { + internalType: "uint256", + name: "application_time", + type: "uint256", + }, + ], + internalType: "struct OrgCreation.OrgDetails[]", + name: "", + type: "tuple[]", + }, + ], + stateMutability: "view", + type: "function", + }, + { + inputs: [ + { + internalType: "address", + name: "org_addr", + type: "address", + }, + { + internalType: "uint256", + name: "current_time", + type: "uint256", + }, + ], + name: "votingDone", + outputs: [ + { + internalType: "bool", + name: "", + type: "bool", + }, + ], + stateMutability: "view", + type: "function", + }, ]; \ No newline at end of file diff --git a/frontend/package-lock.json b/frontend/package-lock.json index 4bac464..1db4b7a 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -21,12 +21,16 @@ "moralis": "^2.14.1", "next": "^13.1.6", "next-auth": "^4.19.2", + "next-themes": "^0.2.1", "react": "^18.2.0", "react-dom": "^18.2.0", + "react-dropzone": "^14.2.3", "react-moralis": "^1.4.2", + "react-router-dom": "^6.8.1", "taos": "^1.0.2", "web3.storage": "^4.4.0", - "web3modal": "^1.9.12" + "web3modal": "^1.9.12", + "web3uikit": "^1.0.4" }, "devDependencies": { "@types/react": "18.0.28", @@ -4990,6 +4994,14 @@ "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" }, + "node_modules/attr-accept": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/attr-accept/-/attr-accept-2.2.2.tgz", + "integrity": "sha512-7prDjvt9HmqiZ0cl5CRjtS84sEyhsHP2coDkaZKRKVfCDo9s7iw7ChVmar78Gu9pC4SoR/28wFu/G5JJhTnqEg==", + "engines": { + "node": ">=4" + } + }, "node_modules/autoprefixer": { "version": "10.4.13", "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.13.tgz", @@ -5979,6 +5991,11 @@ "sha.js": "^2.4.8" } }, + "node_modules/create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==" + }, "node_modules/cross-fetch": { "version": "2.2.6", "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-2.2.6.tgz", @@ -6311,6 +6328,14 @@ "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", "dev": true }, + "node_modules/diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "engines": { + "node": ">=0.3.1" + } + }, "node_modules/diffie-hellman": { "version": "5.0.3", "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", @@ -7889,6 +7914,17 @@ "node": "^10.12.0 || >=12.0.0" } }, + "node_modules/file-selector": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/file-selector/-/file-selector-0.6.0.tgz", + "integrity": "sha512-QlZ5yJC0VxHxQQsQhXvBaC7VRJ2uaxTf+Tfpu4Z/OcVQJVpZO+DGU0rkoVW5ce2SccxugvpBJoMvUs59iILYdw==", + "dependencies": { + "tslib": "^2.4.0" + }, + "engines": { + "node": ">= 12" + } + }, "node_modules/file-uri-to-path": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", @@ -10038,6 +10074,11 @@ "localforage": "^1.7.4" } }, + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==" + }, "node_modules/map-obj": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz", @@ -11395,6 +11436,16 @@ } } }, + "node_modules/next-themes": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/next-themes/-/next-themes-0.2.1.tgz", + "integrity": "sha512-B+AKNfYNIzh0vqQQKqQItTS8evEouKD7H5Hj3kmuPERwddR2TxvDSFZuTj6T7Jfn1oyeUyJMydPl1Bkxkh0W7A==", + "peerDependencies": { + "next": "*", + "react": "*", + "react-dom": "*" + } + }, "node_modules/next-tick": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", @@ -12530,6 +12581,22 @@ "react": "^18.2.0" } }, + "node_modules/react-dropzone": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/react-dropzone/-/react-dropzone-14.2.3.tgz", + "integrity": "sha512-O3om8I+PkFKbxCukfIR3QAGftYXDZfOE2N1mr/7qebQJHs7U+/RSL/9xomJNpRg9kM5h9soQSdf0Gc7OHF5Fug==", + "dependencies": { + "attr-accept": "^2.2.2", + "file-selector": "^0.6.0", + "prop-types": "^15.8.1" + }, + "engines": { + "node": ">= 10.13" + }, + "peerDependencies": { + "react": ">= 16.8 || 18.0.0" + } + }, "node_modules/react-is": { "version": "16.13.1", "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", @@ -13345,7 +13412,6 @@ "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "peer": true, "engines": { "node": ">=0.10.0" } @@ -13363,7 +13429,6 @@ "version": "0.5.21", "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "peer": true, "dependencies": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" @@ -14053,6 +14118,36 @@ "node": ">=14.0.0" } }, + "node_modules/ts-node": { + "version": "9.1.1", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-9.1.1.tgz", + "integrity": "sha512-hPlt7ZACERQGf03M253ytLY3dHbGNGrAq9qIHWUY9XHYl1z7wYngSr3OQ5xmui8o2AaxsONxIzjafLUiWBo1Fg==", + "dependencies": { + "arg": "^4.1.0", + "create-require": "^1.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "source-map-support": "^0.5.17", + "yn": "3.1.1" + }, + "bin": { + "ts-node": "dist/bin.js", + "ts-node-script": "dist/bin-script.js", + "ts-node-transpile-only": "dist/bin-transpile.js", + "ts-script": "dist/bin-script-deprecated.js" + }, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "typescript": ">=2.7" + } + }, + "node_modules/ts-node/node_modules/arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==" + }, "node_modules/tsconfig-paths": { "version": "3.14.1", "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz", @@ -14179,7 +14274,6 @@ "version": "4.9.5", "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", - "dev": true, "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -14870,290 +14964,463 @@ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, - "node_modules/webidl-conversions": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" - }, - "node_modules/webpack": { - "version": "5.75.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.75.0.tgz", - "integrity": "sha512-piaIaoVJlqMsPtX/+3KTTO6jfvrSYgauFVdt8cr9LTHKmcq/AMd4mhzsiP7ZF/PGRNPGA8336jldh9l2Kt2ogQ==", - "peer": true, + "node_modules/web3uikit": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/web3uikit/-/web3uikit-1.0.4.tgz", + "integrity": "sha512-tN9fMmQ68gKIkd1Wt0nXxxfvqwKbVBcJZuDtIWzHDsSqbryU7BpTEjYrd4UCo5KWCVNGacujCxn9JknP15lwRQ==", "dependencies": { - "@types/eslint-scope": "^3.7.3", - "@types/estree": "^0.0.51", - "@webassemblyjs/ast": "1.11.1", - "@webassemblyjs/wasm-edit": "1.11.1", - "@webassemblyjs/wasm-parser": "1.11.1", - "acorn": "^8.7.1", - "acorn-import-assertions": "^1.7.6", - "browserslist": "^4.14.5", - "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.10.0", - "es-module-lexer": "^0.9.0", - "eslint-scope": "5.1.1", - "events": "^3.2.0", - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.2.9", - "json-parse-even-better-errors": "^2.3.1", - "loader-runner": "^4.2.0", - "mime-types": "^2.1.27", - "neo-async": "^2.6.2", - "schema-utils": "^3.1.0", - "tapable": "^2.1.1", - "terser-webpack-plugin": "^5.1.3", - "watchpack": "^2.4.0", - "webpack-sources": "^3.2.3" - }, - "bin": { - "webpack": "bin/webpack.js" - }, - "engines": { - "node": ">=10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" + "@web3uikit/config": "*", + "@web3uikit/core": "*", + "@web3uikit/icons": "*", + "@web3uikit/styles": "*", + "@web3uikit/web3": "*", + "moralis": "^1.8.1", + "react-moralis": "^1.4.0", + "react-router-dom": "^6.3.0", + "ts-node": "9.1.1", + "typescript": "^4.6.3", + "wp5-cra-polyfill": "github:oscario2/wp5-cra-polyfill#91431fa" }, - "peerDependenciesMeta": { - "webpack-cli": { - "optional": true - } - } - }, - "node_modules/webpack-sources": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", - "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", - "peer": true, - "engines": { - "node": ">=10.13.0" + "peerDependencies": { + "react": "^18.0.0", + "react-dom": "^18.0.0" } }, - "node_modules/webpack/node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "peer": true, + "node_modules/web3uikit/node_modules/@babel/runtime": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.16.7.tgz", + "integrity": "sha512-9E9FJowqAsytyOY6LG+1KuueckRL+aQW+mKvXRXnuFGyRAyepJPmEo9vgMfXUA6O9u3IeEdv9MAkppFcaQwogQ==", "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" + "regenerator-runtime": "^0.13.4" }, "engines": { - "node": ">=8.0.0" + "node": ">=6.9.0" } }, - "node_modules/webpack/node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "peer": true, - "engines": { - "node": ">=4.0" + "node_modules/web3uikit/node_modules/@ethersproject/abi": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/abi/-/abi-5.6.0.tgz", + "integrity": "sha512-AhVByTwdXCc2YQ20v300w6KVHle9g2OFc28ZAFCPnJyEpkv1xKXjZcSTgWOlv1i+0dqlgF8RCF2Rn2KC1t+1Vg==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/address": "^5.6.0", + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/constants": "^5.6.0", + "@ethersproject/hash": "^5.6.0", + "@ethersproject/keccak256": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "@ethersproject/strings": "^5.6.0" } }, - "node_modules/websocket": { - "version": "1.0.34", - "resolved": "https://registry.npmjs.org/websocket/-/websocket-1.0.34.tgz", - "integrity": "sha512-PRDso2sGwF6kM75QykIesBijKSVceR6jL2G8NGYyq2XrItNC2P5/qL5XeR056GhA+Ly7JMFvJb9I312mJfmqnQ==", + "node_modules/web3uikit/node_modules/@ethersproject/abstract-provider": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/abstract-provider/-/abstract-provider-5.6.0.tgz", + "integrity": "sha512-oPMFlKLN+g+y7a79cLK3WiLcjWFnZQtXWgnLAbHZcN3s7L4v90UHpTOrLk+m3yr0gt+/h9STTM6zrr7PM8uoRw==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], "dependencies": { - "bufferutil": "^4.0.1", - "debug": "^2.2.0", - "es5-ext": "^0.10.50", - "typedarray-to-buffer": "^3.1.5", - "utf-8-validate": "^5.0.2", - "yaeti": "^0.0.6" - }, - "engines": { - "node": ">=4.0.0" + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/networks": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "@ethersproject/transactions": "^5.6.0", + "@ethersproject/web": "^5.6.0" } }, - "node_modules/websocket/node_modules/debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "node_modules/web3uikit/node_modules/@ethersproject/abstract-signer": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/abstract-signer/-/abstract-signer-5.6.0.tgz", + "integrity": "sha512-WOqnG0NJKtI8n0wWZPReHtaLkDByPL67tn4nBaDAhmVq8sjHTPbCdz4DRhVu/cfTOvfy9w3iq5QZ7BX7zw56BQ==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], "dependencies": { - "ms": "2.0.0" + "@ethersproject/abstract-provider": "^5.6.0", + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/properties": "^5.6.0" } }, - "node_modules/websocket/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - }, - "node_modules/whatwg-fetch": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.4.tgz", - "integrity": "sha512-dcQ1GWpOD/eEQ97k66aiEVpNnapVj90/+R+SXTPYGHpYBBypfKJEQjLrvMZ7YXbKm21gXd4NcuxUTjiv1YtLng==" - }, - "node_modules/whatwg-url": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "node_modules/web3uikit/node_modules/@ethersproject/address": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/address/-/address-5.6.0.tgz", + "integrity": "sha512-6nvhYXjbXsHPS+30sHZ+U4VMagFC/9zAk6Gd/h3S21YW4+yfb0WfRtaAIZ4kfM4rrVwqiy284LP0GtL5HXGLxQ==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], "dependencies": { - "tr46": "~0.0.3", - "webidl-conversions": "^3.0.0" + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/keccak256": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/rlp": "^5.6.0" } }, - "node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "license": "ISC", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/which-boxed-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", - "dev": true, - "license": "MIT", + "node_modules/web3uikit/node_modules/@ethersproject/base64": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/base64/-/base64-5.6.0.tgz", + "integrity": "sha512-2Neq8wxJ9xHxCF9TUgmKeSh9BXJ6OAxWfeGWvbauPh8FuHEjamgHilllx8KkSd5ErxyHIX7Xv3Fkcud2kY9ezw==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], "dependencies": { - "is-bigint": "^1.0.1", - "is-boolean-object": "^1.1.0", - "is-number-object": "^1.0.4", - "is-string": "^1.0.5", - "is-symbol": "^1.0.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "@ethersproject/bytes": "^5.6.0" } }, - "node_modules/which-collection": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz", - "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==", - "dev": true, - "license": "MIT", + "node_modules/web3uikit/node_modules/@ethersproject/basex": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/basex/-/basex-5.6.0.tgz", + "integrity": "sha512-qN4T+hQd/Md32MoJpc69rOwLYRUXwjTlhHDIeUkUmiN/JyWkkLLMoG0TqvSQKNqZOMgN5stbUYN6ILC+eD7MEQ==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], "dependencies": { - "is-map": "^2.0.1", - "is-set": "^2.0.1", - "is-weakmap": "^2.0.1", - "is-weakset": "^2.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/properties": "^5.6.0" } }, - "node_modules/which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==" - }, - "node_modules/which-typed-array": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz", - "integrity": "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==", - "license": "MIT", + "node_modules/web3uikit/node_modules/@ethersproject/bignumber": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/bignumber/-/bignumber-5.6.0.tgz", + "integrity": "sha512-VziMaXIUHQlHJmkv1dlcd6GY2PmT0khtAqaMctCIDogxkrarMzA9L94KN1NeXqqOfFD6r0sJT3vCTOFSmZ07DA==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0", - "is-typed-array": "^1.1.10" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/word-wrap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", - "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "bn.js": "^4.11.9" } }, - "node_modules/wp5-cra-polyfill": { - "version": "0.0.1", - "resolved": "git+ssh://git@github.com/oscario2/wp5-cra-polyfill.git#91431fa2c67aaa1247309e04799254a2e8a949d7", - "hasInstallScript": true, + "node_modules/web3uikit/node_modules/@ethersproject/bytes": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.0.tgz", + "integrity": "sha512-3hJPlYemb9V4VLfJF5BfN0+55vltPZSHU3QKUyP9M3Y2TcajbiRrz65UG+xVHOzBereB1b9mn7r12o177xgN7w==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], "dependencies": { - "node-polyfill-webpack-plugin": "^1.1.4" - }, - "peerDependencies": { - "webpack": ">=5" + "@ethersproject/logger": "^5.6.0" } }, - "node_modules/wrap-ansi": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", - "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "node_modules/web3uikit/node_modules/@ethersproject/constants": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/constants/-/constants-5.6.0.tgz", + "integrity": "sha512-SrdaJx2bK0WQl23nSpV/b1aq293Lh0sUaZT/yYKPDKn4tlAbkH96SPJwIhwSwTsoQQZxuh1jnqsKwyymoiBdWA==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], "dependencies": { - "ansi-styles": "^3.2.0", - "string-width": "^3.0.0", - "strip-ansi": "^5.0.0" - }, - "engines": { - "node": ">=6" + "@ethersproject/bignumber": "^5.6.0" } }, - "node_modules/wrap-ansi/node_modules/ansi-regex": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", - "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", - "engines": { - "node": ">=6" + "node_modules/web3uikit/node_modules/@ethersproject/contracts": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/contracts/-/contracts-5.6.0.tgz", + "integrity": "sha512-74Ge7iqTDom0NX+mux8KbRUeJgu1eHZ3iv6utv++sLJG80FVuU9HnHeKVPfjd9s3woFhaFoQGf3B3iH/FrQmgw==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/abi": "^5.6.0", + "@ethersproject/abstract-provider": "^5.6.0", + "@ethersproject/abstract-signer": "^5.6.0", + "@ethersproject/address": "^5.6.0", + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/constants": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "@ethersproject/transactions": "^5.6.0" } }, - "node_modules/wrap-ansi/node_modules/ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "node_modules/web3uikit/node_modules/@ethersproject/hash": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/hash/-/hash-5.6.0.tgz", + "integrity": "sha512-fFd+k9gtczqlr0/BruWLAu7UAOas1uRRJvOR84uDf4lNZ+bTkGl366qvniUZHKtlqxBRU65MkOobkmvmpHU+jA==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], "dependencies": { - "color-convert": "^1.9.0" - }, - "engines": { - "node": ">=4" + "@ethersproject/abstract-signer": "^5.6.0", + "@ethersproject/address": "^5.6.0", + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/keccak256": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "@ethersproject/strings": "^5.6.0" } }, - "node_modules/wrap-ansi/node_modules/color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "node_modules/web3uikit/node_modules/@ethersproject/hdnode": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/hdnode/-/hdnode-5.6.0.tgz", + "integrity": "sha512-61g3Jp3nwDqJcL/p4nugSyLrpl/+ChXIOtCEM8UDmWeB3JCAt5FoLdOMXQc3WWkc0oM2C0aAn6GFqqMcS/mHTw==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], "dependencies": { - "color-name": "1.1.3" + "@ethersproject/abstract-signer": "^5.6.0", + "@ethersproject/basex": "^5.6.0", + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/pbkdf2": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "@ethersproject/sha2": "^5.6.0", + "@ethersproject/signing-key": "^5.6.0", + "@ethersproject/strings": "^5.6.0", + "@ethersproject/transactions": "^5.6.0", + "@ethersproject/wordlists": "^5.6.0" } }, - "node_modules/wrap-ansi/node_modules/color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" - }, - "node_modules/wrap-ansi/node_modules/strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", - "dependencies": { - "ansi-regex": "^4.1.0" - }, - "engines": { - "node": ">=6" + "node_modules/web3uikit/node_modules/@ethersproject/json-wallets": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/json-wallets/-/json-wallets-5.6.0.tgz", + "integrity": "sha512-fmh86jViB9r0ibWXTQipxpAGMiuxoqUf78oqJDlCAJXgnJF024hOOX7qVgqsjtbeoxmcLwpPsXNU0WEe/16qPQ==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/abstract-signer": "^5.6.0", + "@ethersproject/address": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/hdnode": "^5.6.0", + "@ethersproject/keccak256": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/pbkdf2": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "@ethersproject/random": "^5.6.0", + "@ethersproject/strings": "^5.6.0", + "@ethersproject/transactions": "^5.6.0", + "aes-js": "3.0.0", + "scrypt-js": "3.0.1" } }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - "license": "ISC" + "node_modules/web3uikit/node_modules/@ethersproject/keccak256": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.6.0.tgz", + "integrity": "sha512-tk56BJ96mdj/ksi7HWZVWGjCq0WVl/QvfhFQNeL8fxhBlGoP+L80uDCiQcpJPd+2XxkivS3lwRm3E0CXTfol0w==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.6.0", + "js-sha3": "0.8.0" + } }, - "node_modules/ws": { + "node_modules/web3uikit/node_modules/@ethersproject/logger": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", + "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ] + }, + "node_modules/web3uikit/node_modules/@ethersproject/networks": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/networks/-/networks-5.6.0.tgz", + "integrity": "sha512-DaVzgyThzHgSDLuURhvkp4oviGoGe9iTZW4jMEORHDRCgSZ9K9THGFKqL+qGXqPAYLEgZTf5z2w56mRrPR1MjQ==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/logger": "^5.6.0" + } + }, + "node_modules/web3uikit/node_modules/@ethersproject/pbkdf2": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/pbkdf2/-/pbkdf2-5.6.0.tgz", + "integrity": "sha512-Wu1AxTgJo3T3H6MIu/eejLFok9TYoSdgwRr5oGY1LTLfmGesDoSx05pemsbrPT2gG4cQME+baTSCp5sEo2erZQ==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/sha2": "^5.6.0" + } + }, + "node_modules/web3uikit/node_modules/@ethersproject/properties": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/properties/-/properties-5.6.0.tgz", + "integrity": "sha512-szoOkHskajKePTJSZ46uHUWWkbv7TzP2ypdEK6jGMqJaEt2sb0jCgfBo0gH0m2HBpRixMuJ6TBRaQCF7a9DoCg==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/logger": "^5.6.0" + } + }, + "node_modules/web3uikit/node_modules/@ethersproject/providers": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/providers/-/providers-5.6.0.tgz", + "integrity": "sha512-6+5PKXTWAttJWFWF8+xCDTCa2/dtq9BNrdKQHGl0IyIOwj99vM6OeThmIRcsIAzIOb8m0XS6w+1KFZwrf3j9nw==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/abstract-provider": "^5.6.0", + "@ethersproject/abstract-signer": "^5.6.0", + "@ethersproject/address": "^5.6.0", + "@ethersproject/basex": "^5.6.0", + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/constants": "^5.6.0", + "@ethersproject/hash": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/networks": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "@ethersproject/random": "^5.6.0", + "@ethersproject/rlp": "^5.6.0", + "@ethersproject/sha2": "^5.6.0", + "@ethersproject/strings": "^5.6.0", + "@ethersproject/transactions": "^5.6.0", + "@ethersproject/web": "^5.6.0", + "bech32": "1.1.4", + "ws": "7.4.6" + } + }, + "node_modules/web3uikit/node_modules/@ethersproject/providers/node_modules/ws": { "version": "7.4.6", "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz", "integrity": "sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==", @@ -15173,2670 +15440,3326 @@ } } }, - "node_modules/xhr": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/xhr/-/xhr-2.6.0.tgz", - "integrity": "sha512-/eCGLb5rxjx5e3mF1A7s+pLlR6CGyqWN91fv1JgER5mVWg1MZmlhBvy9kjcsOdRk8RrIujotWyJamfyrp+WIcA==", + "node_modules/web3uikit/node_modules/@ethersproject/random": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/random/-/random-5.6.0.tgz", + "integrity": "sha512-si0PLcLjq+NG/XHSZz90asNf+YfKEqJGVdxoEkSukzbnBgC8rydbgbUgBbBGLeHN4kAJwUFEKsu3sCXT93YMsw==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], "dependencies": { - "global": "~4.4.0", - "is-function": "^1.0.1", - "parse-headers": "^2.0.0", - "xtend": "^4.0.0" + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/logger": "^5.6.0" } }, - "node_modules/xhr-request": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/xhr-request/-/xhr-request-1.1.0.tgz", - "integrity": "sha512-Y7qzEaR3FDtL3fP30k9wO/e+FBnBByZeybKOhASsGP30NIkRAAkKD/sCnLvgEfAIEC1rcmK7YG8f4oEnIrrWzA==", + "node_modules/web3uikit/node_modules/@ethersproject/rlp": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/rlp/-/rlp-5.6.0.tgz", + "integrity": "sha512-dz9WR1xpcTL+9DtOT/aDO+YyxSSdO8YIS0jyZwHHSlAmnxA6cKU3TrTd4Xc/bHayctxTgGLYNuVVoiXE4tTq1g==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], "dependencies": { - "buffer-to-arraybuffer": "^0.0.5", - "object-assign": "^4.1.1", - "query-string": "^5.0.1", - "simple-get": "^2.7.0", - "timed-out": "^4.0.1", - "url-set-query": "^1.0.0", - "xhr": "^2.0.4" + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/logger": "^5.6.0" } }, - "node_modules/xhr-request-promise": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/xhr-request-promise/-/xhr-request-promise-0.1.3.tgz", - "integrity": "sha512-YUBytBsuwgitWtdRzXDDkWAXzhdGB8bYm0sSzMPZT7Z2MBjMSTHFsyCT1yCRATY+XC69DUrQraRAEgcoCRaIPg==", + "node_modules/web3uikit/node_modules/@ethersproject/sha2": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/sha2/-/sha2-5.6.0.tgz", + "integrity": "sha512-1tNWCPFLu1n3JM9t4/kytz35DkuF9MxqkGGEHNauEbaARdm2fafnOyw1s0tIQDPKF/7bkP1u3dbrmjpn5CelyA==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], "dependencies": { - "xhr-request": "^1.1.0" + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "hash.js": "1.1.7" } }, - "node_modules/xhr-request/node_modules/query-string": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/query-string/-/query-string-5.1.1.tgz", - "integrity": "sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw==", + "node_modules/web3uikit/node_modules/@ethersproject/signing-key": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/signing-key/-/signing-key-5.6.0.tgz", + "integrity": "sha512-S+njkhowmLeUu/r7ir8n78OUKx63kBdMCPssePS89So1TH4hZqnWFsThEd/GiXYp9qMxVrydf7KdM9MTGPFukA==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], "dependencies": { - "decode-uri-component": "^0.2.0", - "object-assign": "^4.1.0", - "strict-uri-encode": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "bn.js": "^4.11.9", + "elliptic": "6.5.4", + "hash.js": "1.1.7" } }, - "node_modules/xhr-request/node_modules/strict-uri-encode": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", - "integrity": "sha512-R3f198pcvnB+5IpnBlRkphuE9n46WyVl8I39W/ZUTZLz4nqSP/oLYUrcnJrw462Ds8he4YKMov2efsTIw1BDGQ==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/xhr2-cookies": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/xhr2-cookies/-/xhr2-cookies-1.1.0.tgz", - "integrity": "sha512-hjXUA6q+jl/bd8ADHcVfFsSPIf+tyLIjuO9TwJC9WI6JP2zKcS7C+p56I9kCLLsaCiNT035iYvEUUzdEFj/8+g==", + "node_modules/web3uikit/node_modules/@ethersproject/solidity": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/solidity/-/solidity-5.6.0.tgz", + "integrity": "sha512-YwF52vTNd50kjDzqKaoNNbC/r9kMDPq3YzDWmsjFTRBcIF1y4JCQJ8gB30wsTfHbaxgxelI5BfxQSxD/PbJOww==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], "dependencies": { - "cookiejar": "^2.1.1" - } - }, - "node_modules/xmlhttprequest": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/xmlhttprequest/-/xmlhttprequest-1.8.0.tgz", - "integrity": "sha512-58Im/U0mlVBLM38NdZjHyhuMtCqa61469k2YP/AaPbvCoV9aQGUpbJBj1QRm2ytRiVQBD/fsw7L2bJGDVQswBA==", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/xmlhttprequest-ssl": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-2.0.0.tgz", - "integrity": "sha512-QKxVRxiRACQcVuQEYFsI1hhkrMlrXHPegbbd1yn9UHOmRxY+si12nQYzri3vbzt8VdTTRviqcKxcyllFas5z2A==", - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "engines": { - "node": ">=0.4" + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/keccak256": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/sha2": "^5.6.0", + "@ethersproject/strings": "^5.6.0" } }, - "node_modules/y18n": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==" - }, - "node_modules/yaeti": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/yaeti/-/yaeti-0.0.6.tgz", - "integrity": "sha512-MvQa//+KcZCUkBTIC9blM+CU9J2GzuTytsOUwf2lidtvkx/6gnEp1QvJv34t9vdjhFmha/mUiNDbN0D0mJWdug==", - "engines": { - "node": ">=0.10.32" + "node_modules/web3uikit/node_modules/@ethersproject/strings": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/strings/-/strings-5.6.0.tgz", + "integrity": "sha512-uv10vTtLTZqrJuqBZR862ZQjTIa724wGPWQqZrofaPI/kUsf53TBG0I0D+hQ1qyNtllbNzaW+PDPHHUI6/65Mg==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/constants": "^5.6.0", + "@ethersproject/logger": "^5.6.0" } }, - "node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "license": "ISC" - }, - "node_modules/yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", - "dev": true, - "engines": { - "node": ">= 6" + "node_modules/web3uikit/node_modules/@ethersproject/transactions": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/transactions/-/transactions-5.6.0.tgz", + "integrity": "sha512-4HX+VOhNjXHZyGzER6E/LVI2i6lf9ejYeWD6l4g50AdmimyuStKc39kvKf1bXWQMg7QNVh+uC7dYwtaZ02IXeg==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/address": "^5.6.0", + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/constants": "^5.6.0", + "@ethersproject/keccak256": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "@ethersproject/rlp": "^5.6.0", + "@ethersproject/signing-key": "^5.6.0" } }, - "node_modules/yargs": { - "version": "13.3.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", - "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", + "node_modules/web3uikit/node_modules/@ethersproject/units": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/units/-/units-5.6.0.tgz", + "integrity": "sha512-tig9x0Qmh8qbo1w8/6tmtyrm/QQRviBh389EQ+d8fP4wDsBrJBf08oZfoiz1/uenKK9M78yAP4PoR7SsVoTjsw==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], "dependencies": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.2" + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/constants": "^5.6.0", + "@ethersproject/logger": "^5.6.0" } }, - "node_modules/yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "engines": { - "node": ">=10" + "node_modules/web3uikit/node_modules/@ethersproject/wallet": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/wallet/-/wallet-5.6.0.tgz", + "integrity": "sha512-qMlSdOSTyp0MBeE+r7SUhr1jjDlC1zAXB8VD84hCnpijPQiSNbxr6GdiLXxpUs8UKzkDiNYYC5DRI3MZr+n+tg==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/abstract-provider": "^5.6.0", + "@ethersproject/abstract-signer": "^5.6.0", + "@ethersproject/address": "^5.6.0", + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/hash": "^5.6.0", + "@ethersproject/hdnode": "^5.6.0", + "@ethersproject/json-wallets": "^5.6.0", + "@ethersproject/keccak256": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "@ethersproject/random": "^5.6.0", + "@ethersproject/signing-key": "^5.6.0", + "@ethersproject/transactions": "^5.6.0", + "@ethersproject/wordlists": "^5.6.0" } }, - "node_modules/yargs/node_modules/find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "node_modules/web3uikit/node_modules/@ethersproject/web": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/web/-/web-5.6.0.tgz", + "integrity": "sha512-G/XHj0hV1FxI2teHRfCGvfBUHFmU+YOSbCxlAMqJklxSa7QMiHFQfAxvwY2PFqgvdkxEKwRNr/eCjfAPEm2Ctg==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], "dependencies": { - "locate-path": "^3.0.0" - }, - "engines": { - "node": ">=6" + "@ethersproject/base64": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "@ethersproject/strings": "^5.6.0" } }, - "node_modules/yargs/node_modules/locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "node_modules/web3uikit/node_modules/@ethersproject/wordlists": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/wordlists/-/wordlists-5.6.0.tgz", + "integrity": "sha512-q0bxNBfIX3fUuAo9OmjlEYxP40IB8ABgb7HjEZCL5IKubzV3j30CWi2rqQbjTS2HfoyQbfINoKcTVWP4ejwR7Q==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], "dependencies": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" - }, - "engines": { - "node": ">=6" + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/hash": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "@ethersproject/strings": "^5.6.0" } }, - "node_modules/yargs/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "node_modules/web3uikit/node_modules/axios": { + "version": "0.26.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.26.1.tgz", + "integrity": "sha512-fPwcX4EvnSHuInCMItEhAGnaSEXRBjtzh9fOtsE6E1G6p7vl7edEeZe11QHf18+6+9gR5PbKV/sGKNaD8YaMeA==", "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "follow-redirects": "^1.14.8" } }, - "node_modules/yargs/node_modules/p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", - "dependencies": { - "p-limit": "^2.0.0" - }, - "engines": { - "node": ">=6" - } + "node_modules/web3uikit/node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" }, - "node_modules/yargs/node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", - "engines": { - "node": ">=4" + "node_modules/web3uikit/node_modules/ethers": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/ethers/-/ethers-5.6.0.tgz", + "integrity": "sha512-00FP71jt6bW3ndO5DhgH9mLIZhoCGnAKFLu8qig5KmV03ubEChKf2ilB3g6fX512tTYo+tSMDJ5WpCJWdBHkBQ==", + "funding": [ + { + "type": "individual", + "url": "https://gitcoin.co/grants/13/ethersjs-complete-simple-and-tiny-2" + }, + { + "type": "individual", + "url": "https://www.buymeacoffee.com/ricmoo" + } + ], + "dependencies": { + "@ethersproject/abi": "5.6.0", + "@ethersproject/abstract-provider": "5.6.0", + "@ethersproject/abstract-signer": "5.6.0", + "@ethersproject/address": "5.6.0", + "@ethersproject/base64": "5.6.0", + "@ethersproject/basex": "5.6.0", + "@ethersproject/bignumber": "5.6.0", + "@ethersproject/bytes": "5.6.0", + "@ethersproject/constants": "5.6.0", + "@ethersproject/contracts": "5.6.0", + "@ethersproject/hash": "5.6.0", + "@ethersproject/hdnode": "5.6.0", + "@ethersproject/json-wallets": "5.6.0", + "@ethersproject/keccak256": "5.6.0", + "@ethersproject/logger": "5.6.0", + "@ethersproject/networks": "5.6.0", + "@ethersproject/pbkdf2": "5.6.0", + "@ethersproject/properties": "5.6.0", + "@ethersproject/providers": "5.6.0", + "@ethersproject/random": "5.6.0", + "@ethersproject/rlp": "5.6.0", + "@ethersproject/sha2": "5.6.0", + "@ethersproject/signing-key": "5.6.0", + "@ethersproject/solidity": "5.6.0", + "@ethersproject/strings": "5.6.0", + "@ethersproject/transactions": "5.6.0", + "@ethersproject/units": "5.6.0", + "@ethersproject/wallet": "5.6.0", + "@ethersproject/web": "5.6.0", + "@ethersproject/wordlists": "5.6.0" } }, - "node_modules/yargs/node_modules/yargs-parser": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", - "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", + "node_modules/web3uikit/node_modules/moralis": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/moralis/-/moralis-1.11.0.tgz", + "integrity": "sha512-oqoKqP47RuHq+SnztN48+YgWsKLt1YBy7IfeSBOixUW0Tzn9RQDjNKpkSBcKFttNZQ/KzCEes6TCqA9IxSoTPQ==", "dependencies": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" + "@babel/runtime": "7.16.7", + "@babel/runtime-corejs3": "7.16.8", + "@metamask/detect-provider": "^1.2.0", + "axios": "0.26.1", + "ethers": "5.6.0", + "react-native-crypto-js": "1.0.0", + "uuid": "^8.3.2", + "ws": "^8.3.0", + "xmlhttprequest": "1.8.0" + }, + "optionalDependencies": { + "crypto-js": "4.1.1" } }, - "node_modules/yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true, - "license": "MIT", + "node_modules/web3uikit/node_modules/ws": { + "version": "8.12.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.12.1.tgz", + "integrity": "sha512-1qo+M9Ba+xNhPB+YTWUlK6M17brTut5EXbcBaMRN5pH5dFrXz7lzz1ChFSUq3bOUl8yEvSenhHmYUNJxFzdJew==", "engines": { - "node": ">=10" + "node": ">=10.0.0" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - } - }, - "dependencies": { - "@ampproject/remapping": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", - "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", - "peer": true, - "requires": { - "@jridgewell/gen-mapping": "^0.1.0", - "@jridgewell/trace-mapping": "^0.3.9" + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" }, - "dependencies": { - "@jridgewell/gen-mapping": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", - "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", - "peer": true, - "requires": { - "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10" - } + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true } } }, - "@assemblyscript/loader": { - "version": "0.9.4", - "resolved": "https://registry.npmjs.org/@assemblyscript/loader/-/loader-0.9.4.tgz", - "integrity": "sha512-HazVq9zwTVwGmqdwYzu7WyQ6FQVZ7SwET0KKQuKm55jD0IfUpZgN0OPIiZG3zV1iSrVYcN0bdwLRXI/VNCYsUA==" - }, - "@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", - "requires": { - "@babel/highlight": "^7.18.6" - } - }, - "@babel/compat-data": { - "version": "7.20.14", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.14.tgz", - "integrity": "sha512-0YpKHD6ImkWMEINCyDAD0HLLUH/lPCefG8ld9it8DJB2wnApraKuhgYTvTY1z7UFIfBTGy5LwncZ+5HWWGbhFw==" + "node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" }, - "@babel/core": { - "version": "7.20.12", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.12.tgz", - "integrity": "sha512-XsMfHovsUYHFMdrIHkZphTN/2Hzzi78R08NuHfDBehym2VsPDL6Zn/JAD/JQdnRvbSsbQc4mVaU1m6JgtTEElg==", + "node_modules/webpack": { + "version": "5.75.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.75.0.tgz", + "integrity": "sha512-piaIaoVJlqMsPtX/+3KTTO6jfvrSYgauFVdt8cr9LTHKmcq/AMd4mhzsiP7ZF/PGRNPGA8336jldh9l2Kt2ogQ==", "peer": true, - "requires": { - "@ampproject/remapping": "^2.1.0", - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.7", - "@babel/helper-compilation-targets": "^7.20.7", - "@babel/helper-module-transforms": "^7.20.11", - "@babel/helpers": "^7.20.7", - "@babel/parser": "^7.20.7", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.12", - "@babel/types": "^7.20.7", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.2", - "semver": "^6.3.0" - }, "dependencies": { - "json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", - "peer": true + "@types/eslint-scope": "^3.7.3", + "@types/estree": "^0.0.51", + "@webassemblyjs/ast": "1.11.1", + "@webassemblyjs/wasm-edit": "1.11.1", + "@webassemblyjs/wasm-parser": "1.11.1", + "acorn": "^8.7.1", + "acorn-import-assertions": "^1.7.6", + "browserslist": "^4.14.5", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.10.0", + "es-module-lexer": "^0.9.0", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.9", + "json-parse-even-better-errors": "^2.3.1", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^3.1.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.1.3", + "watchpack": "^2.4.0", + "webpack-sources": "^3.2.3" + }, + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true } } }, - "@babel/generator": { - "version": "7.20.14", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.14.tgz", - "integrity": "sha512-AEmuXHdcD3A52HHXxaTmYlb8q/xMEhoRP67B3T4Oq7lbmSoqroMZzjnGj3+i1io3pdnF8iBYVu4Ilj+c4hBxYg==", - "requires": { - "@babel/types": "^7.20.7", - "@jridgewell/gen-mapping": "^0.3.2", - "jsesc": "^2.5.1" + "node_modules/webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "peer": true, + "engines": { + "node": ">=10.13.0" } }, - "@babel/helper-annotate-as-pure": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", - "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", - "requires": { - "@babel/types": "^7.18.6" + "node_modules/webpack/node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "peer": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" } }, - "@babel/helper-compilation-targets": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz", - "integrity": "sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==", - "requires": { - "@babel/compat-data": "^7.20.5", - "@babel/helper-validator-option": "^7.18.6", - "browserslist": "^4.21.3", - "lru-cache": "^5.1.1", - "semver": "^6.3.0" - }, - "dependencies": { - "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "requires": { - "yallist": "^3.0.2" - } - }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" - } + "node_modules/webpack/node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "peer": true, + "engines": { + "node": ">=4.0" } }, - "@babel/helper-define-polyfill-provider": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz", - "integrity": "sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==", - "requires": { - "@babel/helper-compilation-targets": "^7.17.7", - "@babel/helper-plugin-utils": "^7.16.7", - "debug": "^4.1.1", - "lodash.debounce": "^4.0.8", - "resolve": "^1.14.2", - "semver": "^6.1.2" + "node_modules/websocket": { + "version": "1.0.34", + "resolved": "https://registry.npmjs.org/websocket/-/websocket-1.0.34.tgz", + "integrity": "sha512-PRDso2sGwF6kM75QykIesBijKSVceR6jL2G8NGYyq2XrItNC2P5/qL5XeR056GhA+Ly7JMFvJb9I312mJfmqnQ==", + "dependencies": { + "bufferutil": "^4.0.1", + "debug": "^2.2.0", + "es5-ext": "^0.10.50", + "typedarray-to-buffer": "^3.1.5", + "utf-8-validate": "^5.0.2", + "yaeti": "^0.0.6" + }, + "engines": { + "node": ">=4.0.0" } }, - "@babel/helper-environment-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", - "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==" + "node_modules/websocket/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } }, - "@babel/helper-function-name": { - "version": "7.19.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz", - "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==", - "requires": { - "@babel/template": "^7.18.10", - "@babel/types": "^7.19.0" + "node_modules/websocket/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + }, + "node_modules/whatwg-fetch": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.4.tgz", + "integrity": "sha512-dcQ1GWpOD/eEQ97k66aiEVpNnapVj90/+R+SXTPYGHpYBBypfKJEQjLrvMZ7YXbKm21gXd4NcuxUTjiv1YtLng==" + }, + "node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" } }, - "@babel/helper-hoist-variables": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", - "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", - "requires": { - "@babel/types": "^7.18.6" + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "license": "ISC", + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" } }, - "@babel/helper-module-imports": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", - "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", - "requires": { - "@babel/types": "^7.18.6" + "node_modules/which-boxed-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-bigint": "^1.0.1", + "is-boolean-object": "^1.1.0", + "is-number-object": "^1.0.4", + "is-string": "^1.0.5", + "is-symbol": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "@babel/helper-module-transforms": { - "version": "7.20.11", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.11.tgz", - "integrity": "sha512-uRy78kN4psmji1s2QtbtcCSaj/LILFDp0f/ymhpQH5QY3nljUZCaNWz9X1dEj/8MBdBEFECs7yRhKn8i7NjZgg==", - "peer": true, - "requires": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-simple-access": "^7.20.2", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/helper-validator-identifier": "^7.19.1", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.10", - "@babel/types": "^7.20.7" + "node_modules/which-collection": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz", + "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-map": "^2.0.1", + "is-set": "^2.0.1", + "is-weakmap": "^2.0.1", + "is-weakset": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "@babel/helper-plugin-utils": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", - "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==" + "node_modules/which-module": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==" }, - "@babel/helper-simple-access": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", - "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", - "peer": true, - "requires": { - "@babel/types": "^7.20.2" + "node_modules/which-typed-array": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.9.tgz", + "integrity": "sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==", + "license": "MIT", + "dependencies": { + "available-typed-arrays": "^1.0.5", + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.0", + "is-typed-array": "^1.1.10" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "@babel/helper-split-export-declaration": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", - "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", - "requires": { - "@babel/types": "^7.18.6" + "node_modules/word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" } }, - "@babel/helper-string-parser": { - "version": "7.19.4", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", - "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==" + "node_modules/wp5-cra-polyfill": { + "version": "0.0.1", + "resolved": "git+ssh://git@github.com/oscario2/wp5-cra-polyfill.git#91431fa2c67aaa1247309e04799254a2e8a949d7", + "hasInstallScript": true, + "dependencies": { + "node-polyfill-webpack-plugin": "^1.1.4" + }, + "peerDependencies": { + "webpack": ">=5" + } }, - "@babel/helper-validator-identifier": { - "version": "7.19.1", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", - "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==" + "node_modules/wrap-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", + "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", + "dependencies": { + "ansi-styles": "^3.2.0", + "string-width": "^3.0.0", + "strip-ansi": "^5.0.0" + }, + "engines": { + "node": ">=6" + } }, - "@babel/helper-validator-option": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", - "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==" + "node_modules/wrap-ansi/node_modules/ansi-regex": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", + "engines": { + "node": ">=6" + } }, - "@babel/helpers": { - "version": "7.20.13", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.13.tgz", - "integrity": "sha512-nzJ0DWCL3gB5RCXbUO3KIMMsBY2Eqbx8mBpKGE/02PgyRQFcPQLbkQ1vyy596mZLaP+dAfD+R4ckASzNVmW3jg==", - "peer": true, - "requires": { - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.20.13", - "@babel/types": "^7.20.7" + "node_modules/wrap-ansi/node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" } }, - "@babel/highlight": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", - "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", - "requires": { - "@babel/helper-validator-identifier": "^7.18.6", - "chalk": "^2.0.0", - "js-tokens": "^4.0.0" - }, + "node_modules/wrap-ansi/node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", "dependencies": { - "ansi-styles": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", - "requires": { - "color-convert": "^1.9.0" - } - }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" - } - }, - "color-convert": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", - "requires": { - "color-name": "1.1.3" - } - }, - "color-name": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" - }, - "escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==" - }, - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" + "color-name": "1.1.3" + } + }, + "node_modules/wrap-ansi/node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "node_modules/wrap-ansi/node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dependencies": { + "ansi-regex": "^4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "license": "ISC" + }, + "node_modules/ws": { + "version": "7.4.6", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz", + "integrity": "sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==", + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "requires": { - "has-flag": "^3.0.0" - } + "utf-8-validate": { + "optional": true } } }, - "@babel/parser": { - "version": "7.20.15", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.15.tgz", - "integrity": "sha512-DI4a1oZuf8wC+oAJA9RW6ga3Zbe8RZFt7kD9i4qAspz3I/yHet1VvC3DiSy/fsUvv5pvJuNPh0LPOdCcqinDPg==" + "node_modules/xhr": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/xhr/-/xhr-2.6.0.tgz", + "integrity": "sha512-/eCGLb5rxjx5e3mF1A7s+pLlR6CGyqWN91fv1JgER5mVWg1MZmlhBvy9kjcsOdRk8RrIujotWyJamfyrp+WIcA==", + "dependencies": { + "global": "~4.4.0", + "is-function": "^1.0.1", + "parse-headers": "^2.0.0", + "xtend": "^4.0.0" + } }, - "@babel/plugin-transform-runtime": { - "version": "7.19.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.19.6.tgz", - "integrity": "sha512-PRH37lz4JU156lYFW1p8OxE5i7d6Sl/zV58ooyr+q1J1lnQPyg5tIiXlIwNVhJaY4W3TmOtdc8jqdXQcB1v5Yw==", - "requires": { - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-plugin-utils": "^7.19.0", - "babel-plugin-polyfill-corejs2": "^0.3.3", - "babel-plugin-polyfill-corejs3": "^0.6.0", - "babel-plugin-polyfill-regenerator": "^0.4.1", - "semver": "^6.3.0" + "node_modules/xhr-request": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/xhr-request/-/xhr-request-1.1.0.tgz", + "integrity": "sha512-Y7qzEaR3FDtL3fP30k9wO/e+FBnBByZeybKOhASsGP30NIkRAAkKD/sCnLvgEfAIEC1rcmK7YG8f4oEnIrrWzA==", + "dependencies": { + "buffer-to-arraybuffer": "^0.0.5", + "object-assign": "^4.1.1", + "query-string": "^5.0.1", + "simple-get": "^2.7.0", + "timed-out": "^4.0.1", + "url-set-query": "^1.0.0", + "xhr": "^2.0.4" } }, - "@babel/runtime": { - "version": "7.20.13", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.13.tgz", - "integrity": "sha512-gt3PKXs0DBoL9xCvOIIZ2NEqAGZqHjAnmVbfQtB620V0uReIQutpel14KcneZuer7UioY8ALKZ7iocavvzTNFA==", - "requires": { - "regenerator-runtime": "^0.13.11" + "node_modules/xhr-request-promise": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/xhr-request-promise/-/xhr-request-promise-0.1.3.tgz", + "integrity": "sha512-YUBytBsuwgitWtdRzXDDkWAXzhdGB8bYm0sSzMPZT7Z2MBjMSTHFsyCT1yCRATY+XC69DUrQraRAEgcoCRaIPg==", + "dependencies": { + "xhr-request": "^1.1.0" } }, - "@babel/runtime-corejs3": { - "version": "7.16.8", - "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.16.8.tgz", - "integrity": "sha512-3fKhuICS1lMz0plI5ktOE/yEtBRMVxplzRkdn6mJQ197XiY0JnrzYV0+Mxozq3JZ8SBV9Ecurmw1XsGbwOf+Sg==", - "requires": { - "core-js-pure": "^3.20.2", - "regenerator-runtime": "^0.13.4" + "node_modules/xhr-request/node_modules/query-string": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/query-string/-/query-string-5.1.1.tgz", + "integrity": "sha512-gjWOsm2SoGlgLEdAGt7a6slVOk9mGiXmPFMqrEhLQ68rhQuBnpfs3+EmlvqKyxnCo9/PPlF+9MtY02S1aFg+Jw==", + "dependencies": { + "decode-uri-component": "^0.2.0", + "object-assign": "^4.1.0", + "strict-uri-encode": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "@babel/template": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", - "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7" + "node_modules/xhr-request/node_modules/strict-uri-encode": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", + "integrity": "sha512-R3f198pcvnB+5IpnBlRkphuE9n46WyVl8I39W/ZUTZLz4nqSP/oLYUrcnJrw462Ds8he4YKMov2efsTIw1BDGQ==", + "engines": { + "node": ">=0.10.0" } }, - "@babel/traverse": { - "version": "7.20.13", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.13.tgz", - "integrity": "sha512-kMJXfF0T6DIS9E8cgdLCSAL+cuCK+YEZHWiLK0SXpTo8YRj5lpJu3CDNKiIBCne4m9hhTIqUg6SYTAI39tAiVQ==", - "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.7", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.19.0", - "@babel/helper-hoist-variables": "^7.18.6", - "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.20.13", - "@babel/types": "^7.20.7", - "debug": "^4.1.0", - "globals": "^11.1.0" - }, + "node_modules/xhr2-cookies": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/xhr2-cookies/-/xhr2-cookies-1.1.0.tgz", + "integrity": "sha512-hjXUA6q+jl/bd8ADHcVfFsSPIf+tyLIjuO9TwJC9WI6JP2zKcS7C+p56I9kCLLsaCiNT035iYvEUUzdEFj/8+g==", "dependencies": { - "globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==" - } + "cookiejar": "^2.1.1" } }, - "@babel/types": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.7.tgz", - "integrity": "sha512-69OnhBxSSgK0OzTJai4kyPDiKTIe3j+ctaHdIGVbRahTLAT7L3R9oeXHC2aVSuGYt3cVnoAMDmOCgJ2yaiLMvg==", - "requires": { - "@babel/helper-string-parser": "^7.19.4", - "@babel/helper-validator-identifier": "^7.19.1", - "to-fast-properties": "^2.0.0" + "node_modules/xmlhttprequest": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/xmlhttprequest/-/xmlhttprequest-1.8.0.tgz", + "integrity": "sha512-58Im/U0mlVBLM38NdZjHyhuMtCqa61469k2YP/AaPbvCoV9aQGUpbJBj1QRm2ytRiVQBD/fsw7L2bJGDVQswBA==", + "engines": { + "node": ">=0.4.0" } }, - "@emotion/is-prop-valid": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.0.tgz", - "integrity": "sha512-3aDpDprjM0AwaxGE09bOPkNxHpBd+kA6jty3RnaEXdweX1DF1U3VQpPYb0g1IStAuK7SVQ1cy+bNBBKp4W3Fjg==", - "requires": { - "@emotion/memoize": "^0.8.0" + "node_modules/xmlhttprequest-ssl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-2.0.0.tgz", + "integrity": "sha512-QKxVRxiRACQcVuQEYFsI1hhkrMlrXHPegbbd1yn9UHOmRxY+si12nQYzri3vbzt8VdTTRviqcKxcyllFas5z2A==", + "engines": { + "node": ">=0.4.0" } }, - "@emotion/memoize": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.0.tgz", - "integrity": "sha512-G/YwXTkv7Den9mXDO7AhLWkE3q+I92B+VqAE+dYG4NGPaHZGvt3G8Q0p9vmE+sq7rTGphUbAvmQ9YpbfMQGGlA==" - }, - "@emotion/stylis": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/@emotion/stylis/-/stylis-0.8.5.tgz", - "integrity": "sha512-h6KtPihKFn3T9fuIrwvXXUOwlx3rfUvfZIcP5a6rh8Y7zjE3O06hT5Ss4S/YI1AYhuZ1kjaE/5EaOOI2NqSylQ==" + "node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "engines": { + "node": ">=0.4" + } }, - "@emotion/unitless": { - "version": "0.7.5", - "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz", - "integrity": "sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==" + "node_modules/y18n": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==" }, - "@eslint/eslintrc": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.1.tgz", - "integrity": "sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA==", + "node_modules/yaeti": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/yaeti/-/yaeti-0.0.6.tgz", + "integrity": "sha512-MvQa//+KcZCUkBTIC9blM+CU9J2GzuTytsOUwf2lidtvkx/6gnEp1QvJv34t9vdjhFmha/mUiNDbN0D0mJWdug==", + "engines": { + "node": ">=0.10.32" + } + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "license": "ISC" + }, + "node_modules/yaml": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", "dev": true, - "requires": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.4.0", - "globals": "^13.19.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" + "engines": { + "node": ">= 6" } }, - "@ethereumjs/common": { - "version": "2.6.5", - "resolved": "https://registry.npmjs.org/@ethereumjs/common/-/common-2.6.5.tgz", - "integrity": "sha512-lRyVQOeCDaIVtgfbowla32pzeDv2Obr8oR8Put5RdUBNRGr1VGPGQNGP6elWIpgK3YdpzqTOh4GyUGOureVeeA==", - "requires": { - "crc-32": "^1.2.0", - "ethereumjs-util": "^7.1.5" + "node_modules/yargs": { + "version": "13.3.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", + "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", + "dependencies": { + "cliui": "^5.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^2.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^3.0.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^13.1.2" } }, - "@ethereumjs/tx": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/@ethereumjs/tx/-/tx-3.5.2.tgz", - "integrity": "sha512-gQDNJWKrSDGu2w7w0PzVXVBNMzb7wwdDOmOqczmhNjqFxFuIbhVJDwiGEnxFNC2/b8ifcZzY7MLcluizohRzNw==", - "requires": { - "@ethereumjs/common": "^2.6.4", - "ethereumjs-util": "^7.1.5" + "node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "engines": { + "node": ">=10" } }, - "@ethersproject/abi": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/abi/-/abi-5.7.0.tgz", - "integrity": "sha512-351ktp42TiRcYB3H1OP8yajPeAQstMW/yCFokj/AthP9bLHzQFPlOrxOcwYEDkUAICmOHljvN4K39OMTMUa9RA==", - "requires": { - "@ethersproject/address": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/constants": "^5.7.0", - "@ethersproject/hash": "^5.7.0", - "@ethersproject/keccak256": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/strings": "^5.7.0" + "node_modules/yargs/node_modules/find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dependencies": { + "locate-path": "^3.0.0" + }, + "engines": { + "node": ">=6" } }, - "@ethersproject/abstract-provider": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/abstract-provider/-/abstract-provider-5.7.0.tgz", - "integrity": "sha512-R41c9UkchKCpAqStMYUpdunjo3pkEvZC3FAwZn5S5MGbXoMQOHIdHItezTETxAO5bevtMApSyEhn9+CHcDsWBw==", - "requires": { - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/networks": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/transactions": "^5.7.0", - "@ethersproject/web": "^5.7.0" + "node_modules/yargs/node_modules/locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dependencies": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=6" } }, - "@ethersproject/abstract-signer": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/abstract-signer/-/abstract-signer-5.7.0.tgz", - "integrity": "sha512-a16V8bq1/Cz+TGCkE2OPMTOUDLS3grCpdjoJCYNnVBbdYEMSgKrU0+B90s8b6H+ByYTBZN7a3g76jdIJi7UfKQ==", - "requires": { - "@ethersproject/abstract-provider": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0" + "node_modules/yargs/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "@ethersproject/address": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/address/-/address-5.7.0.tgz", - "integrity": "sha512-9wYhYt7aghVGo758POM5nqcOMaE168Q6aRLJZwUmiqSrAungkG74gSSeKEIR7ukixesdRZGPgVqme6vmxs1fkA==", - "requires": { - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/keccak256": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/rlp": "^5.7.0" + "node_modules/yargs/node_modules/p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dependencies": { + "p-limit": "^2.0.0" + }, + "engines": { + "node": ">=6" } }, - "@ethersproject/base64": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/base64/-/base64-5.7.0.tgz", - "integrity": "sha512-Dr8tcHt2mEbsZr/mwTPIQAf3Ai0Bks/7gTw9dSqk1mQvhW3XvRlmDJr/4n+wg1JmCl16NZue17CDh8xb/vZ0sQ==", - "requires": { - "@ethersproject/bytes": "^5.7.0" + "node_modules/yargs/node_modules/path-exists": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", + "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==", + "engines": { + "node": ">=4" } }, - "@ethersproject/basex": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/basex/-/basex-5.7.0.tgz", - "integrity": "sha512-ywlh43GwZLv2Voc2gQVTKBoVQ1mti3d8HK5aMxsfu/nRDnMmNqaSJ3r3n85HBByT8OpoY96SXM1FogC533T4zw==", - "requires": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/properties": "^5.7.0" + "node_modules/yargs/node_modules/yargs-parser": { + "version": "13.1.2", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", + "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", + "dependencies": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" } }, - "@ethersproject/bignumber": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/bignumber/-/bignumber-5.7.0.tgz", - "integrity": "sha512-n1CAdIHRWjSucQO3MC1zPSVgV/6dy/fjL9pMrPP9peL+QxEg9wOsVqwD4+818B6LUEtaXzVHQiuivzRoxPxUGw==", - "requires": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "bn.js": "^5.2.1" + "node_modules/yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "engines": { + "node": ">=6" } }, - "@ethersproject/bytes": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.7.0.tgz", - "integrity": "sha512-nsbxwgFXWh9NyYWo+U8atvmMsSdKJprTcICAkvbBffT75qDocbuggBU0SJiVK2MuTrp0q+xvLkTnGMPK1+uA9A==", + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + }, + "dependencies": { + "@ampproject/remapping": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + "peer": true, "requires": { - "@ethersproject/logger": "^5.7.0" + "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "dependencies": { + "@jridgewell/gen-mapping": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "peer": true, + "requires": { + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + } } }, - "@ethersproject/constants": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/constants/-/constants-5.7.0.tgz", - "integrity": "sha512-DHI+y5dBNvkpYUMiRQyxRBYBefZkJfo70VUkUAsRjcPs47muV9evftfZ0PJVCXYbAiCgght0DtcF9srFQmIgWA==", + "@assemblyscript/loader": { + "version": "0.9.4", + "resolved": "https://registry.npmjs.org/@assemblyscript/loader/-/loader-0.9.4.tgz", + "integrity": "sha512-HazVq9zwTVwGmqdwYzu7WyQ6FQVZ7SwET0KKQuKm55jD0IfUpZgN0OPIiZG3zV1iSrVYcN0bdwLRXI/VNCYsUA==" + }, + "@babel/code-frame": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", "requires": { - "@ethersproject/bignumber": "^5.7.0" + "@babel/highlight": "^7.18.6" } }, - "@ethersproject/contracts": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/contracts/-/contracts-5.7.0.tgz", - "integrity": "sha512-5GJbzEU3X+d33CdfPhcyS+z8MzsTrBGk/sc+G+59+tPa9yFkl6HQ9D6L0QMgNTA9q8dT0XKxxkyp883XsQvbbg==", - "requires": { - "@ethersproject/abi": "^5.7.0", - "@ethersproject/abstract-provider": "^5.7.0", - "@ethersproject/abstract-signer": "^5.7.0", - "@ethersproject/address": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/constants": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/transactions": "^5.7.0" - } + "@babel/compat-data": { + "version": "7.20.14", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.14.tgz", + "integrity": "sha512-0YpKHD6ImkWMEINCyDAD0HLLUH/lPCefG8ld9it8DJB2wnApraKuhgYTvTY1z7UFIfBTGy5LwncZ+5HWWGbhFw==" }, - "@ethersproject/hash": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/hash/-/hash-5.7.0.tgz", - "integrity": "sha512-qX5WrQfnah1EFnO5zJv1v46a8HW0+E5xuBBDTwMFZLuVTx0tbU2kkx15NqdjxecrLGatQN9FGQKpb1FKdHCt+g==", + "@babel/core": { + "version": "7.20.12", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.12.tgz", + "integrity": "sha512-XsMfHovsUYHFMdrIHkZphTN/2Hzzi78R08NuHfDBehym2VsPDL6Zn/JAD/JQdnRvbSsbQc4mVaU1m6JgtTEElg==", + "peer": true, "requires": { - "@ethersproject/abstract-signer": "^5.7.0", - "@ethersproject/address": "^5.7.0", - "@ethersproject/base64": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/keccak256": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/strings": "^5.7.0" + "@ampproject/remapping": "^2.1.0", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.20.7", + "@babel/helper-compilation-targets": "^7.20.7", + "@babel/helper-module-transforms": "^7.20.11", + "@babel/helpers": "^7.20.7", + "@babel/parser": "^7.20.7", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.12", + "@babel/types": "^7.20.7", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.2", + "json5": "^2.2.2", + "semver": "^6.3.0" + }, + "dependencies": { + "json5": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "peer": true + } } }, - "@ethersproject/hdnode": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/hdnode/-/hdnode-5.7.0.tgz", - "integrity": "sha512-OmyYo9EENBPPf4ERhR7oj6uAtUAhYGqOnIS+jE5pTXvdKBS99ikzq1E7Iv0ZQZ5V36Lqx1qZLeak0Ra16qpeOg==", + "@babel/generator": { + "version": "7.20.14", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.14.tgz", + "integrity": "sha512-AEmuXHdcD3A52HHXxaTmYlb8q/xMEhoRP67B3T4Oq7lbmSoqroMZzjnGj3+i1io3pdnF8iBYVu4Ilj+c4hBxYg==", "requires": { - "@ethersproject/abstract-signer": "^5.7.0", - "@ethersproject/basex": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/pbkdf2": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/sha2": "^5.7.0", - "@ethersproject/signing-key": "^5.7.0", - "@ethersproject/strings": "^5.7.0", - "@ethersproject/transactions": "^5.7.0", - "@ethersproject/wordlists": "^5.7.0" + "@babel/types": "^7.20.7", + "@jridgewell/gen-mapping": "^0.3.2", + "jsesc": "^2.5.1" } }, - "@ethersproject/json-wallets": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/json-wallets/-/json-wallets-5.7.0.tgz", - "integrity": "sha512-8oee5Xgu6+RKgJTkvEMl2wDgSPSAQ9MB/3JYjFV9jlKvcYHUXZC+cQp0njgmxdHkYWn8s6/IqIZYm0YWCjO/0g==", + "@babel/helper-annotate-as-pure": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.18.6.tgz", + "integrity": "sha512-duORpUiYrEpzKIop6iNbjnwKLAKnJ47csTyRACyEmWj0QdUrm5aqNJGHSSEQSUAvNW0ojX0dOmK9dZduvkfeXA==", "requires": { - "@ethersproject/abstract-signer": "^5.7.0", - "@ethersproject/address": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/hdnode": "^5.7.0", - "@ethersproject/keccak256": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/pbkdf2": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/random": "^5.7.0", - "@ethersproject/strings": "^5.7.0", - "@ethersproject/transactions": "^5.7.0", - "aes-js": "3.0.0", - "scrypt-js": "3.0.1" + "@babel/types": "^7.18.6" } }, - "@ethersproject/keccak256": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.7.0.tgz", - "integrity": "sha512-2UcPboeL/iW+pSg6vZ6ydF8tCnv3Iu/8tUmLLzWWGzxWKFFqOBQFLo6uLUv6BDrLgCDfN28RJ/wtByx+jZ4KBg==", + "@babel/helper-compilation-targets": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.7.tgz", + "integrity": "sha512-4tGORmfQcrc+bvrjb5y3dG9Mx1IOZjsHqQVUz7XCNHO+iTmqxWnVg3KRygjGmpRLJGdQSKuvFinbIb0CnZwHAQ==", "requires": { - "@ethersproject/bytes": "^5.7.0", - "js-sha3": "0.8.0" + "@babel/compat-data": "^7.20.5", + "@babel/helper-validator-option": "^7.18.6", + "browserslist": "^4.21.3", + "lru-cache": "^5.1.1", + "semver": "^6.3.0" + }, + "dependencies": { + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "requires": { + "yallist": "^3.0.2" + } + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" + } } }, - "@ethersproject/logger": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.7.0.tgz", - "integrity": "sha512-0odtFdXu/XHtjQXJYA3u9G0G8btm0ND5Cu8M7i5vhEcE8/HmF4Lbdqanwyv4uQTr2tx6b7fQRmgLrsnpQlmnig==" - }, - "@ethersproject/networks": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/@ethersproject/networks/-/networks-5.7.1.tgz", - "integrity": "sha512-n/MufjFYv3yFcUyfhnXotyDlNdFb7onmkSy8aQERi2PjNcnWQ66xXxa3XlS8nCcA8aJKJjIIMNJTC7tu80GwpQ==", + "@babel/helper-define-polyfill-provider": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.3.tgz", + "integrity": "sha512-z5aQKU4IzbqCC1XH0nAqfsFLMVSo22SBKUc0BxGrLkolTdPTructy0ToNnlO2zA4j9Q/7pjMZf0DSY+DSTYzww==", "requires": { - "@ethersproject/logger": "^5.7.0" + "@babel/helper-compilation-targets": "^7.17.7", + "@babel/helper-plugin-utils": "^7.16.7", + "debug": "^4.1.1", + "lodash.debounce": "^4.0.8", + "resolve": "^1.14.2", + "semver": "^6.1.2" } }, - "@ethersproject/pbkdf2": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/pbkdf2/-/pbkdf2-5.7.0.tgz", - "integrity": "sha512-oR/dBRZR6GTyaofd86DehG72hY6NpAjhabkhxgr3X2FpJtJuodEl2auADWBZfhDHgVCbu3/H/Ocq2uC6dpNjjw==", + "@babel/helper-environment-visitor": { + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", + "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==" + }, + "@babel/helper-function-name": { + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz", + "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==", "requires": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/sha2": "^5.7.0" + "@babel/template": "^7.18.10", + "@babel/types": "^7.19.0" } }, - "@ethersproject/properties": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/properties/-/properties-5.7.0.tgz", - "integrity": "sha512-J87jy8suntrAkIZtecpxEPxY//szqr1mlBaYlQ0r4RCaiD2hjheqF9s1LVE8vVuJCXisjIP+JgtK/Do54ej4Sw==", + "@babel/helper-hoist-variables": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.18.6.tgz", + "integrity": "sha512-UlJQPkFqFULIcyW5sbzgbkxn2FKRgwWiRexcuaR8RNJRy8+LLveqPjwZV/bwrLZCN0eUHD/x8D0heK1ozuoo6Q==", "requires": { - "@ethersproject/logger": "^5.7.0" + "@babel/types": "^7.18.6" } }, - "@ethersproject/providers": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/@ethersproject/providers/-/providers-5.7.2.tgz", - "integrity": "sha512-g34EWZ1WWAVgr4aptGlVBF8mhl3VWjv+8hoAnzStu8Ah22VHBsuGzP17eb6xDVRzw895G4W7vvx60lFFur/1Rg==", + "@babel/helper-module-imports": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", + "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", "requires": { - "@ethersproject/abstract-provider": "^5.7.0", - "@ethersproject/abstract-signer": "^5.7.0", - "@ethersproject/address": "^5.7.0", - "@ethersproject/base64": "^5.7.0", - "@ethersproject/basex": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/constants": "^5.7.0", - "@ethersproject/hash": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/networks": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/random": "^5.7.0", - "@ethersproject/rlp": "^5.7.0", - "@ethersproject/sha2": "^5.7.0", - "@ethersproject/strings": "^5.7.0", - "@ethersproject/transactions": "^5.7.0", - "@ethersproject/web": "^5.7.0", - "bech32": "1.1.4", - "ws": "7.4.6" + "@babel/types": "^7.18.6" } }, - "@ethersproject/random": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/random/-/random-5.7.0.tgz", - "integrity": "sha512-19WjScqRA8IIeWclFme75VMXSBvi4e6InrUNuaR4s5pTF2qNhcGdCUwdxUVGtDDqC00sDLCO93jPQoDUH4HVmQ==", + "@babel/helper-module-transforms": { + "version": "7.20.11", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.11.tgz", + "integrity": "sha512-uRy78kN4psmji1s2QtbtcCSaj/LILFDp0f/ymhpQH5QY3nljUZCaNWz9X1dEj/8MBdBEFECs7yRhKn8i7NjZgg==", + "peer": true, "requires": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0" + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-simple-access": "^7.20.2", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/helper-validator-identifier": "^7.19.1", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.10", + "@babel/types": "^7.20.7" } }, - "@ethersproject/rlp": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/rlp/-/rlp-5.7.0.tgz", - "integrity": "sha512-rBxzX2vK8mVF7b0Tol44t5Tb8gomOHkj5guL+HhzQ1yBh/ydjGnpw6at+X6Iw0Kp3OzzzkcKp8N9r0W4kYSs9w==", + "@babel/helper-plugin-utils": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.20.2.tgz", + "integrity": "sha512-8RvlJG2mj4huQ4pZ+rU9lqKi9ZKiRmuvGuM2HlWmkmgOhbs6zEAw6IEiJ5cQqGbDzGZOhwuOQNtZMi/ENLjZoQ==" + }, + "@babel/helper-simple-access": { + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", + "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", + "peer": true, "requires": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0" + "@babel/types": "^7.20.2" } }, - "@ethersproject/sha2": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/sha2/-/sha2-5.7.0.tgz", - "integrity": "sha512-gKlH42riwb3KYp0reLsFTokByAKoJdgFCwI+CCiX/k+Jm2mbNs6oOaCjYQSlI1+XBVejwH2KrmCbMAT/GnRDQw==", + "@babel/helper-split-export-declaration": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.18.6.tgz", + "integrity": "sha512-bde1etTx6ZyTmobl9LLMMQsaizFVZrquTEHOqKeQESMKo4PlObf+8+JA25ZsIpZhT/WEd39+vOdLXAFG/nELpA==", "requires": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "hash.js": "1.1.7" + "@babel/types": "^7.18.6" } }, - "@ethersproject/signing-key": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/signing-key/-/signing-key-5.7.0.tgz", - "integrity": "sha512-MZdy2nL3wO0u7gkB4nA/pEf8lu1TlFswPNmy8AiYkfKTdO6eXBJyUdmHO/ehm/htHw9K/qF8ujnTyUAD+Ry54Q==", - "requires": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "bn.js": "^5.2.1", - "elliptic": "6.5.4", - "hash.js": "1.1.7" - } + "@babel/helper-string-parser": { + "version": "7.19.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", + "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==" }, - "@ethersproject/solidity": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/solidity/-/solidity-5.7.0.tgz", - "integrity": "sha512-HmabMd2Dt/raavyaGukF4XxizWKhKQ24DoLtdNbBmNKUOPqwjsKQSdV9GQtj9CBEea9DlzETlVER1gYeXXBGaA==", + "@babel/helper-validator-identifier": { + "version": "7.19.1", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz", + "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==" + }, + "@babel/helper-validator-option": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", + "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==" + }, + "@babel/helpers": { + "version": "7.20.13", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.13.tgz", + "integrity": "sha512-nzJ0DWCL3gB5RCXbUO3KIMMsBY2Eqbx8mBpKGE/02PgyRQFcPQLbkQ1vyy596mZLaP+dAfD+R4ckASzNVmW3jg==", + "peer": true, "requires": { - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/keccak256": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/sha2": "^5.7.0", - "@ethersproject/strings": "^5.7.0" + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.20.13", + "@babel/types": "^7.20.7" } }, - "@ethersproject/strings": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/strings/-/strings-5.7.0.tgz", - "integrity": "sha512-/9nu+lj0YswRNSH0NXYqrh8775XNyEdUQAuf3f+SmOrnVewcJ5SBNAjF7lpgehKi4abvNNXyf+HX86czCdJ8Mg==", + "@babel/highlight": { + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.18.6.tgz", + "integrity": "sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g==", "requires": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/constants": "^5.7.0", - "@ethersproject/logger": "^5.7.0" + "@babel/helper-validator-identifier": "^7.18.6", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" + }, + "dependencies": { + "ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "requires": { + "color-convert": "^1.9.0" + } + }, + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + } + }, + "color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "requires": { + "color-name": "1.1.3" + } + }, + "color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==" + }, + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "requires": { + "has-flag": "^3.0.0" + } + } } }, - "@ethersproject/transactions": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/transactions/-/transactions-5.7.0.tgz", - "integrity": "sha512-kmcNicCp1lp8qanMTC3RIikGgoJ80ztTyvtsFvCYpSCfkjhD0jZ2LOrnbcuxuToLIUYYf+4XwD1rP+B/erDIhQ==", + "@babel/parser": { + "version": "7.20.15", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.15.tgz", + "integrity": "sha512-DI4a1oZuf8wC+oAJA9RW6ga3Zbe8RZFt7kD9i4qAspz3I/yHet1VvC3DiSy/fsUvv5pvJuNPh0LPOdCcqinDPg==" + }, + "@babel/plugin-transform-runtime": { + "version": "7.19.6", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.19.6.tgz", + "integrity": "sha512-PRH37lz4JU156lYFW1p8OxE5i7d6Sl/zV58ooyr+q1J1lnQPyg5tIiXlIwNVhJaY4W3TmOtdc8jqdXQcB1v5Yw==", "requires": { - "@ethersproject/address": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/constants": "^5.7.0", - "@ethersproject/keccak256": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/rlp": "^5.7.0", - "@ethersproject/signing-key": "^5.7.0" + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-plugin-utils": "^7.19.0", + "babel-plugin-polyfill-corejs2": "^0.3.3", + "babel-plugin-polyfill-corejs3": "^0.6.0", + "babel-plugin-polyfill-regenerator": "^0.4.1", + "semver": "^6.3.0" } }, - "@ethersproject/units": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/units/-/units-5.7.0.tgz", - "integrity": "sha512-pD3xLMy3SJu9kG5xDGI7+xhTEmGXlEqXU4OfNapmfnxLVY4EMSSRp7j1k7eezutBPH7RBN/7QPnwR7hzNlEFeg==", + "@babel/runtime": { + "version": "7.20.13", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.20.13.tgz", + "integrity": "sha512-gt3PKXs0DBoL9xCvOIIZ2NEqAGZqHjAnmVbfQtB620V0uReIQutpel14KcneZuer7UioY8ALKZ7iocavvzTNFA==", "requires": { - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/constants": "^5.7.0", - "@ethersproject/logger": "^5.7.0" + "regenerator-runtime": "^0.13.11" } }, - "@ethersproject/wallet": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/wallet/-/wallet-5.7.0.tgz", - "integrity": "sha512-MhmXlJXEJFBFVKrDLB4ZdDzxcBxQ3rLyCkhNqVu3CDYvR97E+8r01UgrI+TI99Le+aYm/in/0vp86guJuM7FCA==", + "@babel/runtime-corejs3": { + "version": "7.16.8", + "resolved": "https://registry.npmjs.org/@babel/runtime-corejs3/-/runtime-corejs3-7.16.8.tgz", + "integrity": "sha512-3fKhuICS1lMz0plI5ktOE/yEtBRMVxplzRkdn6mJQ197XiY0JnrzYV0+Mxozq3JZ8SBV9Ecurmw1XsGbwOf+Sg==", "requires": { - "@ethersproject/abstract-provider": "^5.7.0", - "@ethersproject/abstract-signer": "^5.7.0", - "@ethersproject/address": "^5.7.0", - "@ethersproject/bignumber": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/hash": "^5.7.0", - "@ethersproject/hdnode": "^5.7.0", - "@ethersproject/json-wallets": "^5.7.0", - "@ethersproject/keccak256": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/random": "^5.7.0", - "@ethersproject/signing-key": "^5.7.0", - "@ethersproject/transactions": "^5.7.0", - "@ethersproject/wordlists": "^5.7.0" + "core-js-pure": "^3.20.2", + "regenerator-runtime": "^0.13.4" } }, - "@ethersproject/web": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/@ethersproject/web/-/web-5.7.1.tgz", - "integrity": "sha512-Gueu8lSvyjBWL4cYsWsjh6MtMwM0+H4HvqFPZfB6dV8ctbP9zFAO73VG1cMWae0FLPCtz0peKPpZY8/ugJJX2w==", + "@babel/template": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", + "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", "requires": { - "@ethersproject/base64": "^5.7.0", - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/strings": "^5.7.0" + "@babel/code-frame": "^7.18.6", + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7" } }, - "@ethersproject/wordlists": { - "version": "5.7.0", - "resolved": "https://registry.npmjs.org/@ethersproject/wordlists/-/wordlists-5.7.0.tgz", - "integrity": "sha512-S2TFNJNfHWVHNE6cNDjbVlZ6MgE17MIxMbMg2zv3wn+3XSJGosL1m9ZVv3GXCf/2ymSsQ+hRI5IzoMJTG6aoVA==", + "@babel/traverse": { + "version": "7.20.13", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.13.tgz", + "integrity": "sha512-kMJXfF0T6DIS9E8cgdLCSAL+cuCK+YEZHWiLK0SXpTo8YRj5lpJu3CDNKiIBCne4m9hhTIqUg6SYTAI39tAiVQ==", "requires": { - "@ethersproject/bytes": "^5.7.0", - "@ethersproject/hash": "^5.7.0", - "@ethersproject/logger": "^5.7.0", - "@ethersproject/properties": "^5.7.0", - "@ethersproject/strings": "^5.7.0" + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.20.7", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.19.0", + "@babel/helper-hoist-variables": "^7.18.6", + "@babel/helper-split-export-declaration": "^7.18.6", + "@babel/parser": "^7.20.13", + "@babel/types": "^7.20.7", + "debug": "^4.1.0", + "globals": "^11.1.0" + }, + "dependencies": { + "globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==" + } } }, - "@humanwhocodes/config-array": { - "version": "0.11.8", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", - "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", - "dev": true, + "@babel/types": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.7.tgz", + "integrity": "sha512-69OnhBxSSgK0OzTJai4kyPDiKTIe3j+ctaHdIGVbRahTLAT7L3R9oeXHC2aVSuGYt3cVnoAMDmOCgJ2yaiLMvg==", "requires": { - "@humanwhocodes/object-schema": "^1.2.1", - "debug": "^4.1.1", - "minimatch": "^3.0.5" + "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-validator-identifier": "^7.19.1", + "to-fast-properties": "^2.0.0" } }, - "@humanwhocodes/module-importer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", - "dev": true - }, - "@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", - "dev": true - }, - "@ipld/car": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/@ipld/car/-/car-3.2.4.tgz", - "integrity": "sha512-rezKd+jk8AsTGOoJKqzfjLJ3WVft7NZNH95f0pfPbicROvzTyvHCNy567HzSUd6gRXZ9im29z5ZEv9Hw49jSYw==", + "@emotion/is-prop-valid": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@emotion/is-prop-valid/-/is-prop-valid-1.2.0.tgz", + "integrity": "sha512-3aDpDprjM0AwaxGE09bOPkNxHpBd+kA6jty3RnaEXdweX1DF1U3VQpPYb0g1IStAuK7SVQ1cy+bNBBKp4W3Fjg==", "requires": { - "@ipld/dag-cbor": "^7.0.0", - "multiformats": "^9.5.4", - "varint": "^6.0.0" + "@emotion/memoize": "^0.8.0" } }, - "@ipld/dag-cbor": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-7.0.3.tgz", - "integrity": "sha512-1VVh2huHsuohdXC1bGJNE8WR72slZ9XE2T3wbBBq31dm7ZBatmKLLxrB+XAqafxfRFjv08RZmj/W/ZqaM13AuA==", - "requires": { - "cborg": "^1.6.0", - "multiformats": "^9.5.4" - } + "@emotion/memoize": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@emotion/memoize/-/memoize-0.8.0.tgz", + "integrity": "sha512-G/YwXTkv7Den9mXDO7AhLWkE3q+I92B+VqAE+dYG4NGPaHZGvt3G8Q0p9vmE+sq7rTGphUbAvmQ9YpbfMQGGlA==" }, - "@ipld/dag-pb": { - "version": "2.1.18", - "resolved": "https://registry.npmjs.org/@ipld/dag-pb/-/dag-pb-2.1.18.tgz", - "integrity": "sha512-ZBnf2fuX9y3KccADURG5vb9FaOeMjFkCrNysB0PtftME/4iCTjxfaLoNq/IAh5fTqUOMXvryN6Jyka4ZGuMLIg==", + "@emotion/stylis": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/@emotion/stylis/-/stylis-0.8.5.tgz", + "integrity": "sha512-h6KtPihKFn3T9fuIrwvXXUOwlx3rfUvfZIcP5a6rh8Y7zjE3O06hT5Ss4S/YI1AYhuZ1kjaE/5EaOOI2NqSylQ==" + }, + "@emotion/unitless": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@emotion/unitless/-/unitless-0.7.5.tgz", + "integrity": "sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg==" + }, + "@eslint/eslintrc": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.1.tgz", + "integrity": "sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA==", + "dev": true, "requires": { - "multiformats": "^9.5.4" + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.4.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" } }, - "@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "@ethereumjs/common": { + "version": "2.6.5", + "resolved": "https://registry.npmjs.org/@ethereumjs/common/-/common-2.6.5.tgz", + "integrity": "sha512-lRyVQOeCDaIVtgfbowla32pzeDv2Obr8oR8Put5RdUBNRGr1VGPGQNGP6elWIpgK3YdpzqTOh4GyUGOureVeeA==", "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" + "crc-32": "^1.2.0", + "ethereumjs-util": "^7.1.5" } }, - "@jridgewell/resolve-uri": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", - "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==" - }, - "@jridgewell/set-array": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==" - }, - "@jridgewell/source-map": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", - "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", - "peer": true, + "@ethereumjs/tx": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/@ethereumjs/tx/-/tx-3.5.2.tgz", + "integrity": "sha512-gQDNJWKrSDGu2w7w0PzVXVBNMzb7wwdDOmOqczmhNjqFxFuIbhVJDwiGEnxFNC2/b8ifcZzY7MLcluizohRzNw==", "requires": { - "@jridgewell/gen-mapping": "^0.3.0", - "@jridgewell/trace-mapping": "^0.3.9" + "@ethereumjs/common": "^2.6.4", + "ethereumjs-util": "^7.1.5" } }, - "@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" - }, - "@jridgewell/trace-mapping": { - "version": "0.3.17", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", - "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", + "@ethersproject/abi": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/abi/-/abi-5.7.0.tgz", + "integrity": "sha512-351ktp42TiRcYB3H1OP8yajPeAQstMW/yCFokj/AthP9bLHzQFPlOrxOcwYEDkUAICmOHljvN4K39OMTMUa9RA==", "requires": { - "@jridgewell/resolve-uri": "3.1.0", - "@jridgewell/sourcemap-codec": "1.4.14" + "@ethersproject/address": "^5.7.0", + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/constants": "^5.7.0", + "@ethersproject/hash": "^5.7.0", + "@ethersproject/keccak256": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/strings": "^5.7.0" } }, - "@magic-sdk/commons": { - "version": "9.2.0", - "resolved": "https://registry.npmjs.org/@magic-sdk/commons/-/commons-9.2.0.tgz", - "integrity": "sha512-knMOccC3rVhaHzWAmcVA1hHeT38823gxht7Um1gUx4wMjJ7CCRTcBn38nd4ibfgXwTg2nIdw3MrgSyfjeFaKgQ==", - "requires": {} - }, - "@magic-sdk/provider": { - "version": "13.2.0", - "resolved": "https://registry.npmjs.org/@magic-sdk/provider/-/provider-13.2.0.tgz", - "integrity": "sha512-56J8JoXKPVYYtVxRL/0Y0UhLFb/tdY3wWf4u3QZNtiArw6LGrNMLYr8HXb9pqTMV0eBVT9FEMmY68EHEIv4xwg==", + "@ethersproject/abstract-provider": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/abstract-provider/-/abstract-provider-5.7.0.tgz", + "integrity": "sha512-R41c9UkchKCpAqStMYUpdunjo3pkEvZC3FAwZn5S5MGbXoMQOHIdHItezTETxAO5bevtMApSyEhn9+CHcDsWBw==", "requires": { - "@magic-sdk/types": "^11.2.0", - "eventemitter3": "^4.0.4", - "web3-core": "1.5.2" + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/networks": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/transactions": "^5.7.0", + "@ethersproject/web": "^5.7.0" } }, - "@magic-sdk/types": { - "version": "11.2.0", - "resolved": "https://registry.npmjs.org/@magic-sdk/types/-/types-11.2.0.tgz", - "integrity": "sha512-pku7XklWE7TaHIlSfOoJoksnAgwR3PvL49wpUGHtd+QxmKtDxSbmWoHdllk6j/N3vd5eAk5Whxposp96QeYm/g==" - }, - "@metamask/detect-provider": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@metamask/detect-provider/-/detect-provider-1.2.0.tgz", - "integrity": "sha512-ocA76vt+8D0thgXZ7LxFPyqw3H7988qblgzddTDA6B8a/yU0uKV42QR/DhA+Jh11rJjxW0jKvwb5htA6krNZDQ==" - }, - "@metamask/eth-sig-util": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@metamask/eth-sig-util/-/eth-sig-util-4.0.1.tgz", - "integrity": "sha512-tghyZKLHZjcdlDqCA3gNZmLeR0XvOE9U1qoQO9ohyAZT6Pya+H9vkBPcsyXytmYLNgVoin7CKCmweo/R43V+tQ==", + "@ethersproject/abstract-signer": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/abstract-signer/-/abstract-signer-5.7.0.tgz", + "integrity": "sha512-a16V8bq1/Cz+TGCkE2OPMTOUDLS3grCpdjoJCYNnVBbdYEMSgKrU0+B90s8b6H+ByYTBZN7a3g76jdIJi7UfKQ==", "requires": { - "ethereumjs-abi": "^0.6.8", - "ethereumjs-util": "^6.2.1", - "ethjs-util": "^0.1.6", - "tweetnacl": "^1.0.3", - "tweetnacl-util": "^0.15.1" - }, - "dependencies": { - "@types/bn.js": { - "version": "4.11.6", - "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-4.11.6.tgz", - "integrity": "sha512-pqr857jrp2kPuO9uRjZ3PwnJTjoQy+fcdxvBTvHm6dkmEL9q+hDD/2j/0ELOBPtPnS8LjCX0gI9nbl8lVkadpg==", - "requires": { - "@types/node": "*" - } - }, - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, - "ethereumjs-util": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-6.2.1.tgz", - "integrity": "sha512-W2Ktez4L01Vexijrm5EB6w7dg4n/TgpoYU4avuT5T3Vmnw/eCRtiBrJfQYS/DCSvDIOLn2k57GcHdeBcgVxAqw==", - "requires": { - "@types/bn.js": "^4.11.3", - "bn.js": "^4.11.0", - "create-hash": "^1.1.2", - "elliptic": "^6.5.2", - "ethereum-cryptography": "^0.1.3", - "ethjs-util": "0.1.6", - "rlp": "^2.2.3" - } - } + "@ethersproject/abstract-provider": "^5.7.0", + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/properties": "^5.7.0" } }, - "@metamask/obs-store": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/@metamask/obs-store/-/obs-store-7.0.0.tgz", - "integrity": "sha512-Tr61Uu9CGXkCg5CZwOYRMQERd+y6fbtrtLd/PzDTPHO5UJpmSbU+7MPcQK7d1DwZCOCeCIvhmZSUCvYliC8uGw==", + "@ethersproject/address": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/address/-/address-5.7.0.tgz", + "integrity": "sha512-9wYhYt7aghVGo758POM5nqcOMaE168Q6aRLJZwUmiqSrAungkG74gSSeKEIR7ukixesdRZGPgVqme6vmxs1fkA==", "requires": { - "@metamask/safe-event-emitter": "^2.0.0", - "through2": "^2.0.3" + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/keccak256": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/rlp": "^5.7.0" } }, - "@metamask/safe-event-emitter": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@metamask/safe-event-emitter/-/safe-event-emitter-2.0.0.tgz", - "integrity": "sha512-/kSXhY692qiV1MXu6EeOZvg5nECLclxNXcKCxJ3cXQgYuRymRHpdx/t7JXfsK+JLjwA1e1c1/SBrlQYpusC29Q==" - }, - "@moralisweb3/api-utils": { - "version": "2.14.1", - "resolved": "https://registry.npmjs.org/@moralisweb3/api-utils/-/api-utils-2.14.1.tgz", - "integrity": "sha512-DrAsdQbkxocLrojq4tnBEo/lfyNVmu/KxqbDpJ+qDhzXiJxhknkabbWEDU0iwHQxl2zX8OUgiTScKGG0UaUYkw==", + "@ethersproject/base64": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/base64/-/base64-5.7.0.tgz", + "integrity": "sha512-Dr8tcHt2mEbsZr/mwTPIQAf3Ai0Bks/7gTw9dSqk1mQvhW3XvRlmDJr/4n+wg1JmCl16NZue17CDh8xb/vZ0sQ==", "requires": { - "@moralisweb3/common-core": "^2.14.1", - "@moralisweb3/common-evm-utils": "^2.14.1", - "axios": "^1.2.1" + "@ethersproject/bytes": "^5.7.0" } }, - "@moralisweb3/auth": { - "version": "2.14.1", - "resolved": "https://registry.npmjs.org/@moralisweb3/auth/-/auth-2.14.1.tgz", - "integrity": "sha512-zL6AuHpDoxAdqCfMQmvlZO+IDgcuSBn280/nU1q9jDI4Y8+SlBtrF4Sj1DHp2r0cW2qU2ag8dfoXshAGMB3FgQ==", + "@ethersproject/basex": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/basex/-/basex-5.7.0.tgz", + "integrity": "sha512-ywlh43GwZLv2Voc2gQVTKBoVQ1mti3d8HK5aMxsfu/nRDnMmNqaSJ3r3n85HBByT8OpoY96SXM1FogC533T4zw==", "requires": { - "@moralisweb3/api-utils": "^2.14.1", - "@moralisweb3/common-aptos-utils": "^2.14.1", - "@moralisweb3/common-auth-utils": "^2.14.1", - "@moralisweb3/common-core": "^2.14.1", - "@moralisweb3/common-evm-utils": "^2.14.1", - "@moralisweb3/common-sol-utils": "^2.14.1" + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/properties": "^5.7.0" } }, - "@moralisweb3/common-aptos-utils": { - "version": "2.14.1", - "resolved": "https://registry.npmjs.org/@moralisweb3/common-aptos-utils/-/common-aptos-utils-2.14.1.tgz", - "integrity": "sha512-DIGvwNq5dwVtDQjEI4z62oNWt9oE84+i00WL+s01J3BcyMwL/HU/o5TsrOMhkmI/jpoi3jQyx6zkVTK64I8U4g==", + "@ethersproject/bignumber": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/bignumber/-/bignumber-5.7.0.tgz", + "integrity": "sha512-n1CAdIHRWjSucQO3MC1zPSVgV/6dy/fjL9pMrPP9peL+QxEg9wOsVqwD4+818B6LUEtaXzVHQiuivzRoxPxUGw==", "requires": { - "@moralisweb3/common-core": "^2.14.1", - "@noble/hashes": "^1.2.0" + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "bn.js": "^5.2.1" } }, - "@moralisweb3/common-auth-utils": { - "version": "2.14.1", - "resolved": "https://registry.npmjs.org/@moralisweb3/common-auth-utils/-/common-auth-utils-2.14.1.tgz", - "integrity": "sha512-vJGref8n8g/HwWFWsAxQQJ3IU5oVeSDPgl/+lKormZvKM8xGWy4eK1P8gWYaGtK8lcc2XXW8QCH22jsRxyUT7w==", + "@ethersproject/bytes": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.7.0.tgz", + "integrity": "sha512-nsbxwgFXWh9NyYWo+U8atvmMsSdKJprTcICAkvbBffT75qDocbuggBU0SJiVK2MuTrp0q+xvLkTnGMPK1+uA9A==", "requires": { - "@ethersproject/abi": "^5.7.0", - "@moralisweb3/common-aptos-utils": "^2.14.1", - "@moralisweb3/common-core": "^2.14.1", - "@moralisweb3/common-evm-utils": "^2.14.1", - "@moralisweb3/common-sol-utils": "^2.14.1", - "@moralisweb3/streams-typings": "^1.0.6" + "@ethersproject/logger": "^5.7.0" } }, - "@moralisweb3/common-core": { - "version": "2.14.1", - "resolved": "https://registry.npmjs.org/@moralisweb3/common-core/-/common-core-2.14.1.tgz", - "integrity": "sha512-8HpQH9D8hW7BRazUhq64jx3MVlGtTl4a3TYjMuuZTPjN6+H8ZsuNTMTmT4KmLVpST7LakpX+kjNYQVyE9g70pQ==", + "@ethersproject/constants": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/constants/-/constants-5.7.0.tgz", + "integrity": "sha512-DHI+y5dBNvkpYUMiRQyxRBYBefZkJfo70VUkUAsRjcPs47muV9evftfZ0PJVCXYbAiCgght0DtcF9srFQmIgWA==", "requires": { - "axios": "^1.2.1" + "@ethersproject/bignumber": "^5.7.0" } }, - "@moralisweb3/common-evm-utils": { - "version": "2.14.1", - "resolved": "https://registry.npmjs.org/@moralisweb3/common-evm-utils/-/common-evm-utils-2.14.1.tgz", - "integrity": "sha512-VxyKPHsbIbRcN8F5XS4WKSsll12O5aPEuvFB3AS6EMqtgGlJixhVPu0cucu8IuLBz8ZST6vqKmlDtjr98xAbgg==", + "@ethersproject/contracts": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/contracts/-/contracts-5.7.0.tgz", + "integrity": "sha512-5GJbzEU3X+d33CdfPhcyS+z8MzsTrBGk/sc+G+59+tPa9yFkl6HQ9D6L0QMgNTA9q8dT0XKxxkyp883XsQvbbg==", + "requires": { + "@ethersproject/abi": "^5.7.0", + "@ethersproject/abstract-provider": "^5.7.0", + "@ethersproject/abstract-signer": "^5.7.0", + "@ethersproject/address": "^5.7.0", + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/constants": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/transactions": "^5.7.0" + } + }, + "@ethersproject/hash": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/hash/-/hash-5.7.0.tgz", + "integrity": "sha512-qX5WrQfnah1EFnO5zJv1v46a8HW0+E5xuBBDTwMFZLuVTx0tbU2kkx15NqdjxecrLGatQN9FGQKpb1FKdHCt+g==", "requires": { + "@ethersproject/abstract-signer": "^5.7.0", "@ethersproject/address": "^5.7.0", + "@ethersproject/base64": "^5.7.0", + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/keccak256": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/strings": "^5.7.0" + } + }, + "@ethersproject/hdnode": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/hdnode/-/hdnode-5.7.0.tgz", + "integrity": "sha512-OmyYo9EENBPPf4ERhR7oj6uAtUAhYGqOnIS+jE5pTXvdKBS99ikzq1E7Iv0ZQZ5V36Lqx1qZLeak0Ra16qpeOg==", + "requires": { + "@ethersproject/abstract-signer": "^5.7.0", + "@ethersproject/basex": "^5.7.0", + "@ethersproject/bignumber": "^5.7.0", "@ethersproject/bytes": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/pbkdf2": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/sha2": "^5.7.0", + "@ethersproject/signing-key": "^5.7.0", + "@ethersproject/strings": "^5.7.0", "@ethersproject/transactions": "^5.7.0", - "@moralisweb3/common-core": "^2.14.1" + "@ethersproject/wordlists": "^5.7.0" } }, - "@moralisweb3/common-sol-utils": { - "version": "2.14.1", - "resolved": "https://registry.npmjs.org/@moralisweb3/common-sol-utils/-/common-sol-utils-2.14.1.tgz", - "integrity": "sha512-/OAn4TevMpcC0SXOu7KyirQsT01QLQBX1f5iYS1FqC0+MsbRlIQTp4gLAanS4jGDOZN3MTaZLJY88cDiQ8+Xwg==", + "@ethersproject/json-wallets": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/json-wallets/-/json-wallets-5.7.0.tgz", + "integrity": "sha512-8oee5Xgu6+RKgJTkvEMl2wDgSPSAQ9MB/3JYjFV9jlKvcYHUXZC+cQp0njgmxdHkYWn8s6/IqIZYm0YWCjO/0g==", "requires": { - "@moralisweb3/common-core": "^2.14.1", - "bn.js": "^5.2.1", - "bs58": "^5.0.0", - "buffer": "^6.0.3" + "@ethersproject/abstract-signer": "^5.7.0", + "@ethersproject/address": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/hdnode": "^5.7.0", + "@ethersproject/keccak256": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/pbkdf2": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/random": "^5.7.0", + "@ethersproject/strings": "^5.7.0", + "@ethersproject/transactions": "^5.7.0", + "aes-js": "3.0.0", + "scrypt-js": "3.0.1" } }, - "@moralisweb3/common-streams-utils": { - "version": "2.14.1", - "resolved": "https://registry.npmjs.org/@moralisweb3/common-streams-utils/-/common-streams-utils-2.14.1.tgz", - "integrity": "sha512-P65j1OUuMNsVC6sFrlCwHLhcxMF3iz6YoXxFldYcOD62bGco5MQuREidS7ksTjl7j6dzLYnLjBA1y5p7hOG6tw==", + "@ethersproject/keccak256": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.7.0.tgz", + "integrity": "sha512-2UcPboeL/iW+pSg6vZ6ydF8tCnv3Iu/8tUmLLzWWGzxWKFFqOBQFLo6uLUv6BDrLgCDfN28RJ/wtByx+jZ4KBg==", "requires": { - "@ethersproject/abi": "^5.7.0", - "@moralisweb3/common-aptos-utils": "^2.14.1", - "@moralisweb3/common-core": "^2.14.1", - "@moralisweb3/common-evm-utils": "^2.14.1", - "@moralisweb3/streams-typings": "^1.0.6" + "@ethersproject/bytes": "^5.7.0", + "js-sha3": "0.8.0" } }, - "@moralisweb3/evm-api": { - "version": "2.14.1", - "resolved": "https://registry.npmjs.org/@moralisweb3/evm-api/-/evm-api-2.14.1.tgz", - "integrity": "sha512-wflCFND0g9buZ+dwkGGGZZlzvIAteyItmSmJgIr0N7AFmR/msd6BCwAJuXv8OrLu3ez6CNQCvQUHKc3s/M5Nqw==", + "@ethersproject/logger": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.7.0.tgz", + "integrity": "sha512-0odtFdXu/XHtjQXJYA3u9G0G8btm0ND5Cu8M7i5vhEcE8/HmF4Lbdqanwyv4uQTr2tx6b7fQRmgLrsnpQlmnig==" + }, + "@ethersproject/networks": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/@ethersproject/networks/-/networks-5.7.1.tgz", + "integrity": "sha512-n/MufjFYv3yFcUyfhnXotyDlNdFb7onmkSy8aQERi2PjNcnWQ66xXxa3XlS8nCcA8aJKJjIIMNJTC7tu80GwpQ==", "requires": { - "@moralisweb3/api-utils": "^2.14.1", - "@moralisweb3/common-core": "^2.14.1", - "@moralisweb3/common-evm-utils": "^2.14.1" + "@ethersproject/logger": "^5.7.0" } }, - "@moralisweb3/next": { - "version": "2.14.1", - "resolved": "https://registry.npmjs.org/@moralisweb3/next/-/next-2.14.1.tgz", - "integrity": "sha512-IzOqwdh0bnens+SKLeKMmNmvHsoWIRvuKELCK2maRsZNxvs76uIPQrpIKPKg9lqUxKViicqG0dijkJgI+kbZmw==", + "@ethersproject/pbkdf2": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/pbkdf2/-/pbkdf2-5.7.0.tgz", + "integrity": "sha512-oR/dBRZR6GTyaofd86DehG72hY6NpAjhabkhxgr3X2FpJtJuodEl2auADWBZfhDHgVCbu3/H/Ocq2uC6dpNjjw==", "requires": { - "@moralisweb3/api-utils": "^2.14.1", - "@moralisweb3/auth": "^2.14.1", - "@moralisweb3/common-auth-utils": "^2.14.1", - "@moralisweb3/common-core": "^2.14.1", - "@moralisweb3/evm-api": "^2.14.1", - "@moralisweb3/sol-api": "^2.14.1", - "axios": "^1.2.1", - "moralis": "^2.14.1", - "swr": "^1.3.0" + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/sha2": "^5.7.0" } }, - "@moralisweb3/sol-api": { - "version": "2.14.1", - "resolved": "https://registry.npmjs.org/@moralisweb3/sol-api/-/sol-api-2.14.1.tgz", - "integrity": "sha512-tL7CWYkqhB6uoHLtjiFLa+tSx5wCA/qOohMDx9cAEF8UOFvlOmgV/QpzM3QpDzKx1Qa9FFAt68yR9fwWhjis8w==", + "@ethersproject/properties": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/properties/-/properties-5.7.0.tgz", + "integrity": "sha512-J87jy8suntrAkIZtecpxEPxY//szqr1mlBaYlQ0r4RCaiD2hjheqF9s1LVE8vVuJCXisjIP+JgtK/Do54ej4Sw==", "requires": { - "@moralisweb3/api-utils": "^2.14.1", - "@moralisweb3/common-core": "^2.14.1", - "@moralisweb3/common-sol-utils": "^2.14.1" + "@ethersproject/logger": "^5.7.0" } }, - "@moralisweb3/streams": { - "version": "2.14.1", - "resolved": "https://registry.npmjs.org/@moralisweb3/streams/-/streams-2.14.1.tgz", - "integrity": "sha512-RRVwCko2cUQwE7j0ZL1g2iwiAFBJL/FJVFBo3dFITrdCEA6LbP/MHgz97rrV9lmk0Mul7ADG9UgX58fQYBlvNg==", + "@ethersproject/providers": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/@ethersproject/providers/-/providers-5.7.2.tgz", + "integrity": "sha512-g34EWZ1WWAVgr4aptGlVBF8mhl3VWjv+8hoAnzStu8Ah22VHBsuGzP17eb6xDVRzw895G4W7vvx60lFFur/1Rg==", "requires": { - "@ethersproject/abi": "^5.7.0", + "@ethersproject/abstract-provider": "^5.7.0", + "@ethersproject/abstract-signer": "^5.7.0", + "@ethersproject/address": "^5.7.0", + "@ethersproject/base64": "^5.7.0", + "@ethersproject/basex": "^5.7.0", "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/constants": "^5.7.0", + "@ethersproject/hash": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/networks": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/random": "^5.7.0", + "@ethersproject/rlp": "^5.7.0", "@ethersproject/sha2": "^5.7.0", "@ethersproject/strings": "^5.7.0", - "@moralisweb3/api-utils": "^2.14.1", - "@moralisweb3/common-core": "^2.14.1", - "@moralisweb3/common-evm-utils": "^2.14.1", - "@moralisweb3/common-streams-utils": "^2.14.1", - "@moralisweb3/streams-typings": "^1.0.6", - "ethereumjs-util": "^7.1.0", - "web3-eth-abi": "^1.8.0" + "@ethersproject/transactions": "^5.7.0", + "@ethersproject/web": "^5.7.0", + "bech32": "1.1.4", + "ws": "7.4.6" } }, - "@moralisweb3/streams-typings": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/@moralisweb3/streams-typings/-/streams-typings-1.0.7.tgz", - "integrity": "sha512-ShbVqil0KLOTyTjO6z9JewPcVVE3S6kzkQFnW2flGBRsGdKucpkUdOx1HijOLoaikz/9gH92n+lzTvRFIj0AoA==" + "@ethersproject/random": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/random/-/random-5.7.0.tgz", + "integrity": "sha512-19WjScqRA8IIeWclFme75VMXSBvi4e6InrUNuaR4s5pTF2qNhcGdCUwdxUVGtDDqC00sDLCO93jPQoDUH4HVmQ==", + "requires": { + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/logger": "^5.7.0" + } }, - "@multiformats/murmur3": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@multiformats/murmur3/-/murmur3-1.1.3.tgz", - "integrity": "sha512-wAPLUErGR8g6Lt+bAZn6218k9YQPym+sjszsXL6o4zfxbA22P+gxWZuuD9wDbwL55xrKO5idpcuQUX7/E3oHcw==", + "@ethersproject/rlp": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/rlp/-/rlp-5.7.0.tgz", + "integrity": "sha512-rBxzX2vK8mVF7b0Tol44t5Tb8gomOHkj5guL+HhzQ1yBh/ydjGnpw6at+X6Iw0Kp3OzzzkcKp8N9r0W4kYSs9w==", "requires": { - "multiformats": "^9.5.4", - "murmurhash3js-revisited": "^3.0.0" + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/logger": "^5.7.0" } }, - "@next/env": { - "version": "13.1.6", - "resolved": "https://registry.npmjs.org/@next/env/-/env-13.1.6.tgz", - "integrity": "sha512-s+W9Fdqh5MFk6ECrbnVmmAOwxKQuhGMT7xXHrkYIBMBcTiOqNWhv5KbJIboKR5STXxNXl32hllnvKaffzFaWQg==" + "@ethersproject/sha2": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/sha2/-/sha2-5.7.0.tgz", + "integrity": "sha512-gKlH42riwb3KYp0reLsFTokByAKoJdgFCwI+CCiX/k+Jm2mbNs6oOaCjYQSlI1+XBVejwH2KrmCbMAT/GnRDQw==", + "requires": { + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "hash.js": "1.1.7" + } }, - "@next/eslint-plugin-next": { - "version": "13.1.6", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-13.1.6.tgz", - "integrity": "sha512-o7cauUYsXjzSJkay8wKjpKJf2uLzlggCsGUkPu3lP09Pv97jYlekTC20KJrjQKmSv5DXV0R/uks2ZXhqjNkqAw==", - "dev": true, + "@ethersproject/signing-key": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/signing-key/-/signing-key-5.7.0.tgz", + "integrity": "sha512-MZdy2nL3wO0u7gkB4nA/pEf8lu1TlFswPNmy8AiYkfKTdO6eXBJyUdmHO/ehm/htHw9K/qF8ujnTyUAD+Ry54Q==", "requires": { - "glob": "7.1.7" + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "bn.js": "^5.2.1", + "elliptic": "6.5.4", + "hash.js": "1.1.7" } }, - "@next/swc-android-arm-eabi": { - "version": "13.1.6", - "resolved": "https://registry.npmjs.org/@next/swc-android-arm-eabi/-/swc-android-arm-eabi-13.1.6.tgz", - "integrity": "sha512-F3/6Z8LH/pGlPzR1AcjPFxx35mPqjE5xZcf+IL+KgbW9tMkp7CYi1y7qKrEWU7W4AumxX/8OINnDQWLiwLasLQ==", - "optional": true + "@ethersproject/solidity": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/solidity/-/solidity-5.7.0.tgz", + "integrity": "sha512-HmabMd2Dt/raavyaGukF4XxizWKhKQ24DoLtdNbBmNKUOPqwjsKQSdV9GQtj9CBEea9DlzETlVER1gYeXXBGaA==", + "requires": { + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/keccak256": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/sha2": "^5.7.0", + "@ethersproject/strings": "^5.7.0" + } }, - "@next/swc-android-arm64": { - "version": "13.1.6", - "resolved": "https://registry.npmjs.org/@next/swc-android-arm64/-/swc-android-arm64-13.1.6.tgz", - "integrity": "sha512-cMwQjnB8vrYkWyK/H0Rf2c2pKIH4RGjpKUDvbjVAit6SbwPDpmaijLio0LWFV3/tOnY6kvzbL62lndVA0mkYpw==", - "optional": true - }, - "@next/swc-darwin-arm64": { - "version": "13.1.6", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-13.1.6.tgz", - "integrity": "sha512-KKRQH4DDE4kONXCvFMNBZGDb499Hs+xcFAwvj+rfSUssIDrZOlyfJNy55rH5t2Qxed1e4K80KEJgsxKQN1/fyw==", - "optional": true - }, - "@next/swc-darwin-x64": { - "version": "13.1.6", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-13.1.6.tgz", - "integrity": "sha512-/uOky5PaZDoaU99ohjtNcDTJ6ks/gZ5ykTQDvNZDjIoCxFe3+t06bxsTPY6tAO6uEAw5f6vVFX5H5KLwhrkZCA==", - "optional": true - }, - "@next/swc-freebsd-x64": { - "version": "13.1.6", - "resolved": "https://registry.npmjs.org/@next/swc-freebsd-x64/-/swc-freebsd-x64-13.1.6.tgz", - "integrity": "sha512-qaEALZeV7to6weSXk3Br80wtFQ7cFTpos/q+m9XVRFggu+8Ib895XhMWdJBzew6aaOcMvYR6KQ6JmHA2/eMzWw==", - "optional": true - }, - "@next/swc-linux-arm-gnueabihf": { - "version": "13.1.6", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm-gnueabihf/-/swc-linux-arm-gnueabihf-13.1.6.tgz", - "integrity": "sha512-OybkbC58A1wJ+JrJSOjGDvZzrVEQA4sprJejGqMwiZyLqhr9Eo8FXF0y6HL+m1CPCpPhXEHz/2xKoYsl16kNqw==", - "optional": true - }, - "@next/swc-linux-arm64-gnu": { - "version": "13.1.6", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-13.1.6.tgz", - "integrity": "sha512-yCH+yDr7/4FDuWv6+GiYrPI9kcTAO3y48UmaIbrKy8ZJpi7RehJe3vIBRUmLrLaNDH3rY1rwoHi471NvR5J5NQ==", - "optional": true - }, - "@next/swc-linux-arm64-musl": { - "version": "13.1.6", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-13.1.6.tgz", - "integrity": "sha512-ECagB8LGX25P9Mrmlc7Q/TQBb9rGScxHbv/kLqqIWs2fIXy6Y/EiBBiM72NTwuXUFCNrWR4sjUPSooVBJJ3ESQ==", - "optional": true - }, - "@next/swc-linux-x64-gnu": { - "version": "13.1.6", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-13.1.6.tgz", - "integrity": "sha512-GT5w2mruk90V/I5g6ScuueE7fqj/d8Bui2qxdw6lFxmuTgMeol5rnzAv4uAoVQgClOUO/MULilzlODg9Ib3Y4Q==", - "optional": true - }, - "@next/swc-linux-x64-musl": { - "version": "13.1.6", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-13.1.6.tgz", - "integrity": "sha512-keFD6KvwOPzmat4TCnlnuxJCQepPN+8j3Nw876FtULxo8005Y9Ghcl7ACcR8GoiKoddAq8gxNBrpjoxjQRHeAQ==", - "optional": true - }, - "@next/swc-win32-arm64-msvc": { - "version": "13.1.6", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-13.1.6.tgz", - "integrity": "sha512-OwertslIiGQluFvHyRDzBCIB07qJjqabAmINlXUYt7/sY7Q7QPE8xVi5beBxX/rxTGPIbtyIe3faBE6Z2KywhQ==", - "optional": true + "@ethersproject/strings": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/strings/-/strings-5.7.0.tgz", + "integrity": "sha512-/9nu+lj0YswRNSH0NXYqrh8775XNyEdUQAuf3f+SmOrnVewcJ5SBNAjF7lpgehKi4abvNNXyf+HX86czCdJ8Mg==", + "requires": { + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/constants": "^5.7.0", + "@ethersproject/logger": "^5.7.0" + } }, - "@next/swc-win32-ia32-msvc": { - "version": "13.1.6", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-13.1.6.tgz", - "integrity": "sha512-g8zowiuP8FxUR9zslPmlju7qYbs2XBtTLVSxVikPtUDQedhcls39uKYLvOOd1JZg0ehyhopobRoH1q+MHlIN/w==", - "optional": true + "@ethersproject/transactions": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/transactions/-/transactions-5.7.0.tgz", + "integrity": "sha512-kmcNicCp1lp8qanMTC3RIikGgoJ80ztTyvtsFvCYpSCfkjhD0jZ2LOrnbcuxuToLIUYYf+4XwD1rP+B/erDIhQ==", + "requires": { + "@ethersproject/address": "^5.7.0", + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/constants": "^5.7.0", + "@ethersproject/keccak256": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/rlp": "^5.7.0", + "@ethersproject/signing-key": "^5.7.0" + } }, - "@next/swc-win32-x64-msvc": { - "version": "13.1.6", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-13.1.6.tgz", - "integrity": "sha512-Ls2OL9hi3YlJKGNdKv8k3X/lLgc3VmLG3a/DeTkAd+lAituJp8ZHmRmm9f9SL84fT3CotlzcgbdaCDfFwFA6bA==", - "optional": true + "@ethersproject/units": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/units/-/units-5.7.0.tgz", + "integrity": "sha512-pD3xLMy3SJu9kG5xDGI7+xhTEmGXlEqXU4OfNapmfnxLVY4EMSSRp7j1k7eezutBPH7RBN/7QPnwR7hzNlEFeg==", + "requires": { + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/constants": "^5.7.0", + "@ethersproject/logger": "^5.7.0" + } }, - "@noble/ed25519": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/@noble/ed25519/-/ed25519-1.7.3.tgz", - "integrity": "sha512-iR8GBkDt0Q3GyaVcIu7mSsVIqnFbkbRzGLWlvhwunacoLwt4J3swfKhfaM6rN6WY+TBGoYT1GtT1mIh2/jGbRQ==" + "@ethersproject/wallet": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/wallet/-/wallet-5.7.0.tgz", + "integrity": "sha512-MhmXlJXEJFBFVKrDLB4ZdDzxcBxQ3rLyCkhNqVu3CDYvR97E+8r01UgrI+TI99Le+aYm/in/0vp86guJuM7FCA==", + "requires": { + "@ethersproject/abstract-provider": "^5.7.0", + "@ethersproject/abstract-signer": "^5.7.0", + "@ethersproject/address": "^5.7.0", + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/hash": "^5.7.0", + "@ethersproject/hdnode": "^5.7.0", + "@ethersproject/json-wallets": "^5.7.0", + "@ethersproject/keccak256": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/random": "^5.7.0", + "@ethersproject/signing-key": "^5.7.0", + "@ethersproject/transactions": "^5.7.0", + "@ethersproject/wordlists": "^5.7.0" + } }, - "@noble/hashes": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.2.0.tgz", - "integrity": "sha512-FZfhjEDbT5GRswV3C6uvLPHMiVD6lQBmpoX5+eSiPaMTXte/IKqI5dykDxzZB/WBeK/CDuQRBWarPdi3FNY2zQ==" + "@ethersproject/web": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/@ethersproject/web/-/web-5.7.1.tgz", + "integrity": "sha512-Gueu8lSvyjBWL4cYsWsjh6MtMwM0+H4HvqFPZfB6dV8ctbP9zFAO73VG1cMWae0FLPCtz0peKPpZY8/ugJJX2w==", + "requires": { + "@ethersproject/base64": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/strings": "^5.7.0" + } }, - "@noble/secp256k1": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/@noble/secp256k1/-/secp256k1-1.7.1.tgz", - "integrity": "sha512-hOUk6AyBFmqVrv7k5WAw/LpszxVbj9gGN4JRkIX52fdFAj1UA61KXmZDvqVEm+pOyec3+fIeZB02LYa/pWOArw==" + "@ethersproject/wordlists": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/@ethersproject/wordlists/-/wordlists-5.7.0.tgz", + "integrity": "sha512-S2TFNJNfHWVHNE6cNDjbVlZ6MgE17MIxMbMg2zv3wn+3XSJGosL1m9ZVv3GXCf/2ymSsQ+hRI5IzoMJTG6aoVA==", + "requires": { + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/hash": "^5.7.0", + "@ethersproject/logger": "^5.7.0", + "@ethersproject/properties": "^5.7.0", + "@ethersproject/strings": "^5.7.0" + } }, - "@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "@humanwhocodes/config-array": { + "version": "0.11.8", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.8.tgz", + "integrity": "sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==", "dev": true, "requires": { - "@nodelib/fs.stat": "2.0.5", - "run-parallel": "^1.1.9" + "@humanwhocodes/object-schema": "^1.2.1", + "debug": "^4.1.1", + "minimatch": "^3.0.5" } }, - "@nodelib/fs.stat": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", "dev": true }, - "@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, + "@humanwhocodes/object-schema": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", + "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==", + "dev": true + }, + "@ipld/car": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/@ipld/car/-/car-3.2.4.tgz", + "integrity": "sha512-rezKd+jk8AsTGOoJKqzfjLJ3WVft7NZNH95f0pfPbicROvzTyvHCNy567HzSUd6gRXZ9im29z5ZEv9Hw49jSYw==", "requires": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" + "@ipld/dag-cbor": "^7.0.0", + "multiformats": "^9.5.4", + "varint": "^6.0.0" } }, - "@panva/hkdf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@panva/hkdf/-/hkdf-1.0.2.tgz", - "integrity": "sha512-MSAs9t3Go7GUkMhpKC44T58DJ5KGk2vBo+h1cqQeqlMfdGkxaVB78ZWpv9gYi/g2fa4sopag9gJsNvS8XGgWJA==" + "@ipld/dag-cbor": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/@ipld/dag-cbor/-/dag-cbor-7.0.3.tgz", + "integrity": "sha512-1VVh2huHsuohdXC1bGJNE8WR72slZ9XE2T3wbBBq31dm7ZBatmKLLxrB+XAqafxfRFjv08RZmj/W/ZqaM13AuA==", + "requires": { + "cborg": "^1.6.0", + "multiformats": "^9.5.4" + } }, - "@pkgr/utils": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@pkgr/utils/-/utils-2.3.1.tgz", - "integrity": "sha512-wfzX8kc1PMyUILA+1Z/EqoE4UCXGy0iRGMhPwdfae1+f0OXlLqCk+By+aMzgJBzR9AzS4CDizioG6Ss1gvAFJw==", - "dev": true, + "@ipld/dag-pb": { + "version": "2.1.18", + "resolved": "https://registry.npmjs.org/@ipld/dag-pb/-/dag-pb-2.1.18.tgz", + "integrity": "sha512-ZBnf2fuX9y3KccADURG5vb9FaOeMjFkCrNysB0PtftME/4iCTjxfaLoNq/IAh5fTqUOMXvryN6Jyka4ZGuMLIg==", "requires": { - "cross-spawn": "^7.0.3", - "is-glob": "^4.0.3", - "open": "^8.4.0", - "picocolors": "^1.0.0", - "tiny-glob": "^0.2.9", - "tslib": "^2.4.0" + "multiformats": "^9.5.4" } }, - "@popperjs/core": { - "version": "2.11.6", - "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.6.tgz", - "integrity": "sha512-50/17A98tWUfQ176raKiOGXuYpLyyVMkxxG6oylzL3BPOlA6ADGdK7EYunSa4I064xerltq9TGXs8HmOk5E+vw==" + "@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "requires": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + } }, - "@protobufjs/aspromise": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz", - "integrity": "sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==" + "@jridgewell/resolve-uri": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", + "integrity": "sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==" }, - "@protobufjs/base64": { + "@jridgewell/set-array": { "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz", - "integrity": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==" - }, - "@protobufjs/codegen": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.4.tgz", - "integrity": "sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==" + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==" }, - "@protobufjs/eventemitter": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz", - "integrity": "sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q==" - }, - "@protobufjs/fetch": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/fetch/-/fetch-1.1.0.tgz", - "integrity": "sha512-lljVXpqXebpsijW71PZaCYeIcE5on1w5DlQy5WH6GLbFryLUrBD4932W/E2BSpfRJWseIL4v/KPgBFxDOIdKpQ==", + "@jridgewell/source-map": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.2.tgz", + "integrity": "sha512-m7O9o2uR8k2ObDysZYzdfhb08VuEml5oWGiosa1VdaPZ/A6QyPkAJuwN0Q1lhULOf6B7MtQmHENS743hWtCrgw==", + "peer": true, "requires": { - "@protobufjs/aspromise": "^1.1.1", - "@protobufjs/inquire": "^1.1.0" + "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/trace-mapping": "^0.3.9" } }, - "@protobufjs/float": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@protobufjs/float/-/float-1.0.2.tgz", - "integrity": "sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ==" - }, - "@protobufjs/inquire": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/inquire/-/inquire-1.1.0.tgz", - "integrity": "sha512-kdSefcPdruJiFMVSbn801t4vFK7KB/5gd2fYvrxhuJYg8ILrmn9SKSX2tZdV6V+ksulWqS7aXjBcRXl3wHoD9Q==" + "@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" }, - "@protobufjs/path": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@protobufjs/path/-/path-1.1.2.tgz", - "integrity": "sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA==" + "@jridgewell/trace-mapping": { + "version": "0.3.17", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", + "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", + "requires": { + "@jridgewell/resolve-uri": "3.1.0", + "@jridgewell/sourcemap-codec": "1.4.14" + } }, - "@protobufjs/pool": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz", - "integrity": "sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw==" + "@magic-sdk/commons": { + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/@magic-sdk/commons/-/commons-9.2.0.tgz", + "integrity": "sha512-knMOccC3rVhaHzWAmcVA1hHeT38823gxht7Um1gUx4wMjJ7CCRTcBn38nd4ibfgXwTg2nIdw3MrgSyfjeFaKgQ==", + "requires": {} }, - "@protobufjs/utf8": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz", - "integrity": "sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==" + "@magic-sdk/provider": { + "version": "13.2.0", + "resolved": "https://registry.npmjs.org/@magic-sdk/provider/-/provider-13.2.0.tgz", + "integrity": "sha512-56J8JoXKPVYYtVxRL/0Y0UhLFb/tdY3wWf4u3QZNtiArw6LGrNMLYr8HXb9pqTMV0eBVT9FEMmY68EHEIv4xwg==", + "requires": { + "@magic-sdk/types": "^11.2.0", + "eventemitter3": "^4.0.4", + "web3-core": "1.5.2" + } }, - "@remix-run/router": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.3.2.tgz", - "integrity": "sha512-t54ONhl/h75X94SWsHGQ4G/ZrCEguKSRQr7DrjTciJXW0YU1QhlwYeycvK5JgkzlxmvrK7wq1NB/PLtHxoiDcA==" + "@magic-sdk/types": { + "version": "11.2.0", + "resolved": "https://registry.npmjs.org/@magic-sdk/types/-/types-11.2.0.tgz", + "integrity": "sha512-pku7XklWE7TaHIlSfOoJoksnAgwR3PvL49wpUGHtd+QxmKtDxSbmWoHdllk6j/N3vd5eAk5Whxposp96QeYm/g==" }, - "@rushstack/eslint-patch": { + "@metamask/detect-provider": { "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.2.0.tgz", - "integrity": "sha512-sXo/qW2/pAcmT43VoRKOJbDOfV3cYpq3szSVfIThQXNt+E4DfKj361vaAt3c88U5tPUxzEswam7GW48PJqtKAg==", - "dev": true - }, - "@socket.io/component-emitter": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.1.0.tgz", - "integrity": "sha512-+9jVqKhRSpsc591z5vX+X5Yyw+he/HCB4iQ/RYxw35CEPaY1gnsNE43nf9n9AaYjAQrTiI/mOwKUKdUs9vf7Xg==" + "resolved": "https://registry.npmjs.org/@metamask/detect-provider/-/detect-provider-1.2.0.tgz", + "integrity": "sha512-ocA76vt+8D0thgXZ7LxFPyqw3H7988qblgzddTDA6B8a/yU0uKV42QR/DhA+Jh11rJjxW0jKvwb5htA6krNZDQ==" }, - "@solana/buffer-layout": { + "@metamask/eth-sig-util": { "version": "4.0.1", - "resolved": "https://registry.npmjs.org/@solana/buffer-layout/-/buffer-layout-4.0.1.tgz", - "integrity": "sha512-E1ImOIAD1tBZFRdjeM4/pzTiTApC0AOBGwyAMS4fwIodCWArzJ3DWdoh8cKxeFM2fElkxBh2Aqts1BPC373rHA==", - "requires": { - "buffer": "~6.0.3" - } - }, - "@solana/web3.js": { - "version": "1.73.2", - "resolved": "https://registry.npmjs.org/@solana/web3.js/-/web3.js-1.73.2.tgz", - "integrity": "sha512-9WACF8W4Nstj7xiDw3Oom22QmrhBh0VyZyZ7JvvG3gOxLWLlX3hvm5nPVJOGcCE/9fFavBbCUb5A6CIuvMGdoA==", + "resolved": "https://registry.npmjs.org/@metamask/eth-sig-util/-/eth-sig-util-4.0.1.tgz", + "integrity": "sha512-tghyZKLHZjcdlDqCA3gNZmLeR0XvOE9U1qoQO9ohyAZT6Pya+H9vkBPcsyXytmYLNgVoin7CKCmweo/R43V+tQ==", "requires": { - "@babel/runtime": "^7.12.5", - "@noble/ed25519": "^1.7.0", - "@noble/hashes": "^1.1.2", - "@noble/secp256k1": "^1.6.3", - "@solana/buffer-layout": "^4.0.0", - "agentkeepalive": "^4.2.1", - "bigint-buffer": "^1.1.5", - "bn.js": "^5.0.0", - "borsh": "^0.7.0", - "bs58": "^4.0.1", - "buffer": "6.0.1", - "fast-stable-stringify": "^1.0.0", - "jayson": "^3.4.4", - "node-fetch": "2", - "rpc-websockets": "^7.5.0", - "superstruct": "^0.14.2" + "ethereumjs-abi": "^0.6.8", + "ethereumjs-util": "^6.2.1", + "ethjs-util": "^0.1.6", + "tweetnacl": "^1.0.3", + "tweetnacl-util": "^0.15.1" }, "dependencies": { - "base-x": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.9.tgz", - "integrity": "sha512-H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ==", + "@types/bn.js": { + "version": "4.11.6", + "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-4.11.6.tgz", + "integrity": "sha512-pqr857jrp2kPuO9uRjZ3PwnJTjoQy+fcdxvBTvHm6dkmEL9q+hDD/2j/0ELOBPtPnS8LjCX0gI9nbl8lVkadpg==", "requires": { - "safe-buffer": "^5.0.1" + "@types/node": "*" } }, - "bs58": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", - "integrity": "sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==", - "requires": { - "base-x": "^3.0.2" - } + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" }, - "buffer": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.1.tgz", - "integrity": "sha512-rVAXBwEcEoYtxnHSO5iWyhzV/O1WMtkUYWlfdLS7FjU4PnSJJHEfHXi/uHPI5EwltmOA794gN3bm3/pzuctWjQ==", + "ethereumjs-util": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-6.2.1.tgz", + "integrity": "sha512-W2Ktez4L01Vexijrm5EB6w7dg4n/TgpoYU4avuT5T3Vmnw/eCRtiBrJfQYS/DCSvDIOLn2k57GcHdeBcgVxAqw==", "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.2.1" + "@types/bn.js": "^4.11.3", + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "0.1.6", + "rlp": "^2.2.3" } } } }, - "@swc/helpers": { - "version": "0.4.14", - "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.4.14.tgz", - "integrity": "sha512-4C7nX/dvpzB7za4Ql9K81xK3HPxCpHMgwTZVyf+9JQ6VUbn9jjZVN7/Nkdz/Ugzs2CSjqnL/UPXroiVBVHUWUw==", + "@metamask/obs-store": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@metamask/obs-store/-/obs-store-7.0.0.tgz", + "integrity": "sha512-Tr61Uu9CGXkCg5CZwOYRMQERd+y6fbtrtLd/PzDTPHO5UJpmSbU+7MPcQK7d1DwZCOCeCIvhmZSUCvYliC8uGw==", "requires": { - "tslib": "^2.4.0" + "@metamask/safe-event-emitter": "^2.0.0", + "through2": "^2.0.3" } }, - "@toruslabs/base-controllers": { - "version": "2.7.0", - "resolved": "https://registry.npmjs.org/@toruslabs/base-controllers/-/base-controllers-2.7.0.tgz", - "integrity": "sha512-K/cw34TZdKX6vfWcRJaka/IyucOuVLc5LcJubRLGCsO/yk86hnMUG1fYlVfQyy8fVXWERZe0d9yyyVAsnxDAww==", + "@metamask/safe-event-emitter": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@metamask/safe-event-emitter/-/safe-event-emitter-2.0.0.tgz", + "integrity": "sha512-/kSXhY692qiV1MXu6EeOZvg5nECLclxNXcKCxJ3cXQgYuRymRHpdx/t7JXfsK+JLjwA1e1c1/SBrlQYpusC29Q==" + }, + "@moralisweb3/api-utils": { + "version": "2.14.1", + "resolved": "https://registry.npmjs.org/@moralisweb3/api-utils/-/api-utils-2.14.1.tgz", + "integrity": "sha512-DrAsdQbkxocLrojq4tnBEo/lfyNVmu/KxqbDpJ+qDhzXiJxhknkabbWEDU0iwHQxl2zX8OUgiTScKGG0UaUYkw==", "requires": { - "@toruslabs/broadcast-channel": "^6.1.1", - "@toruslabs/http-helpers": "^3.2.0", - "@toruslabs/openlogin-jrpc": "^3.0.0", - "async-mutex": "^0.4.0", - "bignumber.js": "^9.1.1", - "bowser": "^2.11.0", - "eth-rpc-errors": "^4.0.3", - "ethereumjs-util": "^7.1.5", - "json-rpc-random-id": "^1.0.1", - "lodash": "^4.17.21", - "loglevel": "^1.8.1" - }, - "dependencies": { - "@toruslabs/openlogin-jrpc": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@toruslabs/openlogin-jrpc/-/openlogin-jrpc-3.0.0.tgz", - "integrity": "sha512-EbrPxx9JJDzTGPRGhpnoqngrwVRgNxwY86f6Vp4hCJnZNn/IgNz39KGROEi8SDNWADYuT29d8gyZ5Y0o79TOMA==", - "requires": { - "@toruslabs/openlogin-utils": "^3.0.0", - "end-of-stream": "^1.4.4", - "eth-rpc-errors": "^4.0.3", - "events": "^3.3.0", - "fast-safe-stringify": "^2.1.1", - "once": "^1.4.0", - "pump": "^3.0.0", - "readable-stream": "^3.6.0" - } - }, - "@toruslabs/openlogin-utils": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@toruslabs/openlogin-utils/-/openlogin-utils-3.0.0.tgz", - "integrity": "sha512-T5t29/AIFqXc84x4OoAkZWjd0uoP2Lk6iaFndnIIMzCPu+BwwV0spX/jd/3YYNjZ8Po8D+faEnwAhiqemYeK2w==", - "requires": { - "base64url": "^3.0.1", - "keccak": "^3.0.3", - "randombytes": "^2.1.0" - } - } + "@moralisweb3/common-core": "^2.14.1", + "@moralisweb3/common-evm-utils": "^2.14.1", + "axios": "^1.2.1" } }, - "@toruslabs/broadcast-channel": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/@toruslabs/broadcast-channel/-/broadcast-channel-6.1.1.tgz", - "integrity": "sha512-FapnmyPLpqfrdbfyawlReRpluEKQ2riqCNOOZQz9KHPF8a/XsgYi/UAdrR02k6BHaZYyV6D52Oji1gM6CPj6EQ==", + "@moralisweb3/auth": { + "version": "2.14.1", + "resolved": "https://registry.npmjs.org/@moralisweb3/auth/-/auth-2.14.1.tgz", + "integrity": "sha512-zL6AuHpDoxAdqCfMQmvlZO+IDgcuSBn280/nU1q9jDI4Y8+SlBtrF4Sj1DHp2r0cW2qU2ag8dfoXshAGMB3FgQ==", "requires": { - "@babel/runtime": "^7.19.4", - "@toruslabs/eccrypto": "^1.1.8", - "@toruslabs/metadata-helpers": "^3.0.0", - "bowser": "^2.11.0", - "keccak": "^3.0.2", - "loglevel": "^1.8.0", - "oblivious-set": "1.1.1", - "socket.io-client": "^4.5.3", - "unload": "^2.3.1" + "@moralisweb3/api-utils": "^2.14.1", + "@moralisweb3/common-aptos-utils": "^2.14.1", + "@moralisweb3/common-auth-utils": "^2.14.1", + "@moralisweb3/common-core": "^2.14.1", + "@moralisweb3/common-evm-utils": "^2.14.1", + "@moralisweb3/common-sol-utils": "^2.14.1" } }, - "@toruslabs/eccrypto": { - "version": "1.1.8", - "resolved": "https://registry.npmjs.org/@toruslabs/eccrypto/-/eccrypto-1.1.8.tgz", - "integrity": "sha512-5dIrO2KVqvnAPOPfJ2m6bnjp9vav9GIcCZXiXRW/bJuIDRLVxJhVvRlleF4oaEZPq5yX5piHq5jVHagNNS0jOQ==", + "@moralisweb3/common-aptos-utils": { + "version": "2.14.1", + "resolved": "https://registry.npmjs.org/@moralisweb3/common-aptos-utils/-/common-aptos-utils-2.14.1.tgz", + "integrity": "sha512-DIGvwNq5dwVtDQjEI4z62oNWt9oE84+i00WL+s01J3BcyMwL/HU/o5TsrOMhkmI/jpoi3jQyx6zkVTK64I8U4g==", "requires": { - "acorn": "^8.4.1", - "elliptic": "^6.5.4", - "es6-promise": "^4.2.8", - "nan": "^2.14.2", - "secp256k1": "^3.8.0" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", - "optional": true - }, - "secp256k1": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-3.8.0.tgz", - "integrity": "sha512-k5ke5avRZbtl9Tqx/SA7CbY3NF6Ro+Sj9cZxezFzuBlLDmyqPiL8hJJ+EmzD8Ig4LUDByHJ3/iPOVoRixs/hmw==", - "optional": true, - "requires": { - "bindings": "^1.5.0", - "bip66": "^1.1.5", - "bn.js": "^4.11.8", - "create-hash": "^1.2.0", - "drbg.js": "^1.0.1", - "elliptic": "^6.5.2", - "nan": "^2.14.0", - "safe-buffer": "^5.1.2" - } - } + "@moralisweb3/common-core": "^2.14.1", + "@noble/hashes": "^1.2.0" } }, - "@toruslabs/http-helpers": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/@toruslabs/http-helpers/-/http-helpers-3.2.0.tgz", - "integrity": "sha512-fCfvBHfYzd7AyOYlBo7wihh5nj6+4Ik6V5+nI7H63oiKICjMlByTXSauTUa/qm2mjZJn/OmVYeV5guPIgxoW1w==", + "@moralisweb3/common-auth-utils": { + "version": "2.14.1", + "resolved": "https://registry.npmjs.org/@moralisweb3/common-auth-utils/-/common-auth-utils-2.14.1.tgz", + "integrity": "sha512-vJGref8n8g/HwWFWsAxQQJ3IU5oVeSDPgl/+lKormZvKM8xGWy4eK1P8gWYaGtK8lcc2XXW8QCH22jsRxyUT7w==", "requires": { - "lodash.merge": "^4.6.2", - "loglevel": "^1.8.0" + "@ethersproject/abi": "^5.7.0", + "@moralisweb3/common-aptos-utils": "^2.14.1", + "@moralisweb3/common-core": "^2.14.1", + "@moralisweb3/common-evm-utils": "^2.14.1", + "@moralisweb3/common-sol-utils": "^2.14.1", + "@moralisweb3/streams-typings": "^1.0.6" } }, - "@toruslabs/metadata-helpers": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@toruslabs/metadata-helpers/-/metadata-helpers-3.0.0.tgz", - "integrity": "sha512-0eWCIbKpaBx3/z3BDyWebxUisCS37Uxb0zxOEWizSXjGH/T6TJCrBeZFPmANN3hq47GoNCsRiku9cgfij1UMTQ==", + "@moralisweb3/common-core": { + "version": "2.14.1", + "resolved": "https://registry.npmjs.org/@moralisweb3/common-core/-/common-core-2.14.1.tgz", + "integrity": "sha512-8HpQH9D8hW7BRazUhq64jx3MVlGtTl4a3TYjMuuZTPjN6+H8ZsuNTMTmT4KmLVpST7LakpX+kjNYQVyE9g70pQ==", "requires": { - "@toruslabs/eccrypto": "^1.1.8", - "@toruslabs/http-helpers": "^3.0.0", - "elliptic": "^6.5.4", - "json-stable-stringify": "^1.0.1", - "keccak": "^3.0.2" + "axios": "^1.2.1" } }, - "@toruslabs/openlogin": { - "version": "2.13.0", - "resolved": "https://registry.npmjs.org/@toruslabs/openlogin/-/openlogin-2.13.0.tgz", - "integrity": "sha512-tB9v7hYr+W2PnbQk7NQqzDN48VzbLcwlL8ZsMBE/HTO2sTVfFisq+Phj33kIro9FwLoZHzhvg45QbROEZTVtFw==", + "@moralisweb3/common-evm-utils": { + "version": "2.14.1", + "resolved": "https://registry.npmjs.org/@moralisweb3/common-evm-utils/-/common-evm-utils-2.14.1.tgz", + "integrity": "sha512-VxyKPHsbIbRcN8F5XS4WKSsll12O5aPEuvFB3AS6EMqtgGlJixhVPu0cucu8IuLBz8ZST6vqKmlDtjr98xAbgg==", "requires": { - "@toruslabs/eccrypto": "^1.1.8", - "@toruslabs/http-helpers": "^3.2.0", - "@toruslabs/openlogin-jrpc": "^2.13.0", - "@toruslabs/openlogin-utils": "^2.13.0", - "lodash.merge": "^4.6.2", - "loglevel": "^1.8.1", - "pump": "^3.0.0" + "@ethersproject/address": "^5.7.0", + "@ethersproject/bytes": "^5.7.0", + "@ethersproject/transactions": "^5.7.0", + "@moralisweb3/common-core": "^2.14.1" } }, - "@toruslabs/openlogin-ed25519": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@toruslabs/openlogin-ed25519/-/openlogin-ed25519-2.0.0.tgz", - "integrity": "sha512-gz00QpMHbSVaZFKATxbsCbtO2uRyF7xIvetuzOCfbfcjkTz0Wonr/8B44uiIDe4j2ddv4Hx8HvnBikFDLQQrZA==", + "@moralisweb3/common-sol-utils": { + "version": "2.14.1", + "resolved": "https://registry.npmjs.org/@moralisweb3/common-sol-utils/-/common-sol-utils-2.14.1.tgz", + "integrity": "sha512-/OAn4TevMpcC0SXOu7KyirQsT01QLQBX1f5iYS1FqC0+MsbRlIQTp4gLAanS4jGDOZN3MTaZLJY88cDiQ8+Xwg==", "requires": { - "@toruslabs/tweetnacl-js": "^1.0.3" + "@moralisweb3/common-core": "^2.14.1", + "bn.js": "^5.2.1", + "bs58": "^5.0.0", + "buffer": "^6.0.3" } }, - "@toruslabs/openlogin-jrpc": { - "version": "2.13.0", - "resolved": "https://registry.npmjs.org/@toruslabs/openlogin-jrpc/-/openlogin-jrpc-2.13.0.tgz", - "integrity": "sha512-TEg50/84xSocHLb3MEtw0DaIa+bXU66TJJjjDrqGPjoRo97fn8F8jDW2AcVV+eug39xpfxPIw1FFdCtgunmz7w==", + "@moralisweb3/common-streams-utils": { + "version": "2.14.1", + "resolved": "https://registry.npmjs.org/@moralisweb3/common-streams-utils/-/common-streams-utils-2.14.1.tgz", + "integrity": "sha512-P65j1OUuMNsVC6sFrlCwHLhcxMF3iz6YoXxFldYcOD62bGco5MQuREidS7ksTjl7j6dzLYnLjBA1y5p7hOG6tw==", "requires": { - "@toruslabs/openlogin-utils": "^2.13.0", - "end-of-stream": "^1.4.4", - "eth-rpc-errors": "^4.0.3", - "events": "^3.3.0", - "fast-safe-stringify": "^2.1.1", - "once": "^1.4.0", - "pump": "^3.0.0", - "readable-stream": "^3.6.0" + "@ethersproject/abi": "^5.7.0", + "@moralisweb3/common-aptos-utils": "^2.14.1", + "@moralisweb3/common-core": "^2.14.1", + "@moralisweb3/common-evm-utils": "^2.14.1", + "@moralisweb3/streams-typings": "^1.0.6" } }, - "@toruslabs/openlogin-utils": { - "version": "2.13.0", - "resolved": "https://registry.npmjs.org/@toruslabs/openlogin-utils/-/openlogin-utils-2.13.0.tgz", - "integrity": "sha512-g4pj6hIdKcuyetVsUWqiAJmCooTS9hOADL31m7LTqgdXzX9oR437A+c8Dw8gzFVcHmkK16Yt2//GvlKnSsGILg==", + "@moralisweb3/evm-api": { + "version": "2.14.1", + "resolved": "https://registry.npmjs.org/@moralisweb3/evm-api/-/evm-api-2.14.1.tgz", + "integrity": "sha512-wflCFND0g9buZ+dwkGGGZZlzvIAteyItmSmJgIr0N7AFmR/msd6BCwAJuXv8OrLu3ez6CNQCvQUHKc3s/M5Nqw==", "requires": { - "base64url": "^3.0.1", - "keccak": "^3.0.3", - "randombytes": "^2.1.0" + "@moralisweb3/api-utils": "^2.14.1", + "@moralisweb3/common-core": "^2.14.1", + "@moralisweb3/common-evm-utils": "^2.14.1" } }, - "@toruslabs/solana-embed": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@toruslabs/solana-embed/-/solana-embed-0.3.3.tgz", - "integrity": "sha512-Edw0p1oNNG+fk+3XIZZiIiwdi75lgtOpCjIK7G7PbR3ygJPVgM7e6L0MCOVNkX0LSJTc5HJFi9E0MiAf4cG7UQ==", + "@moralisweb3/next": { + "version": "2.14.1", + "resolved": "https://registry.npmjs.org/@moralisweb3/next/-/next-2.14.1.tgz", + "integrity": "sha512-IzOqwdh0bnens+SKLeKMmNmvHsoWIRvuKELCK2maRsZNxvs76uIPQrpIKPKg9lqUxKViicqG0dijkJgI+kbZmw==", "requires": { - "@solana/web3.js": "^1.63.1", - "@toruslabs/base-controllers": "^2.2.6", - "@toruslabs/http-helpers": "^3.2.0", - "@toruslabs/openlogin-jrpc": "^2.6.0", - "eth-rpc-errors": "^4.0.3", - "fast-deep-equal": "^3.1.3", - "is-stream": "^2.0.1", - "lodash-es": "^4.17.21", - "loglevel": "^1.8.0", - "pump": "^3.0.0" + "@moralisweb3/api-utils": "^2.14.1", + "@moralisweb3/auth": "^2.14.1", + "@moralisweb3/common-auth-utils": "^2.14.1", + "@moralisweb3/common-core": "^2.14.1", + "@moralisweb3/evm-api": "^2.14.1", + "@moralisweb3/sol-api": "^2.14.1", + "axios": "^1.2.1", + "moralis": "^2.14.1", + "swr": "^1.3.0" } }, - "@toruslabs/torus-embed": { - "version": "1.38.9", - "resolved": "https://registry.npmjs.org/@toruslabs/torus-embed/-/torus-embed-1.38.9.tgz", - "integrity": "sha512-8aQrtRgYvDyj9dbNLGJtExrQ3NMDsNo7CrNXclChaTh48dkKmwaqs19LMZ30lHo5hpKKHfbF2rAzk2o/ylt/2g==", + "@moralisweb3/sol-api": { + "version": "2.14.1", + "resolved": "https://registry.npmjs.org/@moralisweb3/sol-api/-/sol-api-2.14.1.tgz", + "integrity": "sha512-tL7CWYkqhB6uoHLtjiFLa+tSx5wCA/qOohMDx9cAEF8UOFvlOmgV/QpzM3QpDzKx1Qa9FFAt68yR9fwWhjis8w==", "requires": { - "@metamask/obs-store": "^7.0.0", - "@toruslabs/http-helpers": "^3.2.0", - "@toruslabs/openlogin-jrpc": "^2.6.0", - "create-hash": "^1.2.0", - "end-of-stream": "^1.4.4", - "eth-rpc-errors": "^4.0.3", - "events": "^3.3.0", - "fast-deep-equal": "^3.1.3", - "is-stream": "^2.0.1", - "lodash.merge": "^4.6.2", - "loglevel": "^1.8.0", - "once": "^1.4.0", - "pump": "^3.0.0" + "@moralisweb3/api-utils": "^2.14.1", + "@moralisweb3/common-core": "^2.14.1", + "@moralisweb3/common-sol-utils": "^2.14.1" } }, - "@toruslabs/tweetnacl-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@toruslabs/tweetnacl-js/-/tweetnacl-js-1.0.3.tgz", - "integrity": "sha512-WQJYMTR/bkqvpk3DWOqRt5e24RhwJp9PXUoSj4zSthd3+fDhKYCI56YVMPNDKah1fCffOe9F3m8iZ5SgDZ+Csw==" - }, - "@types/bn.js": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.1.1.tgz", - "integrity": "sha512-qNrYbZqMx0uJAfKnKclPh+dTwK33KfLHYqtyODwd5HnXOjnkhc4qgn3BrK6RWyGZm5+sIFE7Q7Vz6QQtJB7w7g==", + "@moralisweb3/streams": { + "version": "2.14.1", + "resolved": "https://registry.npmjs.org/@moralisweb3/streams/-/streams-2.14.1.tgz", + "integrity": "sha512-RRVwCko2cUQwE7j0ZL1g2iwiAFBJL/FJVFBo3dFITrdCEA6LbP/MHgz97rrV9lmk0Mul7ADG9UgX58fQYBlvNg==", "requires": { - "@types/node": "*" + "@ethersproject/abi": "^5.7.0", + "@ethersproject/bignumber": "^5.7.0", + "@ethersproject/sha2": "^5.7.0", + "@ethersproject/strings": "^5.7.0", + "@moralisweb3/api-utils": "^2.14.1", + "@moralisweb3/common-core": "^2.14.1", + "@moralisweb3/common-evm-utils": "^2.14.1", + "@moralisweb3/common-streams-utils": "^2.14.1", + "@moralisweb3/streams-typings": "^1.0.6", + "ethereumjs-util": "^7.1.0", + "web3-eth-abi": "^1.8.0" } }, - "@types/connect": { - "version": "3.4.35", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", - "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", - "requires": { - "@types/node": "*" - } + "@moralisweb3/streams-typings": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/@moralisweb3/streams-typings/-/streams-typings-1.0.7.tgz", + "integrity": "sha512-ShbVqil0KLOTyTjO6z9JewPcVVE3S6kzkQFnW2flGBRsGdKucpkUdOx1HijOLoaikz/9gH92n+lzTvRFIj0AoA==" }, - "@types/eslint": { - "version": "8.21.0", - "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.21.0.tgz", - "integrity": "sha512-35EhHNOXgxnUgh4XCJsGhE7zdlDhYDN/aMG6UbkByCFFNgQ7b3U+uVoqBpicFydR8JEfgdjCF7SJ7MiJfzuiTA==", - "peer": true, + "@multiformats/murmur3": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/@multiformats/murmur3/-/murmur3-1.1.3.tgz", + "integrity": "sha512-wAPLUErGR8g6Lt+bAZn6218k9YQPym+sjszsXL6o4zfxbA22P+gxWZuuD9wDbwL55xrKO5idpcuQUX7/E3oHcw==", "requires": { - "@types/estree": "*", - "@types/json-schema": "*" + "multiformats": "^9.5.4", + "murmurhash3js-revisited": "^3.0.0" } }, - "@types/eslint-scope": { - "version": "3.7.4", - "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", - "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", - "peer": true, + "@next/env": { + "version": "13.1.6", + "resolved": "https://registry.npmjs.org/@next/env/-/env-13.1.6.tgz", + "integrity": "sha512-s+W9Fdqh5MFk6ECrbnVmmAOwxKQuhGMT7xXHrkYIBMBcTiOqNWhv5KbJIboKR5STXxNXl32hllnvKaffzFaWQg==" + }, + "@next/eslint-plugin-next": { + "version": "13.1.6", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-13.1.6.tgz", + "integrity": "sha512-o7cauUYsXjzSJkay8wKjpKJf2uLzlggCsGUkPu3lP09Pv97jYlekTC20KJrjQKmSv5DXV0R/uks2ZXhqjNkqAw==", + "dev": true, "requires": { - "@types/eslint": "*", - "@types/estree": "*" + "glob": "7.1.7" } }, - "@types/estree": { - "version": "0.0.51", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", - "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==", - "peer": true + "@next/swc-android-arm-eabi": { + "version": "13.1.6", + "resolved": "https://registry.npmjs.org/@next/swc-android-arm-eabi/-/swc-android-arm-eabi-13.1.6.tgz", + "integrity": "sha512-F3/6Z8LH/pGlPzR1AcjPFxx35mPqjE5xZcf+IL+KgbW9tMkp7CYi1y7qKrEWU7W4AumxX/8OINnDQWLiwLasLQ==", + "optional": true }, - "@types/json-schema": { - "version": "7.0.11", - "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", - "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", - "peer": true + "@next/swc-android-arm64": { + "version": "13.1.6", + "resolved": "https://registry.npmjs.org/@next/swc-android-arm64/-/swc-android-arm64-13.1.6.tgz", + "integrity": "sha512-cMwQjnB8vrYkWyK/H0Rf2c2pKIH4RGjpKUDvbjVAit6SbwPDpmaijLio0LWFV3/tOnY6kvzbL62lndVA0mkYpw==", + "optional": true }, - "@types/json5": { - "version": "0.0.29", - "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", - "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", - "dev": true + "@next/swc-darwin-arm64": { + "version": "13.1.6", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-13.1.6.tgz", + "integrity": "sha512-KKRQH4DDE4kONXCvFMNBZGDb499Hs+xcFAwvj+rfSUssIDrZOlyfJNy55rH5t2Qxed1e4K80KEJgsxKQN1/fyw==", + "optional": true }, - "@types/long": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.2.tgz", - "integrity": "sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA==" + "@next/swc-darwin-x64": { + "version": "13.1.6", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-13.1.6.tgz", + "integrity": "sha512-/uOky5PaZDoaU99ohjtNcDTJ6ks/gZ5ykTQDvNZDjIoCxFe3+t06bxsTPY6tAO6uEAw5f6vVFX5H5KLwhrkZCA==", + "optional": true }, - "@types/minimatch": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz", - "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==" + "@next/swc-freebsd-x64": { + "version": "13.1.6", + "resolved": "https://registry.npmjs.org/@next/swc-freebsd-x64/-/swc-freebsd-x64-13.1.6.tgz", + "integrity": "sha512-qaEALZeV7to6weSXk3Br80wtFQ7cFTpos/q+m9XVRFggu+8Ib895XhMWdJBzew6aaOcMvYR6KQ6JmHA2/eMzWw==", + "optional": true }, - "@types/minimist": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.2.tgz", - "integrity": "sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==" + "@next/swc-linux-arm-gnueabihf": { + "version": "13.1.6", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm-gnueabihf/-/swc-linux-arm-gnueabihf-13.1.6.tgz", + "integrity": "sha512-OybkbC58A1wJ+JrJSOjGDvZzrVEQA4sprJejGqMwiZyLqhr9Eo8FXF0y6HL+m1CPCpPhXEHz/2xKoYsl16kNqw==", + "optional": true }, - "@types/node": { - "version": "18.13.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.13.0.tgz", - "integrity": "sha512-gC3TazRzGoOnoKAhUx+Q0t8S9Tzs74z7m0ipwGpSqQrleP14hKxP4/JUeEQcD3W1/aIpnWl8pHowI7WokuZpXg==" + "@next/swc-linux-arm64-gnu": { + "version": "13.1.6", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-13.1.6.tgz", + "integrity": "sha512-yCH+yDr7/4FDuWv6+GiYrPI9kcTAO3y48UmaIbrKy8ZJpi7RehJe3vIBRUmLrLaNDH3rY1rwoHi471NvR5J5NQ==", + "optional": true }, - "@types/normalize-package-data": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz", - "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==" + "@next/swc-linux-arm64-musl": { + "version": "13.1.6", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-13.1.6.tgz", + "integrity": "sha512-ECagB8LGX25P9Mrmlc7Q/TQBb9rGScxHbv/kLqqIWs2fIXy6Y/EiBBiM72NTwuXUFCNrWR4sjUPSooVBJJ3ESQ==", + "optional": true }, - "@types/pbkdf2": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@types/pbkdf2/-/pbkdf2-3.1.0.tgz", - "integrity": "sha512-Cf63Rv7jCQ0LaL8tNXmEyqTHuIJxRdlS5vMh1mj5voN4+QFhVZnlZruezqpWYDiJ8UTzhP0VmeLXCmBk66YrMQ==", - "requires": { - "@types/node": "*" - } + "@next/swc-linux-x64-gnu": { + "version": "13.1.6", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-13.1.6.tgz", + "integrity": "sha512-GT5w2mruk90V/I5g6ScuueE7fqj/d8Bui2qxdw6lFxmuTgMeol5rnzAv4uAoVQgClOUO/MULilzlODg9Ib3Y4Q==", + "optional": true }, - "@types/prop-types": { - "version": "15.7.5", - "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz", - "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==", - "dev": true + "@next/swc-linux-x64-musl": { + "version": "13.1.6", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-13.1.6.tgz", + "integrity": "sha512-keFD6KvwOPzmat4TCnlnuxJCQepPN+8j3Nw876FtULxo8005Y9Ghcl7ACcR8GoiKoddAq8gxNBrpjoxjQRHeAQ==", + "optional": true }, - "@types/react": { - "version": "18.0.28", - "resolved": "https://registry.npmjs.org/@types/react/-/react-18.0.28.tgz", - "integrity": "sha512-RD0ivG1kEztNBdoAK7lekI9M+azSnitIn85h4iOiaLjaTrMjzslhaqCGaI4IyCJ1RljWiLCEu4jyrLLgqxBTew==", - "dev": true, - "requires": { - "@types/prop-types": "*", - "@types/scheduler": "*", - "csstype": "^3.0.2" - } + "@next/swc-win32-arm64-msvc": { + "version": "13.1.6", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-13.1.6.tgz", + "integrity": "sha512-OwertslIiGQluFvHyRDzBCIB07qJjqabAmINlXUYt7/sY7Q7QPE8xVi5beBxX/rxTGPIbtyIe3faBE6Z2KywhQ==", + "optional": true }, - "@types/retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==" + "@next/swc-win32-ia32-msvc": { + "version": "13.1.6", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-13.1.6.tgz", + "integrity": "sha512-g8zowiuP8FxUR9zslPmlju7qYbs2XBtTLVSxVikPtUDQedhcls39uKYLvOOd1JZg0ehyhopobRoH1q+MHlIN/w==", + "optional": true }, - "@types/scheduler": { - "version": "0.16.2", - "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz", - "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==", - "dev": true + "@next/swc-win32-x64-msvc": { + "version": "13.1.6", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-13.1.6.tgz", + "integrity": "sha512-Ls2OL9hi3YlJKGNdKv8k3X/lLgc3VmLG3a/DeTkAd+lAituJp8ZHmRmm9f9SL84fT3CotlzcgbdaCDfFwFA6bA==", + "optional": true }, - "@types/secp256k1": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/@types/secp256k1/-/secp256k1-4.0.3.tgz", - "integrity": "sha512-Da66lEIFeIz9ltsdMZcpQvmrmmoqrfju8pm1BH8WbYjZSwUgCwXLb9C+9XYogwBITnbsSaMdVPb2ekf7TV+03w==", - "requires": { - "@types/node": "*" - } + "@noble/ed25519": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/@noble/ed25519/-/ed25519-1.7.3.tgz", + "integrity": "sha512-iR8GBkDt0Q3GyaVcIu7mSsVIqnFbkbRzGLWlvhwunacoLwt4J3swfKhfaM6rN6WY+TBGoYT1GtT1mIh2/jGbRQ==" }, - "@types/ws": { - "version": "7.4.7", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-7.4.7.tgz", - "integrity": "sha512-JQbbmxZTZehdc2iszGKs5oC3NFnjeay7mtAWrdt7qNtAVK0g19muApzAy4bm9byz79xa2ZnO/BOBC2R8RC5Lww==", - "requires": { - "@types/node": "*" - } + "@noble/hashes": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.2.0.tgz", + "integrity": "sha512-FZfhjEDbT5GRswV3C6uvLPHMiVD6lQBmpoX5+eSiPaMTXte/IKqI5dykDxzZB/WBeK/CDuQRBWarPdi3FNY2zQ==" }, - "@typescript-eslint/parser": { - "version": "5.51.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.51.0.tgz", - "integrity": "sha512-fEV0R9gGmfpDeRzJXn+fGQKcl0inIeYobmmUWijZh9zA7bxJ8clPhV9up2ZQzATxAiFAECqPQyMDB4o4B81AaA==", - "dev": true, - "requires": { - "@typescript-eslint/scope-manager": "5.51.0", - "@typescript-eslint/types": "5.51.0", - "@typescript-eslint/typescript-estree": "5.51.0", - "debug": "^4.3.4" - } + "@noble/secp256k1": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/@noble/secp256k1/-/secp256k1-1.7.1.tgz", + "integrity": "sha512-hOUk6AyBFmqVrv7k5WAw/LpszxVbj9gGN4JRkIX52fdFAj1UA61KXmZDvqVEm+pOyec3+fIeZB02LYa/pWOArw==" }, - "@typescript-eslint/scope-manager": { - "version": "5.51.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.51.0.tgz", - "integrity": "sha512-gNpxRdlx5qw3yaHA0SFuTjW4rxeYhpHxt491PEcKF8Z6zpq0kMhe0Tolxt0qjlojS+/wArSDlj/LtE69xUJphQ==", + "@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", "dev": true, "requires": { - "@typescript-eslint/types": "5.51.0", - "@typescript-eslint/visitor-keys": "5.51.0" + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" } }, - "@typescript-eslint/types": { - "version": "5.51.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.51.0.tgz", - "integrity": "sha512-SqOn0ANn/v6hFn0kjvLwiDi4AzR++CBZz0NV5AnusT2/3y32jdc0G4woXPWHCumWtUXZKPAS27/9vziSsC9jnw==", + "@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", "dev": true }, - "@typescript-eslint/typescript-estree": { - "version": "5.51.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.51.0.tgz", - "integrity": "sha512-TSkNupHvNRkoH9FMA3w7TazVFcBPveAAmb7Sz+kArY6sLT86PA5Vx80cKlYmd8m3Ha2SwofM1KwraF24lM9FvA==", + "@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", "dev": true, "requires": { - "@typescript-eslint/types": "5.51.0", - "@typescript-eslint/visitor-keys": "5.51.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.3.7", - "tsutils": "^3.21.0" - }, - "dependencies": { - "globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "dev": true, - "requires": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" - } - }, - "semver": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", - "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", - "dev": true, - "requires": { - "lru-cache": "^6.0.0" - } - }, - "slash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - "dev": true - } + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" } }, - "@typescript-eslint/visitor-keys": { - "version": "5.51.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.51.0.tgz", - "integrity": "sha512-Oh2+eTdjHjOFjKA27sxESlA87YPSOJafGCR0md5oeMdh1ZcCfAGCIOL216uTBAkAIptvLIfKQhl7lHxMJet4GQ==", + "@panva/hkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@panva/hkdf/-/hkdf-1.0.2.tgz", + "integrity": "sha512-MSAs9t3Go7GUkMhpKC44T58DJ5KGk2vBo+h1cqQeqlMfdGkxaVB78ZWpv9gYi/g2fa4sopag9gJsNvS8XGgWJA==" + }, + "@pkgr/utils": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/@pkgr/utils/-/utils-2.3.1.tgz", + "integrity": "sha512-wfzX8kc1PMyUILA+1Z/EqoE4UCXGy0iRGMhPwdfae1+f0OXlLqCk+By+aMzgJBzR9AzS4CDizioG6Ss1gvAFJw==", "dev": true, "requires": { - "@typescript-eslint/types": "5.51.0", - "eslint-visitor-keys": "^3.3.0" + "cross-spawn": "^7.0.3", + "is-glob": "^4.0.3", + "open": "^8.4.0", + "picocolors": "^1.0.0", + "tiny-glob": "^0.2.9", + "tslib": "^2.4.0" } }, - "@walletconnect/browser-utils": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@walletconnect/browser-utils/-/browser-utils-1.8.0.tgz", - "integrity": "sha512-Wcqqx+wjxIo9fv6eBUFHPsW1y/bGWWRboni5dfD8PtOmrihrEpOCmvRJe4rfl7xgJW8Ea9UqKEaq0bIRLHlK4A==", - "requires": { - "@walletconnect/safe-json": "1.0.0", - "@walletconnect/types": "^1.8.0", - "@walletconnect/window-getters": "1.0.0", - "@walletconnect/window-metadata": "1.0.0", - "detect-browser": "5.2.0" - }, - "dependencies": { - "detect-browser": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/detect-browser/-/detect-browser-5.2.0.tgz", - "integrity": "sha512-tr7XntDAu50BVENgQfajMLzacmSe34D+qZc4zjnniz0ZVuw/TZcLcyxHQjYpJTM36sGEkZZlYLnIM1hH7alTMA==" - } - } + "@popperjs/core": { + "version": "2.11.6", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.6.tgz", + "integrity": "sha512-50/17A98tWUfQ176raKiOGXuYpLyyVMkxxG6oylzL3BPOlA6ADGdK7EYunSa4I064xerltq9TGXs8HmOk5E+vw==" }, - "@walletconnect/client": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@walletconnect/client/-/client-1.8.0.tgz", - "integrity": "sha512-svyBQ14NHx6Cs2j4TpkQaBI/2AF4+LXz64FojTjMtV4VMMhl81jSO1vNeg+yYhQzvjcGH/GpSwixjyCW0xFBOQ==", + "@protobufjs/aspromise": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz", + "integrity": "sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==" + }, + "@protobufjs/base64": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz", + "integrity": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==" + }, + "@protobufjs/codegen": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.4.tgz", + "integrity": "sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==" + }, + "@protobufjs/eventemitter": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz", + "integrity": "sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q==" + }, + "@protobufjs/fetch": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/fetch/-/fetch-1.1.0.tgz", + "integrity": "sha512-lljVXpqXebpsijW71PZaCYeIcE5on1w5DlQy5WH6GLbFryLUrBD4932W/E2BSpfRJWseIL4v/KPgBFxDOIdKpQ==", "requires": { - "@walletconnect/core": "^1.8.0", - "@walletconnect/iso-crypto": "^1.8.0", - "@walletconnect/types": "^1.8.0", - "@walletconnect/utils": "^1.8.0" + "@protobufjs/aspromise": "^1.1.1", + "@protobufjs/inquire": "^1.1.0" } }, - "@walletconnect/core": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@walletconnect/core/-/core-1.8.0.tgz", - "integrity": "sha512-aFTHvEEbXcZ8XdWBw6rpQDte41Rxwnuk3SgTD8/iKGSRTni50gI9S3YEzMj05jozSiOBxQci4pJDMVhIUMtarw==", + "@protobufjs/float": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@protobufjs/float/-/float-1.0.2.tgz", + "integrity": "sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ==" + }, + "@protobufjs/inquire": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/inquire/-/inquire-1.1.0.tgz", + "integrity": "sha512-kdSefcPdruJiFMVSbn801t4vFK7KB/5gd2fYvrxhuJYg8ILrmn9SKSX2tZdV6V+ksulWqS7aXjBcRXl3wHoD9Q==" + }, + "@protobufjs/path": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@protobufjs/path/-/path-1.1.2.tgz", + "integrity": "sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA==" + }, + "@protobufjs/pool": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz", + "integrity": "sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw==" + }, + "@protobufjs/utf8": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz", + "integrity": "sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==" + }, + "@remix-run/router": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@remix-run/router/-/router-1.3.2.tgz", + "integrity": "sha512-t54ONhl/h75X94SWsHGQ4G/ZrCEguKSRQr7DrjTciJXW0YU1QhlwYeycvK5JgkzlxmvrK7wq1NB/PLtHxoiDcA==" + }, + "@rushstack/eslint-patch": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.2.0.tgz", + "integrity": "sha512-sXo/qW2/pAcmT43VoRKOJbDOfV3cYpq3szSVfIThQXNt+E4DfKj361vaAt3c88U5tPUxzEswam7GW48PJqtKAg==", + "dev": true + }, + "@socket.io/component-emitter": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.1.0.tgz", + "integrity": "sha512-+9jVqKhRSpsc591z5vX+X5Yyw+he/HCB4iQ/RYxw35CEPaY1gnsNE43nf9n9AaYjAQrTiI/mOwKUKdUs9vf7Xg==" + }, + "@solana/buffer-layout": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/@solana/buffer-layout/-/buffer-layout-4.0.1.tgz", + "integrity": "sha512-E1ImOIAD1tBZFRdjeM4/pzTiTApC0AOBGwyAMS4fwIodCWArzJ3DWdoh8cKxeFM2fElkxBh2Aqts1BPC373rHA==", "requires": { - "@walletconnect/socket-transport": "^1.8.0", - "@walletconnect/types": "^1.8.0", - "@walletconnect/utils": "^1.8.0" + "buffer": "~6.0.3" } }, - "@walletconnect/crypto": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@walletconnect/crypto/-/crypto-1.0.3.tgz", - "integrity": "sha512-+2jdORD7XQs76I2Odgr3wwrtyuLUXD/kprNVsjWRhhhdO9Mt6WqVzOPu0/t7OHSmgal8k7SoBQzUc5hu/8zL/g==", + "@solana/web3.js": { + "version": "1.73.2", + "resolved": "https://registry.npmjs.org/@solana/web3.js/-/web3.js-1.73.2.tgz", + "integrity": "sha512-9WACF8W4Nstj7xiDw3Oom22QmrhBh0VyZyZ7JvvG3gOxLWLlX3hvm5nPVJOGcCE/9fFavBbCUb5A6CIuvMGdoA==", "requires": { - "@walletconnect/encoding": "^1.0.2", - "@walletconnect/environment": "^1.0.1", - "@walletconnect/randombytes": "^1.0.3", - "aes-js": "^3.1.2", - "hash.js": "^1.1.7", - "tslib": "1.14.1" + "@babel/runtime": "^7.12.5", + "@noble/ed25519": "^1.7.0", + "@noble/hashes": "^1.1.2", + "@noble/secp256k1": "^1.6.3", + "@solana/buffer-layout": "^4.0.0", + "agentkeepalive": "^4.2.1", + "bigint-buffer": "^1.1.5", + "bn.js": "^5.0.0", + "borsh": "^0.7.0", + "bs58": "^4.0.1", + "buffer": "6.0.1", + "fast-stable-stringify": "^1.0.0", + "jayson": "^3.4.4", + "node-fetch": "2", + "rpc-websockets": "^7.5.0", + "superstruct": "^0.14.2" }, "dependencies": { - "aes-js": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/aes-js/-/aes-js-3.1.2.tgz", - "integrity": "sha512-e5pEa2kBnBOgR4Y/p20pskXI74UEz7de8ZGVo58asOtvSVG5YAbJeELPZxOmt+Bnz3rX753YKhfIn4X4l1PPRQ==" + "base-x": { + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.9.tgz", + "integrity": "sha512-H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ==", + "requires": { + "safe-buffer": "^5.0.1" + } }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + "bs58": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", + "integrity": "sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==", + "requires": { + "base-x": "^3.0.2" + } + }, + "buffer": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.1.tgz", + "integrity": "sha512-rVAXBwEcEoYtxnHSO5iWyhzV/O1WMtkUYWlfdLS7FjU4PnSJJHEfHXi/uHPI5EwltmOA794gN3bm3/pzuctWjQ==", + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } } } }, - "@walletconnect/encoding": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@walletconnect/encoding/-/encoding-1.0.2.tgz", - "integrity": "sha512-CrwSBrjqJ7rpGQcTL3kU+Ief+Bcuu9PH6JLOb+wM6NITX1GTxR/MfNwnQfhLKK6xpRAyj2/nM04OOH6wS8Imag==", + "@swc/helpers": { + "version": "0.4.14", + "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.4.14.tgz", + "integrity": "sha512-4C7nX/dvpzB7za4Ql9K81xK3HPxCpHMgwTZVyf+9JQ6VUbn9jjZVN7/Nkdz/Ugzs2CSjqnL/UPXroiVBVHUWUw==", "requires": { - "is-typedarray": "1.0.0", - "tslib": "1.14.1", - "typedarray-to-buffer": "3.1.5" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - } + "tslib": "^2.4.0" } }, - "@walletconnect/environment": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@walletconnect/environment/-/environment-1.0.1.tgz", - "integrity": "sha512-T426LLZtHj8e8rYnKfzsw1aG6+M0BT1ZxayMdv/p8yM0MU+eJDISqNY3/bccxRr4LrF9csq02Rhqt08Ibl0VRg==", + "@toruslabs/base-controllers": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/@toruslabs/base-controllers/-/base-controllers-2.7.0.tgz", + "integrity": "sha512-K/cw34TZdKX6vfWcRJaka/IyucOuVLc5LcJubRLGCsO/yk86hnMUG1fYlVfQyy8fVXWERZe0d9yyyVAsnxDAww==", "requires": { - "tslib": "1.14.1" + "@toruslabs/broadcast-channel": "^6.1.1", + "@toruslabs/http-helpers": "^3.2.0", + "@toruslabs/openlogin-jrpc": "^3.0.0", + "async-mutex": "^0.4.0", + "bignumber.js": "^9.1.1", + "bowser": "^2.11.0", + "eth-rpc-errors": "^4.0.3", + "ethereumjs-util": "^7.1.5", + "json-rpc-random-id": "^1.0.1", + "lodash": "^4.17.21", + "loglevel": "^1.8.1" }, "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + "@toruslabs/openlogin-jrpc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@toruslabs/openlogin-jrpc/-/openlogin-jrpc-3.0.0.tgz", + "integrity": "sha512-EbrPxx9JJDzTGPRGhpnoqngrwVRgNxwY86f6Vp4hCJnZNn/IgNz39KGROEi8SDNWADYuT29d8gyZ5Y0o79TOMA==", + "requires": { + "@toruslabs/openlogin-utils": "^3.0.0", + "end-of-stream": "^1.4.4", + "eth-rpc-errors": "^4.0.3", + "events": "^3.3.0", + "fast-safe-stringify": "^2.1.1", + "once": "^1.4.0", + "pump": "^3.0.0", + "readable-stream": "^3.6.0" + } + }, + "@toruslabs/openlogin-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@toruslabs/openlogin-utils/-/openlogin-utils-3.0.0.tgz", + "integrity": "sha512-T5t29/AIFqXc84x4OoAkZWjd0uoP2Lk6iaFndnIIMzCPu+BwwV0spX/jd/3YYNjZ8Po8D+faEnwAhiqemYeK2w==", + "requires": { + "base64url": "^3.0.1", + "keccak": "^3.0.3", + "randombytes": "^2.1.0" + } } } }, - "@walletconnect/http-connection": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@walletconnect/http-connection/-/http-connection-1.8.0.tgz", - "integrity": "sha512-IziEr3c53qsMromK7jz0EkbKDHlryRbxXdFR+xaG+S5nfxtUdAfjzlZabvczXdDCgmTij6KbNsZAjBMqCBzACw==", + "@toruslabs/broadcast-channel": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/@toruslabs/broadcast-channel/-/broadcast-channel-6.1.1.tgz", + "integrity": "sha512-FapnmyPLpqfrdbfyawlReRpluEKQ2riqCNOOZQz9KHPF8a/XsgYi/UAdrR02k6BHaZYyV6D52Oji1gM6CPj6EQ==", "requires": { - "@walletconnect/types": "^1.8.0", - "@walletconnect/utils": "^1.8.0", - "eventemitter3": "4.0.7", - "xhr2-cookies": "1.1.0" + "@babel/runtime": "^7.19.4", + "@toruslabs/eccrypto": "^1.1.8", + "@toruslabs/metadata-helpers": "^3.0.0", + "bowser": "^2.11.0", + "keccak": "^3.0.2", + "loglevel": "^1.8.0", + "oblivious-set": "1.1.1", + "socket.io-client": "^4.5.3", + "unload": "^2.3.1" } }, - "@walletconnect/iso-crypto": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@walletconnect/iso-crypto/-/iso-crypto-1.8.0.tgz", - "integrity": "sha512-pWy19KCyitpfXb70hA73r9FcvklS+FvO9QUIttp3c2mfW8frxgYeRXfxLRCIQTkaYueRKvdqPjbyhPLam508XQ==", + "@toruslabs/eccrypto": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/@toruslabs/eccrypto/-/eccrypto-1.1.8.tgz", + "integrity": "sha512-5dIrO2KVqvnAPOPfJ2m6bnjp9vav9GIcCZXiXRW/bJuIDRLVxJhVvRlleF4oaEZPq5yX5piHq5jVHagNNS0jOQ==", "requires": { - "@walletconnect/crypto": "^1.0.2", - "@walletconnect/types": "^1.8.0", - "@walletconnect/utils": "^1.8.0" - } - }, - "@walletconnect/jsonrpc-types": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-types/-/jsonrpc-types-1.0.2.tgz", - "integrity": "sha512-CZe8tjJX73OWdHjrBHy7HtAapJ2tT0Q3TYhPBhRxi3643lwPIQWC9En45ldY14TZwgSewkbZ0FtGBZK0G7Bbyg==", - "requires": { - "keyvaluestorage-interface": "^1.0.0", - "tslib": "1.14.1" + "acorn": "^8.4.1", + "elliptic": "^6.5.4", + "es6-promise": "^4.2.8", + "nan": "^2.14.2", + "secp256k1": "^3.8.0" }, "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==", + "optional": true + }, + "secp256k1": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-3.8.0.tgz", + "integrity": "sha512-k5ke5avRZbtl9Tqx/SA7CbY3NF6Ro+Sj9cZxezFzuBlLDmyqPiL8hJJ+EmzD8Ig4LUDByHJ3/iPOVoRixs/hmw==", + "optional": true, + "requires": { + "bindings": "^1.5.0", + "bip66": "^1.1.5", + "bn.js": "^4.11.8", + "create-hash": "^1.2.0", + "drbg.js": "^1.0.1", + "elliptic": "^6.5.2", + "nan": "^2.14.0", + "safe-buffer": "^5.1.2" + } } } }, - "@walletconnect/jsonrpc-utils": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-utils/-/jsonrpc-utils-1.0.4.tgz", - "integrity": "sha512-y0+tDxcTZ9BHBBKBJbjZxLUXb+zQZCylf7y/jTvDPNx76J0hYYc+F9zHzyqBLeorSKepLTk6yI8hw3NXbAQB3g==", + "@toruslabs/http-helpers": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@toruslabs/http-helpers/-/http-helpers-3.2.0.tgz", + "integrity": "sha512-fCfvBHfYzd7AyOYlBo7wihh5nj6+4Ik6V5+nI7H63oiKICjMlByTXSauTUa/qm2mjZJn/OmVYeV5guPIgxoW1w==", "requires": { - "@walletconnect/environment": "^1.0.1", - "@walletconnect/jsonrpc-types": "^1.0.2", - "tslib": "1.14.1" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - } + "lodash.merge": "^4.6.2", + "loglevel": "^1.8.0" } }, - "@walletconnect/mobile-registry": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@walletconnect/mobile-registry/-/mobile-registry-1.4.0.tgz", - "integrity": "sha512-ZtKRio4uCZ1JUF7LIdecmZt7FOLnX72RPSY7aUVu7mj7CSfxDwUn6gBuK6WGtH+NZCldBqDl5DenI5fFSvkKYw==" - }, - "@walletconnect/qrcode-modal": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@walletconnect/qrcode-modal/-/qrcode-modal-1.8.0.tgz", - "integrity": "sha512-BueaFefaAi8mawE45eUtztg3ZFbsAH4DDXh1UNwdUlsvFMjqcYzLUG0xZvDd6z2eOpbgDg2N3bl6gF0KONj1dg==", + "@toruslabs/metadata-helpers": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@toruslabs/metadata-helpers/-/metadata-helpers-3.0.0.tgz", + "integrity": "sha512-0eWCIbKpaBx3/z3BDyWebxUisCS37Uxb0zxOEWizSXjGH/T6TJCrBeZFPmANN3hq47GoNCsRiku9cgfij1UMTQ==", "requires": { - "@walletconnect/browser-utils": "^1.8.0", - "@walletconnect/mobile-registry": "^1.4.0", - "@walletconnect/types": "^1.8.0", - "copy-to-clipboard": "^3.3.1", - "preact": "10.4.1", - "qrcode": "1.4.4" - }, - "dependencies": { - "preact": { - "version": "10.4.1", - "resolved": "https://registry.npmjs.org/preact/-/preact-10.4.1.tgz", - "integrity": "sha512-WKrRpCSwL2t3tpOOGhf2WfTpcmbpxaWtDbdJdKdjd0aEiTkvOmS4NBkG6kzlaAHI9AkQ3iVqbFWM3Ei7mZ4o1Q==" - } + "@toruslabs/eccrypto": "^1.1.8", + "@toruslabs/http-helpers": "^3.0.0", + "elliptic": "^6.5.4", + "json-stable-stringify": "^1.0.1", + "keccak": "^3.0.2" } }, - "@walletconnect/randombytes": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/@walletconnect/randombytes/-/randombytes-1.0.3.tgz", - "integrity": "sha512-35lpzxcHFbTN3ABefC9W+uBpNZl1GC4Wpx0ed30gibfO/y9oLdy1NznbV96HARQKSBV9J9M/rrtIvf6a23jfYw==", + "@toruslabs/openlogin": { + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/@toruslabs/openlogin/-/openlogin-2.13.0.tgz", + "integrity": "sha512-tB9v7hYr+W2PnbQk7NQqzDN48VzbLcwlL8ZsMBE/HTO2sTVfFisq+Phj33kIro9FwLoZHzhvg45QbROEZTVtFw==", "requires": { - "@walletconnect/encoding": "^1.0.2", - "@walletconnect/environment": "^1.0.1", - "randombytes": "^2.1.0", - "tslib": "1.14.1" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - } + "@toruslabs/eccrypto": "^1.1.8", + "@toruslabs/http-helpers": "^3.2.0", + "@toruslabs/openlogin-jrpc": "^2.13.0", + "@toruslabs/openlogin-utils": "^2.13.0", + "lodash.merge": "^4.6.2", + "loglevel": "^1.8.1", + "pump": "^3.0.0" } }, - "@walletconnect/safe-json": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@walletconnect/safe-json/-/safe-json-1.0.0.tgz", - "integrity": "sha512-QJzp/S/86sUAgWY6eh5MKYmSfZaRpIlmCJdi5uG4DJlKkZrHEF7ye7gA+VtbVzvTtpM/gRwO2plQuiooIeXjfg==" + "@toruslabs/openlogin-ed25519": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@toruslabs/openlogin-ed25519/-/openlogin-ed25519-2.0.0.tgz", + "integrity": "sha512-gz00QpMHbSVaZFKATxbsCbtO2uRyF7xIvetuzOCfbfcjkTz0Wonr/8B44uiIDe4j2ddv4Hx8HvnBikFDLQQrZA==", + "requires": { + "@toruslabs/tweetnacl-js": "^1.0.3" + } }, - "@walletconnect/socket-transport": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@walletconnect/socket-transport/-/socket-transport-1.8.0.tgz", - "integrity": "sha512-5DyIyWrzHXTcVp0Vd93zJ5XMW61iDM6bcWT4p8DTRfFsOtW46JquruMhxOLeCOieM4D73kcr3U7WtyR4JUsGuQ==", + "@toruslabs/openlogin-jrpc": { + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/@toruslabs/openlogin-jrpc/-/openlogin-jrpc-2.13.0.tgz", + "integrity": "sha512-TEg50/84xSocHLb3MEtw0DaIa+bXU66TJJjjDrqGPjoRo97fn8F8jDW2AcVV+eug39xpfxPIw1FFdCtgunmz7w==", "requires": { - "@walletconnect/types": "^1.8.0", - "@walletconnect/utils": "^1.8.0", - "ws": "7.5.3" - }, - "dependencies": { - "ws": { - "version": "7.5.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.3.tgz", - "integrity": "sha512-kQ/dHIzuLrS6Je9+uv81ueZomEwH0qVYstcAQ4/Z93K8zeko9gtAbttJWzoC5ukqXY1PpoouV3+VSOqEAFt5wg==", - "requires": {} - } + "@toruslabs/openlogin-utils": "^2.13.0", + "end-of-stream": "^1.4.4", + "eth-rpc-errors": "^4.0.3", + "events": "^3.3.0", + "fast-safe-stringify": "^2.1.1", + "once": "^1.4.0", + "pump": "^3.0.0", + "readable-stream": "^3.6.0" } }, - "@walletconnect/types": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@walletconnect/types/-/types-1.8.0.tgz", - "integrity": "sha512-Cn+3I0V0vT9ghMuzh1KzZvCkiAxTq+1TR2eSqw5E5AVWfmCtECFkVZBP6uUJZ8YjwLqXheI+rnjqPy7sVM4Fyg==" + "@toruslabs/openlogin-utils": { + "version": "2.13.0", + "resolved": "https://registry.npmjs.org/@toruslabs/openlogin-utils/-/openlogin-utils-2.13.0.tgz", + "integrity": "sha512-g4pj6hIdKcuyetVsUWqiAJmCooTS9hOADL31m7LTqgdXzX9oR437A+c8Dw8gzFVcHmkK16Yt2//GvlKnSsGILg==", + "requires": { + "base64url": "^3.0.1", + "keccak": "^3.0.3", + "randombytes": "^2.1.0" + } }, - "@walletconnect/utils": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@walletconnect/utils/-/utils-1.8.0.tgz", - "integrity": "sha512-zExzp8Mj1YiAIBfKNm5u622oNw44WOESzo6hj+Q3apSMIb0Jph9X3GDIdbZmvVZsNPxWDL7uodKgZcCInZv2vA==", + "@toruslabs/solana-embed": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@toruslabs/solana-embed/-/solana-embed-0.3.3.tgz", + "integrity": "sha512-Edw0p1oNNG+fk+3XIZZiIiwdi75lgtOpCjIK7G7PbR3ygJPVgM7e6L0MCOVNkX0LSJTc5HJFi9E0MiAf4cG7UQ==", "requires": { - "@walletconnect/browser-utils": "^1.8.0", - "@walletconnect/encoding": "^1.0.1", - "@walletconnect/jsonrpc-utils": "^1.0.3", - "@walletconnect/types": "^1.8.0", - "bn.js": "4.11.8", - "js-sha3": "0.8.0", - "query-string": "6.13.5" - }, - "dependencies": { - "bn.js": { - "version": "4.11.8", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", - "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" - } + "@solana/web3.js": "^1.63.1", + "@toruslabs/base-controllers": "^2.2.6", + "@toruslabs/http-helpers": "^3.2.0", + "@toruslabs/openlogin-jrpc": "^2.6.0", + "eth-rpc-errors": "^4.0.3", + "fast-deep-equal": "^3.1.3", + "is-stream": "^2.0.1", + "lodash-es": "^4.17.21", + "loglevel": "^1.8.0", + "pump": "^3.0.0" } }, - "@walletconnect/web3-provider": { - "version": "1.8.0", - "resolved": "https://registry.npmjs.org/@walletconnect/web3-provider/-/web3-provider-1.8.0.tgz", - "integrity": "sha512-lqqEO0oRmCehH+c8ZPk3iH7I7YtbzmkWd58/Or2AgWAl869JamzndKCD3sTlNsPRQLxxPpraHQqzur7uclLWvg==", + "@toruslabs/torus-embed": { + "version": "1.38.9", + "resolved": "https://registry.npmjs.org/@toruslabs/torus-embed/-/torus-embed-1.38.9.tgz", + "integrity": "sha512-8aQrtRgYvDyj9dbNLGJtExrQ3NMDsNo7CrNXclChaTh48dkKmwaqs19LMZ30lHo5hpKKHfbF2rAzk2o/ylt/2g==", "requires": { - "@walletconnect/client": "^1.8.0", - "@walletconnect/http-connection": "^1.8.0", - "@walletconnect/qrcode-modal": "^1.8.0", - "@walletconnect/types": "^1.8.0", - "@walletconnect/utils": "^1.8.0", - "web3-provider-engine": "16.0.1" + "@metamask/obs-store": "^7.0.0", + "@toruslabs/http-helpers": "^3.2.0", + "@toruslabs/openlogin-jrpc": "^2.6.0", + "create-hash": "^1.2.0", + "end-of-stream": "^1.4.4", + "eth-rpc-errors": "^4.0.3", + "events": "^3.3.0", + "fast-deep-equal": "^3.1.3", + "is-stream": "^2.0.1", + "lodash.merge": "^4.6.2", + "loglevel": "^1.8.0", + "once": "^1.4.0", + "pump": "^3.0.0" } }, - "@walletconnect/window-getters": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@walletconnect/window-getters/-/window-getters-1.0.0.tgz", - "integrity": "sha512-xB0SQsLaleIYIkSsl43vm8EwETpBzJ2gnzk7e0wMF3ktqiTGS6TFHxcprMl5R44KKh4tCcHCJwolMCaDSwtAaA==" + "@toruslabs/tweetnacl-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@toruslabs/tweetnacl-js/-/tweetnacl-js-1.0.3.tgz", + "integrity": "sha512-WQJYMTR/bkqvpk3DWOqRt5e24RhwJp9PXUoSj4zSthd3+fDhKYCI56YVMPNDKah1fCffOe9F3m8iZ5SgDZ+Csw==" }, - "@walletconnect/window-metadata": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@walletconnect/window-metadata/-/window-metadata-1.0.0.tgz", - "integrity": "sha512-9eFvmJxIKCC3YWOL97SgRkKhlyGXkrHwamfechmqszbypFspaSk+t2jQXAEU7YClHF6Qjw5eYOmy1//zFi9/GA==", + "@types/bn.js": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-5.1.1.tgz", + "integrity": "sha512-qNrYbZqMx0uJAfKnKclPh+dTwK33KfLHYqtyODwd5HnXOjnkhc4qgn3BrK6RWyGZm5+sIFE7Q7Vz6QQtJB7w7g==", "requires": { - "@walletconnect/window-getters": "^1.0.0" + "@types/node": "*" } }, - "@web-std/blob": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@web-std/blob/-/blob-3.0.4.tgz", - "integrity": "sha512-+dibyiw+uHYK4dX5cJ7HA+gtDAaUUe6JsOryp2ZpAC7h4ICsh49E34JwHoEKPlPvP0llCrNzz45vvD+xX5QDBg==", + "@types/connect": { + "version": "3.4.35", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", + "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==", "requires": { - "@web-std/stream": "1.0.0", - "web-encoding": "1.1.5" + "@types/node": "*" } }, - "@web-std/fetch": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@web-std/fetch/-/fetch-3.0.3.tgz", - "integrity": "sha512-PtaKr6qvw2AmKChugzhQWuTa12dpbogHRBxwcleAZ35UhWucnfD4N+g3f7qYK2OeioSWTK3yMf6n/kOOfqxHaQ==", + "@types/eslint": { + "version": "8.21.0", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.21.0.tgz", + "integrity": "sha512-35EhHNOXgxnUgh4XCJsGhE7zdlDhYDN/aMG6UbkByCFFNgQ7b3U+uVoqBpicFydR8JEfgdjCF7SJ7MiJfzuiTA==", + "peer": true, "requires": { - "@web-std/blob": "^3.0.3", - "@web-std/form-data": "^3.0.2", - "@web3-storage/multipart-parser": "^1.0.0", - "data-uri-to-buffer": "^3.0.1" + "@types/estree": "*", + "@types/json-schema": "*" } }, - "@web-std/file": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@web-std/file/-/file-3.0.2.tgz", - "integrity": "sha512-pIH0uuZsmY8YFvSHP1NsBIiMT/1ce0suPrX74fEeO3Wbr1+rW0fUGEe4d0R99iLwXtyCwyserqCFI4BJkJlkRA==", + "@types/eslint-scope": { + "version": "3.7.4", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.4.tgz", + "integrity": "sha512-9K4zoImiZc3HlIp6AVUDE4CWYx22a+lhSZMYNpbjW04+YF0KWj4pJXnEMjdnFTiQibFFmElcsasJXDbdI/EPhA==", + "peer": true, "requires": { - "@web-std/blob": "^3.0.3" + "@types/eslint": "*", + "@types/estree": "*" } }, - "@web-std/form-data": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/@web-std/form-data/-/form-data-3.0.2.tgz", - "integrity": "sha512-rhc8IRw66sJ0FHcnC84kT3mTN6eACTuNftkt1XSl1Ef6WRKq4Pz65xixxqZymAZl1K3USpwhLci4SKNn4PYxWQ==", - "requires": { - "web-encoding": "1.1.5" - } + "@types/estree": { + "version": "0.0.51", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.51.tgz", + "integrity": "sha512-CuPgU6f3eT/XgKKPqKd/gLZV1Xmvf1a2R5POBOGQa6uv82xpls89HU5zKeVoyR8XzHd1RGNOlQlvUe3CFkjWNQ==", + "peer": true }, - "@web-std/stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@web-std/stream/-/stream-1.0.0.tgz", - "integrity": "sha512-jyIbdVl+0ZJyKGTV0Ohb9E6UnxP+t7ZzX4Do3AHjZKxUXKMs9EmqnBDQgHF7bEw0EzbQygOjtt/7gvtmi//iCQ==", - "requires": { - "web-streams-polyfill": "^3.1.1" - } + "@types/json-schema": { + "version": "7.0.11", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.11.tgz", + "integrity": "sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ==", + "peer": true }, - "@web3-storage/multipart-parser": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@web3-storage/multipart-parser/-/multipart-parser-1.0.0.tgz", - "integrity": "sha512-BEO6al7BYqcnfX15W2cnGR+Q566ACXAT9UQykORCWW80lmkpWsnEob6zJS1ZVBKsSJC8+7vJkHwlp+lXG1UCdw==" + "@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==", + "dev": true }, - "@web3-storage/parse-link-header": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@web3-storage/parse-link-header/-/parse-link-header-3.1.0.tgz", - "integrity": "sha512-K1undnK70vLLauqdE8bq/l98isTF2FDhcP0UPpXVSjkSWe3xhAn5eRXk5jfA1E5ycNm84Ws/rQFUD7ue11nciw==" + "@types/long": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.2.tgz", + "integrity": "sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA==" }, - "@web3auth/base": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@web3auth/base/-/base-2.1.3.tgz", - "integrity": "sha512-4/ECf/BCLLp+pBLtDcYV0ImyKtjzZK0IOad7Wgs4UQedy1Lxdv8N9FxJULvQ8xXsl5wCxIE/kxJtP2HbEvWf9g==", - "requires": { - "@toruslabs/http-helpers": "^3.2.0", - "@toruslabs/openlogin-jrpc": "^2.6.0", - "jwt-decode": "^3.1.2", - "loglevel": "^1.8.0", - "ts-custom-error": "^3.2.2" - } + "@types/minimatch": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz", + "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==" }, - "@web3auth/base-evm-adapter": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@web3auth/base-evm-adapter/-/base-evm-adapter-2.1.3.tgz", - "integrity": "sha512-+W5qzGphp6akjPdHhgVTc9y6nvcsJKT+xZFC6tIuzB/MF6GOWC5ixgWDgq/qZhiEOIx/dyllKdQSSX7saP+PdQ==", - "requires": { - "@web3auth/base": "^2.1.3" - } + "@types/minimist": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.2.tgz", + "integrity": "sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==" }, - "@web3auth/base-plugin": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@web3auth/base-plugin/-/base-plugin-2.1.3.tgz", - "integrity": "sha512-RxenKk+27PK3gPQmnLKv6XfGvkgPq5D5ol2q+UfuipxF9bMiMO/9/DirsXhtvgkre6O5ksSUvmW/x/N+N4dK8A==", - "requires": { - "@web3auth/base": "^2.1.3" - } + "@types/node": { + "version": "18.13.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.13.0.tgz", + "integrity": "sha512-gC3TazRzGoOnoKAhUx+Q0t8S9Tzs74z7m0ipwGpSqQrleP14hKxP4/JUeEQcD3W1/aIpnWl8pHowI7WokuZpXg==" }, - "@web3auth/base-provider": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@web3auth/base-provider/-/base-provider-2.1.3.tgz", - "integrity": "sha512-lfbB7eKciQG/EvrP4GOtqmfVISNit4IeADpBSZN3kXN/CgkyfrB0RyuoV6B+/JnWiqxdK0AvdX1ccDLuCZRbNw==", - "requires": { - "@toruslabs/base-controllers": "^2.2.6", - "@toruslabs/openlogin-jrpc": "^2.6.0", - "@web3auth/base": "^2.1.3", - "eth-rpc-errors": "^4.0.3", - "json-rpc-random-id": "^1.0.1" - } + "@types/normalize-package-data": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz", + "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==" }, - "@web3auth/base-solana-adapter": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@web3auth/base-solana-adapter/-/base-solana-adapter-2.1.3.tgz", - "integrity": "sha512-N7eF7hwZ3AGEG0sIzpNFy91p7WBOiLzJSRKMkMJyIezJlgCCsb10D8PL/rr4wgs5PLKlv1srXMm/bLbvcINNZQ==", + "@types/pbkdf2": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@types/pbkdf2/-/pbkdf2-3.1.0.tgz", + "integrity": "sha512-Cf63Rv7jCQ0LaL8tNXmEyqTHuIJxRdlS5vMh1mj5voN4+QFhVZnlZruezqpWYDiJ8UTzhP0VmeLXCmBk66YrMQ==", "requires": { - "@web3auth/base": "^2.1.3", - "bs58": "^5.0.0" + "@types/node": "*" } }, - "@web3auth/core": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@web3auth/core/-/core-2.1.3.tgz", - "integrity": "sha512-H2lpOSGGecgaKiFddNmMNknqUulijJM9Phq1AN+K0bF2UH0kfcawTyxzNwtoy48QXqOT3PMDFLsF54MOfLK2AA==", + "@types/prop-types": { + "version": "15.7.5", + "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.5.tgz", + "integrity": "sha512-JCB8C6SnDoQf0cNycqd/35A7MjcnK+ZTqE7judS6o7utxUCg6imJg3QK2qzHKszlTjcj2cn+NwMB2i96ubpj7w==", + "dev": true + }, + "@types/react": { + "version": "18.0.28", + "resolved": "https://registry.npmjs.org/@types/react/-/react-18.0.28.tgz", + "integrity": "sha512-RD0ivG1kEztNBdoAK7lekI9M+azSnitIn85h4iOiaLjaTrMjzslhaqCGaI4IyCJ1RljWiLCEu4jyrLLgqxBTew==", + "dev": true, "requires": { - "@toruslabs/openlogin-jrpc": "^2.6.0", - "@web3auth/base": "^2.1.3", - "@web3auth/base-plugin": "^2.1.3" + "@types/prop-types": "*", + "@types/scheduler": "*", + "csstype": "^3.0.2" } }, - "@web3auth/ethereum-provider": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@web3auth/ethereum-provider/-/ethereum-provider-2.1.3.tgz", - "integrity": "sha512-mB1knLMwCRbyBlQC2r+jY8GjUAHpJr3rHjLNraL051CFAKAmnj8QTKzaA206iGcZTSZ0dgLG7K/2+7hWSON6Vw==", + "@types/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==" + }, + "@types/scheduler": { + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz", + "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==", + "dev": true + }, + "@types/secp256k1": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/@types/secp256k1/-/secp256k1-4.0.3.tgz", + "integrity": "sha512-Da66lEIFeIz9ltsdMZcpQvmrmmoqrfju8pm1BH8WbYjZSwUgCwXLb9C+9XYogwBITnbsSaMdVPb2ekf7TV+03w==", "requires": { - "@ethereumjs/common": "^2.6.5", - "@ethereumjs/tx": "^3.5.2", - "@metamask/eth-sig-util": "^4.0.1", - "@toruslabs/base-controllers": "^2.2.6", - "@toruslabs/http-helpers": "^3.2.0", - "@toruslabs/openlogin-jrpc": "^2.6.0", - "@walletconnect/types": "~1.8.0", - "@web3auth/base": "^2.1.3", - "@web3auth/base-provider": "^2.1.3", - "assert": "^2.0.0", - "bignumber.js": "^9.1.0", - "eth-rpc-errors": "^4.0.3", - "ethereumjs-util": "^7.1.5", - "jsonschema": "^1.4.1" + "@types/node": "*" } }, - "@web3auth/metamask-adapter": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@web3auth/metamask-adapter/-/metamask-adapter-2.1.3.tgz", - "integrity": "sha512-Sy8pQDkHzHvdCJyTkee5ujCMvU8bHjG7AheFgLeqAB2fB2G01mvpOc38ARjOrXGnIsRSebNuadiI3kcT3Xl4JQ==", + "@types/ws": { + "version": "7.4.7", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-7.4.7.tgz", + "integrity": "sha512-JQbbmxZTZehdc2iszGKs5oC3NFnjeay7mtAWrdt7qNtAVK0g19muApzAy4bm9byz79xa2ZnO/BOBC2R8RC5Lww==", "requires": { - "@metamask/detect-provider": "^1.2.0", - "@web3auth/base": "^2.1.3", - "@web3auth/base-evm-adapter": "^2.1.3" + "@types/node": "*" } }, - "@web3auth/openlogin-adapter": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@web3auth/openlogin-adapter/-/openlogin-adapter-2.1.3.tgz", - "integrity": "sha512-c7bVecadoKpsGfBBvxtAC1bI9RER9HCgl7MgC+MMrZEg2luPN1ks1equG8CDl4VoBTS14aOOiGCfbjFXM1qW7g==", + "@typescript-eslint/parser": { + "version": "5.51.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.51.0.tgz", + "integrity": "sha512-fEV0R9gGmfpDeRzJXn+fGQKcl0inIeYobmmUWijZh9zA7bxJ8clPhV9up2ZQzATxAiFAECqPQyMDB4o4B81AaA==", + "dev": true, "requires": { - "@toruslabs/openlogin": "^2.6.1", - "@toruslabs/openlogin-ed25519": "^2.0.0", - "@web3auth/base": "^2.1.3", - "@web3auth/base-provider": "^2.1.3", - "@web3auth/ethereum-provider": "^2.1.3", - "@web3auth/solana-provider": "^2.1.3", - "lodash.merge": "^4.6.2" + "@typescript-eslint/scope-manager": "5.51.0", + "@typescript-eslint/types": "5.51.0", + "@typescript-eslint/typescript-estree": "5.51.0", + "debug": "^4.3.4" } }, - "@web3auth/phantom-adapter": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@web3auth/phantom-adapter/-/phantom-adapter-2.1.3.tgz", - "integrity": "sha512-9l9KFdonXCIoaYsDB1etMxe+2oyKucnDyotksgJDHIrONMzABxJS1FMZrwpOGUZUXbWY+e6VQFCbmttzch1uLA==", + "@typescript-eslint/scope-manager": { + "version": "5.51.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.51.0.tgz", + "integrity": "sha512-gNpxRdlx5qw3yaHA0SFuTjW4rxeYhpHxt491PEcKF8Z6zpq0kMhe0Tolxt0qjlojS+/wArSDlj/LtE69xUJphQ==", + "dev": true, "requires": { - "@web3auth/base": "^2.1.3", - "@web3auth/base-provider": "^2.1.3", - "@web3auth/base-solana-adapter": "^2.1.3", - "@web3auth/solana-provider": "^2.1.3", - "bn.js": "^5.2.1" + "@typescript-eslint/types": "5.51.0", + "@typescript-eslint/visitor-keys": "5.51.0" } }, - "@web3auth/solana-provider": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@web3auth/solana-provider/-/solana-provider-2.1.3.tgz", - "integrity": "sha512-6PKAssgEZVdWzLr1IXGOyCKpGAkvNhI4KF0T0rGX4mDNqBEwlK7ynFHWyz/NdKG/ZAQ1nL1IwsPCs0ZMPKz7ng==", + "@typescript-eslint/types": { + "version": "5.51.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.51.0.tgz", + "integrity": "sha512-SqOn0ANn/v6hFn0kjvLwiDi4AzR++CBZz0NV5AnusT2/3y32jdc0G4woXPWHCumWtUXZKPAS27/9vziSsC9jnw==", + "dev": true + }, + "@typescript-eslint/typescript-estree": { + "version": "5.51.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.51.0.tgz", + "integrity": "sha512-TSkNupHvNRkoH9FMA3w7TazVFcBPveAAmb7Sz+kArY6sLT86PA5Vx80cKlYmd8m3Ha2SwofM1KwraF24lM9FvA==", + "dev": true, "requires": { - "@solana/web3.js": "^1.59.1", - "@toruslabs/base-controllers": "^2.2.6", - "@toruslabs/openlogin-jrpc": "^2.6.0", - "@toruslabs/tweetnacl-js": "^1.0.3", - "@web3auth/base": "^2.1.3", - "@web3auth/base-provider": "^2.1.3", - "bn.js": "^5.2.1", - "bs58": "^4.0.1", - "eth-rpc-errors": "^4.0.3", - "json-rpc-random-id": "^1.0.1" + "@typescript-eslint/types": "5.51.0", + "@typescript-eslint/visitor-keys": "5.51.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" }, "dependencies": { - "base-x": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.9.tgz", - "integrity": "sha512-H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ==", + "globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "dev": true, "requires": { - "safe-buffer": "^5.0.1" + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" } }, - "bs58": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", - "integrity": "sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==", + "semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "dev": true, "requires": { - "base-x": "^3.0.2" + "lru-cache": "^6.0.0" } + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true } } }, - "@web3auth/torus-evm-adapter": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@web3auth/torus-evm-adapter/-/torus-evm-adapter-2.1.3.tgz", - "integrity": "sha512-pK+kwF+mBiaL8qKhk95DgOwwBFcjmtyH88e0zfHqcZEew40vk7V+JU3t/sA3ns9I1EHXzlbbC4DuWl7O8Cn4Mw==", + "@typescript-eslint/visitor-keys": { + "version": "5.51.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.51.0.tgz", + "integrity": "sha512-Oh2+eTdjHjOFjKA27sxESlA87YPSOJafGCR0md5oeMdh1ZcCfAGCIOL216uTBAkAIptvLIfKQhl7lHxMJet4GQ==", + "dev": true, "requires": { - "@toruslabs/torus-embed": "^1.36.2", - "@web3auth/base": "^2.1.3", - "@web3auth/base-evm-adapter": "^2.1.3" + "@typescript-eslint/types": "5.51.0", + "eslint-visitor-keys": "^3.3.0" } }, - "@web3auth/torus-solana-adapter": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@web3auth/torus-solana-adapter/-/torus-solana-adapter-2.1.3.tgz", - "integrity": "sha512-inm7w9h1GrANTQCxPF2cuO+MU6b6xnSmSqx0OlRL65zYaJtR8UwmD3fRjW0rKgUQl/mz1GHoyqIhxMmg6+DV/w==", + "@walletconnect/browser-utils": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@walletconnect/browser-utils/-/browser-utils-1.8.0.tgz", + "integrity": "sha512-Wcqqx+wjxIo9fv6eBUFHPsW1y/bGWWRboni5dfD8PtOmrihrEpOCmvRJe4rfl7xgJW8Ea9UqKEaq0bIRLHlK4A==", "requires": { - "@toruslabs/solana-embed": "^0.3.0", - "@web3auth/base": "^2.1.3", - "@web3auth/base-provider": "^2.1.3", - "@web3auth/base-solana-adapter": "^2.1.3", - "@web3auth/solana-provider": "^2.1.3" + "@walletconnect/safe-json": "1.0.0", + "@walletconnect/types": "^1.8.0", + "@walletconnect/window-getters": "1.0.0", + "@walletconnect/window-metadata": "1.0.0", + "detect-browser": "5.2.0" + }, + "dependencies": { + "detect-browser": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/detect-browser/-/detect-browser-5.2.0.tgz", + "integrity": "sha512-tr7XntDAu50BVENgQfajMLzacmSe34D+qZc4zjnniz0ZVuw/TZcLcyxHQjYpJTM36sGEkZZlYLnIM1hH7alTMA==" + } } }, - "@web3auth/ui": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@web3auth/ui/-/ui-2.1.3.tgz", - "integrity": "sha512-k0aN7IiL5eHU7YpRFxn4FKW3cI0bLq2y+I3cN8xBujWevaAhhRswKrObBe+OTjFCniSw7qYgTZTwpEm/AS+8NA==", + "@walletconnect/client": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@walletconnect/client/-/client-1.8.0.tgz", + "integrity": "sha512-svyBQ14NHx6Cs2j4TpkQaBI/2AF4+LXz64FojTjMtV4VMMhl81jSO1vNeg+yYhQzvjcGH/GpSwixjyCW0xFBOQ==", "requires": { - "@toruslabs/openlogin": "^2.6.1", - "@toruslabs/openlogin-jrpc": "^2.6.0", - "@web3auth/base": "^2.1.3", - "bowser": "^2.11.0", - "classnames": "^2.3.2", - "lodash.clonedeep": "^4.5.0", - "lodash.merge": "^4.6.2", - "react": "^18.2.0", - "react-dom": "^18.2.0", - "react-qr-code": "^2.0.8" + "@walletconnect/core": "^1.8.0", + "@walletconnect/iso-crypto": "^1.8.0", + "@walletconnect/types": "^1.8.0", + "@walletconnect/utils": "^1.8.0" } }, - "@web3auth/wallet-connect-v1-adapter": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@web3auth/wallet-connect-v1-adapter/-/wallet-connect-v1-adapter-2.1.3.tgz", - "integrity": "sha512-uFfHvbHAhmBS6mBCT0uncPaLD3GDc0ofVHhUHN5PkviSXZh5JbM9AyaQYJcW1/pPx0OID9ykmAueFlEOQnCRrA==", + "@walletconnect/core": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@walletconnect/core/-/core-1.8.0.tgz", + "integrity": "sha512-aFTHvEEbXcZ8XdWBw6rpQDte41Rxwnuk3SgTD8/iKGSRTni50gI9S3YEzMj05jozSiOBxQci4pJDMVhIUMtarw==", "requires": { - "@walletconnect/client": "~1.8.0", - "@walletconnect/types": "~1.8.0", - "@web3auth/base": "^2.1.3", - "@web3auth/base-evm-adapter": "^2.1.3", - "@web3auth/ethereum-provider": "^2.1.3" + "@walletconnect/socket-transport": "^1.8.0", + "@walletconnect/types": "^1.8.0", + "@walletconnect/utils": "^1.8.0" } }, - "@web3auth/web3auth": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@web3auth/web3auth/-/web3auth-2.1.3.tgz", - "integrity": "sha512-i3+jqOdgZruz+ouYCHg4Pi6RjpJMiSzABb16KmfxzMlMJnQYyaFKS13i0GCgq57jsUkKe6FWzYNkhIIDs5G5RA==", + "@walletconnect/crypto": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@walletconnect/crypto/-/crypto-1.0.3.tgz", + "integrity": "sha512-+2jdORD7XQs76I2Odgr3wwrtyuLUXD/kprNVsjWRhhhdO9Mt6WqVzOPu0/t7OHSmgal8k7SoBQzUc5hu/8zL/g==", "requires": { - "@web3auth/base": "^2.1.3", - "@web3auth/core": "^2.1.3", - "@web3auth/metamask-adapter": "^2.1.3", - "@web3auth/openlogin-adapter": "^2.1.3", - "@web3auth/phantom-adapter": "^2.1.3", - "@web3auth/torus-evm-adapter": "^2.1.3", - "@web3auth/torus-solana-adapter": "^2.1.3", - "@web3auth/ui": "^2.1.3", - "@web3auth/wallet-connect-v1-adapter": "^2.1.3" + "@walletconnect/encoding": "^1.0.2", + "@walletconnect/environment": "^1.0.1", + "@walletconnect/randombytes": "^1.0.3", + "aes-js": "^3.1.2", + "hash.js": "^1.1.7", + "tslib": "1.14.1" + }, + "dependencies": { + "aes-js": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/aes-js/-/aes-js-3.1.2.tgz", + "integrity": "sha512-e5pEa2kBnBOgR4Y/p20pskXI74UEz7de8ZGVo58asOtvSVG5YAbJeELPZxOmt+Bnz3rX753YKhfIn4X4l1PPRQ==" + }, + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } } }, - "@web3uikit/config": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/@web3uikit/config/-/config-0.1.2.tgz", - "integrity": "sha512-fOY0jxen7nEfivZc7BKm63WRcNEncidFhk+dIVR/0bj4tt5Xl0xyomPgyQqe38d3/PJ3RvqVTdupWFbWNJULkA==" + "@walletconnect/encoding": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@walletconnect/encoding/-/encoding-1.0.2.tgz", + "integrity": "sha512-CrwSBrjqJ7rpGQcTL3kU+Ief+Bcuu9PH6JLOb+wM6NITX1GTxR/MfNwnQfhLKK6xpRAyj2/nM04OOH6wS8Imag==", + "requires": { + "is-typedarray": "1.0.0", + "tslib": "1.14.1", + "typedarray-to-buffer": "3.1.5" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } }, - "@web3uikit/core": { - "version": "0.2.47", - "resolved": "https://registry.npmjs.org/@web3uikit/core/-/core-0.2.47.tgz", - "integrity": "sha512-lhxQaHLnB4UAFSNun/vpCn+X0+F8VzLtTkzxH2rLwOqSnbvOK4pp+ePO5Y/98yomAbXM2ebpzk0JR67rjP8o2Q==", + "@walletconnect/environment": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@walletconnect/environment/-/environment-1.0.1.tgz", + "integrity": "sha512-T426LLZtHj8e8rYnKfzsw1aG6+M0BT1ZxayMdv/p8yM0MU+eJDISqNY3/bccxRr4LrF9csq02Rhqt08Ibl0VRg==", "requires": { - "@web3uikit/config": "*", - "@web3uikit/icons": "*", - "@web3uikit/styles": "*", - "react-router-dom": "^6.3.0" + "tslib": "1.14.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } } }, - "@web3uikit/icons": { - "version": "0.2.46", - "resolved": "https://registry.npmjs.org/@web3uikit/icons/-/icons-0.2.46.tgz", - "integrity": "sha512-lRAYTV6BkLZkqMoLAB5NenM/4OTBjC8pa5lFXaSGG6U2NGXYnHJdSE/B2zZEgZZfuJ1HUDboD7RUiSglx8EbEg==", + "@walletconnect/http-connection": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@walletconnect/http-connection/-/http-connection-1.8.0.tgz", + "integrity": "sha512-IziEr3c53qsMromK7jz0EkbKDHlryRbxXdFR+xaG+S5nfxtUdAfjzlZabvczXdDCgmTij6KbNsZAjBMqCBzACw==", "requires": { - "@web3uikit/config": "*" + "@walletconnect/types": "^1.8.0", + "@walletconnect/utils": "^1.8.0", + "eventemitter3": "4.0.7", + "xhr2-cookies": "1.1.0" } }, - "@web3uikit/styles": { - "version": "0.2.37", - "resolved": "https://registry.npmjs.org/@web3uikit/styles/-/styles-0.2.37.tgz", - "integrity": "sha512-8bJPmSis69JHry1PMeWbi+CDPU6dH13sLF5VWtvmnq1jBNzI6pJ4gGQikT//eEhi/3IjmMOILhl1f7qxR1567w==", + "@walletconnect/iso-crypto": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@walletconnect/iso-crypto/-/iso-crypto-1.8.0.tgz", + "integrity": "sha512-pWy19KCyitpfXb70hA73r9FcvklS+FvO9QUIttp3c2mfW8frxgYeRXfxLRCIQTkaYueRKvdqPjbyhPLam508XQ==", "requires": { - "@web3uikit/config": "*" + "@walletconnect/crypto": "^1.0.2", + "@walletconnect/types": "^1.8.0", + "@walletconnect/utils": "^1.8.0" } }, - "@web3uikit/web3": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/@web3uikit/web3/-/web3-0.2.2.tgz", - "integrity": "sha512-OwTZJTnaWMuKXsjDpYtXSV3w12Rwm8sv4GB5ptjNoTZZ2xXx2kJrLKbRrgBgm2duhLocD2u2mdXAAmcbyyaxkg==", + "@walletconnect/jsonrpc-types": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-types/-/jsonrpc-types-1.0.2.tgz", + "integrity": "sha512-CZe8tjJX73OWdHjrBHy7HtAapJ2tT0Q3TYhPBhRxi3643lwPIQWC9En45ldY14TZwgSewkbZ0FtGBZK0G7Bbyg==", "requires": { - "@walletconnect/web3-provider": "^1.7.8", - "@web3auth/web3auth": "^1.1.0", - "@web3uikit/config": "*", - "@web3uikit/core": "*", - "@web3uikit/icons": "*", - "@web3uikit/styles": "*", - "moralis": "^1.8.1", - "react-blockies": "^1.4.1", - "react-moralis": "^1.4.0", - "wp5-cra-polyfill": "github:oscario2/wp5-cra-polyfill#91431fa" + "keyvaluestorage-interface": "^1.0.0", + "tslib": "1.14.1" }, "dependencies": { - "@babel/runtime": { - "version": "7.16.7", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.16.7.tgz", - "integrity": "sha512-9E9FJowqAsytyOY6LG+1KuueckRL+aQW+mKvXRXnuFGyRAyepJPmEo9vgMfXUA6O9u3IeEdv9MAkppFcaQwogQ==", - "requires": { - "regenerator-runtime": "^0.13.4" - } - }, - "@ethersproject/abi": { - "version": "5.6.0", - "resolved": "https://registry.npmjs.org/@ethersproject/abi/-/abi-5.6.0.tgz", - "integrity": "sha512-AhVByTwdXCc2YQ20v300w6KVHle9g2OFc28ZAFCPnJyEpkv1xKXjZcSTgWOlv1i+0dqlgF8RCF2Rn2KC1t+1Vg==", - "requires": { - "@ethersproject/address": "^5.6.0", - "@ethersproject/bignumber": "^5.6.0", - "@ethersproject/bytes": "^5.6.0", - "@ethersproject/constants": "^5.6.0", - "@ethersproject/hash": "^5.6.0", + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@walletconnect/jsonrpc-utils": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@walletconnect/jsonrpc-utils/-/jsonrpc-utils-1.0.4.tgz", + "integrity": "sha512-y0+tDxcTZ9BHBBKBJbjZxLUXb+zQZCylf7y/jTvDPNx76J0hYYc+F9zHzyqBLeorSKepLTk6yI8hw3NXbAQB3g==", + "requires": { + "@walletconnect/environment": "^1.0.1", + "@walletconnect/jsonrpc-types": "^1.0.2", + "tslib": "1.14.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@walletconnect/mobile-registry": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@walletconnect/mobile-registry/-/mobile-registry-1.4.0.tgz", + "integrity": "sha512-ZtKRio4uCZ1JUF7LIdecmZt7FOLnX72RPSY7aUVu7mj7CSfxDwUn6gBuK6WGtH+NZCldBqDl5DenI5fFSvkKYw==" + }, + "@walletconnect/qrcode-modal": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@walletconnect/qrcode-modal/-/qrcode-modal-1.8.0.tgz", + "integrity": "sha512-BueaFefaAi8mawE45eUtztg3ZFbsAH4DDXh1UNwdUlsvFMjqcYzLUG0xZvDd6z2eOpbgDg2N3bl6gF0KONj1dg==", + "requires": { + "@walletconnect/browser-utils": "^1.8.0", + "@walletconnect/mobile-registry": "^1.4.0", + "@walletconnect/types": "^1.8.0", + "copy-to-clipboard": "^3.3.1", + "preact": "10.4.1", + "qrcode": "1.4.4" + }, + "dependencies": { + "preact": { + "version": "10.4.1", + "resolved": "https://registry.npmjs.org/preact/-/preact-10.4.1.tgz", + "integrity": "sha512-WKrRpCSwL2t3tpOOGhf2WfTpcmbpxaWtDbdJdKdjd0aEiTkvOmS4NBkG6kzlaAHI9AkQ3iVqbFWM3Ei7mZ4o1Q==" + } + } + }, + "@walletconnect/randombytes": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@walletconnect/randombytes/-/randombytes-1.0.3.tgz", + "integrity": "sha512-35lpzxcHFbTN3ABefC9W+uBpNZl1GC4Wpx0ed30gibfO/y9oLdy1NznbV96HARQKSBV9J9M/rrtIvf6a23jfYw==", + "requires": { + "@walletconnect/encoding": "^1.0.2", + "@walletconnect/environment": "^1.0.1", + "randombytes": "^2.1.0", + "tslib": "1.14.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } + } + }, + "@walletconnect/safe-json": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@walletconnect/safe-json/-/safe-json-1.0.0.tgz", + "integrity": "sha512-QJzp/S/86sUAgWY6eh5MKYmSfZaRpIlmCJdi5uG4DJlKkZrHEF7ye7gA+VtbVzvTtpM/gRwO2plQuiooIeXjfg==" + }, + "@walletconnect/socket-transport": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@walletconnect/socket-transport/-/socket-transport-1.8.0.tgz", + "integrity": "sha512-5DyIyWrzHXTcVp0Vd93zJ5XMW61iDM6bcWT4p8DTRfFsOtW46JquruMhxOLeCOieM4D73kcr3U7WtyR4JUsGuQ==", + "requires": { + "@walletconnect/types": "^1.8.0", + "@walletconnect/utils": "^1.8.0", + "ws": "7.5.3" + }, + "dependencies": { + "ws": { + "version": "7.5.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.3.tgz", + "integrity": "sha512-kQ/dHIzuLrS6Je9+uv81ueZomEwH0qVYstcAQ4/Z93K8zeko9gtAbttJWzoC5ukqXY1PpoouV3+VSOqEAFt5wg==", + "requires": {} + } + } + }, + "@walletconnect/types": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@walletconnect/types/-/types-1.8.0.tgz", + "integrity": "sha512-Cn+3I0V0vT9ghMuzh1KzZvCkiAxTq+1TR2eSqw5E5AVWfmCtECFkVZBP6uUJZ8YjwLqXheI+rnjqPy7sVM4Fyg==" + }, + "@walletconnect/utils": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@walletconnect/utils/-/utils-1.8.0.tgz", + "integrity": "sha512-zExzp8Mj1YiAIBfKNm5u622oNw44WOESzo6hj+Q3apSMIb0Jph9X3GDIdbZmvVZsNPxWDL7uodKgZcCInZv2vA==", + "requires": { + "@walletconnect/browser-utils": "^1.8.0", + "@walletconnect/encoding": "^1.0.1", + "@walletconnect/jsonrpc-utils": "^1.0.3", + "@walletconnect/types": "^1.8.0", + "bn.js": "4.11.8", + "js-sha3": "0.8.0", + "query-string": "6.13.5" + }, + "dependencies": { + "bn.js": { + "version": "4.11.8", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz", + "integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==" + } + } + }, + "@walletconnect/web3-provider": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@walletconnect/web3-provider/-/web3-provider-1.8.0.tgz", + "integrity": "sha512-lqqEO0oRmCehH+c8ZPk3iH7I7YtbzmkWd58/Or2AgWAl869JamzndKCD3sTlNsPRQLxxPpraHQqzur7uclLWvg==", + "requires": { + "@walletconnect/client": "^1.8.0", + "@walletconnect/http-connection": "^1.8.0", + "@walletconnect/qrcode-modal": "^1.8.0", + "@walletconnect/types": "^1.8.0", + "@walletconnect/utils": "^1.8.0", + "web3-provider-engine": "16.0.1" + } + }, + "@walletconnect/window-getters": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@walletconnect/window-getters/-/window-getters-1.0.0.tgz", + "integrity": "sha512-xB0SQsLaleIYIkSsl43vm8EwETpBzJ2gnzk7e0wMF3ktqiTGS6TFHxcprMl5R44KKh4tCcHCJwolMCaDSwtAaA==" + }, + "@walletconnect/window-metadata": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@walletconnect/window-metadata/-/window-metadata-1.0.0.tgz", + "integrity": "sha512-9eFvmJxIKCC3YWOL97SgRkKhlyGXkrHwamfechmqszbypFspaSk+t2jQXAEU7YClHF6Qjw5eYOmy1//zFi9/GA==", + "requires": { + "@walletconnect/window-getters": "^1.0.0" + } + }, + "@web-std/blob": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@web-std/blob/-/blob-3.0.4.tgz", + "integrity": "sha512-+dibyiw+uHYK4dX5cJ7HA+gtDAaUUe6JsOryp2ZpAC7h4ICsh49E34JwHoEKPlPvP0llCrNzz45vvD+xX5QDBg==", + "requires": { + "@web-std/stream": "1.0.0", + "web-encoding": "1.1.5" + } + }, + "@web-std/fetch": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@web-std/fetch/-/fetch-3.0.3.tgz", + "integrity": "sha512-PtaKr6qvw2AmKChugzhQWuTa12dpbogHRBxwcleAZ35UhWucnfD4N+g3f7qYK2OeioSWTK3yMf6n/kOOfqxHaQ==", + "requires": { + "@web-std/blob": "^3.0.3", + "@web-std/form-data": "^3.0.2", + "@web3-storage/multipart-parser": "^1.0.0", + "data-uri-to-buffer": "^3.0.1" + } + }, + "@web-std/file": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@web-std/file/-/file-3.0.2.tgz", + "integrity": "sha512-pIH0uuZsmY8YFvSHP1NsBIiMT/1ce0suPrX74fEeO3Wbr1+rW0fUGEe4d0R99iLwXtyCwyserqCFI4BJkJlkRA==", + "requires": { + "@web-std/blob": "^3.0.3" + } + }, + "@web-std/form-data": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@web-std/form-data/-/form-data-3.0.2.tgz", + "integrity": "sha512-rhc8IRw66sJ0FHcnC84kT3mTN6eACTuNftkt1XSl1Ef6WRKq4Pz65xixxqZymAZl1K3USpwhLci4SKNn4PYxWQ==", + "requires": { + "web-encoding": "1.1.5" + } + }, + "@web-std/stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@web-std/stream/-/stream-1.0.0.tgz", + "integrity": "sha512-jyIbdVl+0ZJyKGTV0Ohb9E6UnxP+t7ZzX4Do3AHjZKxUXKMs9EmqnBDQgHF7bEw0EzbQygOjtt/7gvtmi//iCQ==", + "requires": { + "web-streams-polyfill": "^3.1.1" + } + }, + "@web3-storage/multipart-parser": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@web3-storage/multipart-parser/-/multipart-parser-1.0.0.tgz", + "integrity": "sha512-BEO6al7BYqcnfX15W2cnGR+Q566ACXAT9UQykORCWW80lmkpWsnEob6zJS1ZVBKsSJC8+7vJkHwlp+lXG1UCdw==" + }, + "@web3-storage/parse-link-header": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@web3-storage/parse-link-header/-/parse-link-header-3.1.0.tgz", + "integrity": "sha512-K1undnK70vLLauqdE8bq/l98isTF2FDhcP0UPpXVSjkSWe3xhAn5eRXk5jfA1E5ycNm84Ws/rQFUD7ue11nciw==" + }, + "@web3auth/base": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@web3auth/base/-/base-2.1.3.tgz", + "integrity": "sha512-4/ECf/BCLLp+pBLtDcYV0ImyKtjzZK0IOad7Wgs4UQedy1Lxdv8N9FxJULvQ8xXsl5wCxIE/kxJtP2HbEvWf9g==", + "requires": { + "@toruslabs/http-helpers": "^3.2.0", + "@toruslabs/openlogin-jrpc": "^2.6.0", + "jwt-decode": "^3.1.2", + "loglevel": "^1.8.0", + "ts-custom-error": "^3.2.2" + } + }, + "@web3auth/base-evm-adapter": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@web3auth/base-evm-adapter/-/base-evm-adapter-2.1.3.tgz", + "integrity": "sha512-+W5qzGphp6akjPdHhgVTc9y6nvcsJKT+xZFC6tIuzB/MF6GOWC5ixgWDgq/qZhiEOIx/dyllKdQSSX7saP+PdQ==", + "requires": { + "@web3auth/base": "^2.1.3" + } + }, + "@web3auth/base-plugin": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@web3auth/base-plugin/-/base-plugin-2.1.3.tgz", + "integrity": "sha512-RxenKk+27PK3gPQmnLKv6XfGvkgPq5D5ol2q+UfuipxF9bMiMO/9/DirsXhtvgkre6O5ksSUvmW/x/N+N4dK8A==", + "requires": { + "@web3auth/base": "^2.1.3" + } + }, + "@web3auth/base-provider": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@web3auth/base-provider/-/base-provider-2.1.3.tgz", + "integrity": "sha512-lfbB7eKciQG/EvrP4GOtqmfVISNit4IeADpBSZN3kXN/CgkyfrB0RyuoV6B+/JnWiqxdK0AvdX1ccDLuCZRbNw==", + "requires": { + "@toruslabs/base-controllers": "^2.2.6", + "@toruslabs/openlogin-jrpc": "^2.6.0", + "@web3auth/base": "^2.1.3", + "eth-rpc-errors": "^4.0.3", + "json-rpc-random-id": "^1.0.1" + } + }, + "@web3auth/base-solana-adapter": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@web3auth/base-solana-adapter/-/base-solana-adapter-2.1.3.tgz", + "integrity": "sha512-N7eF7hwZ3AGEG0sIzpNFy91p7WBOiLzJSRKMkMJyIezJlgCCsb10D8PL/rr4wgs5PLKlv1srXMm/bLbvcINNZQ==", + "requires": { + "@web3auth/base": "^2.1.3", + "bs58": "^5.0.0" + } + }, + "@web3auth/core": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@web3auth/core/-/core-2.1.3.tgz", + "integrity": "sha512-H2lpOSGGecgaKiFddNmMNknqUulijJM9Phq1AN+K0bF2UH0kfcawTyxzNwtoy48QXqOT3PMDFLsF54MOfLK2AA==", + "requires": { + "@toruslabs/openlogin-jrpc": "^2.6.0", + "@web3auth/base": "^2.1.3", + "@web3auth/base-plugin": "^2.1.3" + } + }, + "@web3auth/ethereum-provider": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@web3auth/ethereum-provider/-/ethereum-provider-2.1.3.tgz", + "integrity": "sha512-mB1knLMwCRbyBlQC2r+jY8GjUAHpJr3rHjLNraL051CFAKAmnj8QTKzaA206iGcZTSZ0dgLG7K/2+7hWSON6Vw==", + "requires": { + "@ethereumjs/common": "^2.6.5", + "@ethereumjs/tx": "^3.5.2", + "@metamask/eth-sig-util": "^4.0.1", + "@toruslabs/base-controllers": "^2.2.6", + "@toruslabs/http-helpers": "^3.2.0", + "@toruslabs/openlogin-jrpc": "^2.6.0", + "@walletconnect/types": "~1.8.0", + "@web3auth/base": "^2.1.3", + "@web3auth/base-provider": "^2.1.3", + "assert": "^2.0.0", + "bignumber.js": "^9.1.0", + "eth-rpc-errors": "^4.0.3", + "ethereumjs-util": "^7.1.5", + "jsonschema": "^1.4.1" + } + }, + "@web3auth/metamask-adapter": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@web3auth/metamask-adapter/-/metamask-adapter-2.1.3.tgz", + "integrity": "sha512-Sy8pQDkHzHvdCJyTkee5ujCMvU8bHjG7AheFgLeqAB2fB2G01mvpOc38ARjOrXGnIsRSebNuadiI3kcT3Xl4JQ==", + "requires": { + "@metamask/detect-provider": "^1.2.0", + "@web3auth/base": "^2.1.3", + "@web3auth/base-evm-adapter": "^2.1.3" + } + }, + "@web3auth/openlogin-adapter": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@web3auth/openlogin-adapter/-/openlogin-adapter-2.1.3.tgz", + "integrity": "sha512-c7bVecadoKpsGfBBvxtAC1bI9RER9HCgl7MgC+MMrZEg2luPN1ks1equG8CDl4VoBTS14aOOiGCfbjFXM1qW7g==", + "requires": { + "@toruslabs/openlogin": "^2.6.1", + "@toruslabs/openlogin-ed25519": "^2.0.0", + "@web3auth/base": "^2.1.3", + "@web3auth/base-provider": "^2.1.3", + "@web3auth/ethereum-provider": "^2.1.3", + "@web3auth/solana-provider": "^2.1.3", + "lodash.merge": "^4.6.2" + } + }, + "@web3auth/phantom-adapter": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@web3auth/phantom-adapter/-/phantom-adapter-2.1.3.tgz", + "integrity": "sha512-9l9KFdonXCIoaYsDB1etMxe+2oyKucnDyotksgJDHIrONMzABxJS1FMZrwpOGUZUXbWY+e6VQFCbmttzch1uLA==", + "requires": { + "@web3auth/base": "^2.1.3", + "@web3auth/base-provider": "^2.1.3", + "@web3auth/base-solana-adapter": "^2.1.3", + "@web3auth/solana-provider": "^2.1.3", + "bn.js": "^5.2.1" + } + }, + "@web3auth/solana-provider": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@web3auth/solana-provider/-/solana-provider-2.1.3.tgz", + "integrity": "sha512-6PKAssgEZVdWzLr1IXGOyCKpGAkvNhI4KF0T0rGX4mDNqBEwlK7ynFHWyz/NdKG/ZAQ1nL1IwsPCs0ZMPKz7ng==", + "requires": { + "@solana/web3.js": "^1.59.1", + "@toruslabs/base-controllers": "^2.2.6", + "@toruslabs/openlogin-jrpc": "^2.6.0", + "@toruslabs/tweetnacl-js": "^1.0.3", + "@web3auth/base": "^2.1.3", + "@web3auth/base-provider": "^2.1.3", + "bn.js": "^5.2.1", + "bs58": "^4.0.1", + "eth-rpc-errors": "^4.0.3", + "json-rpc-random-id": "^1.0.1" + }, + "dependencies": { + "base-x": { + "version": "3.0.9", + "resolved": "https://registry.npmjs.org/base-x/-/base-x-3.0.9.tgz", + "integrity": "sha512-H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ==", + "requires": { + "safe-buffer": "^5.0.1" + } + }, + "bs58": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/bs58/-/bs58-4.0.1.tgz", + "integrity": "sha512-Ok3Wdf5vOIlBrgCvTq96gBkJw+JUEzdBgyaza5HLtPm7yTHkjRy8+JzNyHF7BHa0bNWOQIp3m5YF0nnFcOIKLw==", + "requires": { + "base-x": "^3.0.2" + } + } + } + }, + "@web3auth/torus-evm-adapter": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@web3auth/torus-evm-adapter/-/torus-evm-adapter-2.1.3.tgz", + "integrity": "sha512-pK+kwF+mBiaL8qKhk95DgOwwBFcjmtyH88e0zfHqcZEew40vk7V+JU3t/sA3ns9I1EHXzlbbC4DuWl7O8Cn4Mw==", + "requires": { + "@toruslabs/torus-embed": "^1.36.2", + "@web3auth/base": "^2.1.3", + "@web3auth/base-evm-adapter": "^2.1.3" + } + }, + "@web3auth/torus-solana-adapter": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@web3auth/torus-solana-adapter/-/torus-solana-adapter-2.1.3.tgz", + "integrity": "sha512-inm7w9h1GrANTQCxPF2cuO+MU6b6xnSmSqx0OlRL65zYaJtR8UwmD3fRjW0rKgUQl/mz1GHoyqIhxMmg6+DV/w==", + "requires": { + "@toruslabs/solana-embed": "^0.3.0", + "@web3auth/base": "^2.1.3", + "@web3auth/base-provider": "^2.1.3", + "@web3auth/base-solana-adapter": "^2.1.3", + "@web3auth/solana-provider": "^2.1.3" + } + }, + "@web3auth/ui": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@web3auth/ui/-/ui-2.1.3.tgz", + "integrity": "sha512-k0aN7IiL5eHU7YpRFxn4FKW3cI0bLq2y+I3cN8xBujWevaAhhRswKrObBe+OTjFCniSw7qYgTZTwpEm/AS+8NA==", + "requires": { + "@toruslabs/openlogin": "^2.6.1", + "@toruslabs/openlogin-jrpc": "^2.6.0", + "@web3auth/base": "^2.1.3", + "bowser": "^2.11.0", + "classnames": "^2.3.2", + "lodash.clonedeep": "^4.5.0", + "lodash.merge": "^4.6.2", + "react": "^18.2.0", + "react-dom": "^18.2.0", + "react-qr-code": "^2.0.8" + } + }, + "@web3auth/wallet-connect-v1-adapter": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@web3auth/wallet-connect-v1-adapter/-/wallet-connect-v1-adapter-2.1.3.tgz", + "integrity": "sha512-uFfHvbHAhmBS6mBCT0uncPaLD3GDc0ofVHhUHN5PkviSXZh5JbM9AyaQYJcW1/pPx0OID9ykmAueFlEOQnCRrA==", + "requires": { + "@walletconnect/client": "~1.8.0", + "@walletconnect/types": "~1.8.0", + "@web3auth/base": "^2.1.3", + "@web3auth/base-evm-adapter": "^2.1.3", + "@web3auth/ethereum-provider": "^2.1.3" + } + }, + "@web3auth/web3auth": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@web3auth/web3auth/-/web3auth-2.1.3.tgz", + "integrity": "sha512-i3+jqOdgZruz+ouYCHg4Pi6RjpJMiSzABb16KmfxzMlMJnQYyaFKS13i0GCgq57jsUkKe6FWzYNkhIIDs5G5RA==", + "requires": { + "@web3auth/base": "^2.1.3", + "@web3auth/core": "^2.1.3", + "@web3auth/metamask-adapter": "^2.1.3", + "@web3auth/openlogin-adapter": "^2.1.3", + "@web3auth/phantom-adapter": "^2.1.3", + "@web3auth/torus-evm-adapter": "^2.1.3", + "@web3auth/torus-solana-adapter": "^2.1.3", + "@web3auth/ui": "^2.1.3", + "@web3auth/wallet-connect-v1-adapter": "^2.1.3" + } + }, + "@web3uikit/config": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@web3uikit/config/-/config-0.1.2.tgz", + "integrity": "sha512-fOY0jxen7nEfivZc7BKm63WRcNEncidFhk+dIVR/0bj4tt5Xl0xyomPgyQqe38d3/PJ3RvqVTdupWFbWNJULkA==" + }, + "@web3uikit/core": { + "version": "0.2.47", + "resolved": "https://registry.npmjs.org/@web3uikit/core/-/core-0.2.47.tgz", + "integrity": "sha512-lhxQaHLnB4UAFSNun/vpCn+X0+F8VzLtTkzxH2rLwOqSnbvOK4pp+ePO5Y/98yomAbXM2ebpzk0JR67rjP8o2Q==", + "requires": { + "@web3uikit/config": "*", + "@web3uikit/icons": "*", + "@web3uikit/styles": "*", + "react-router-dom": "^6.3.0" + } + }, + "@web3uikit/icons": { + "version": "0.2.46", + "resolved": "https://registry.npmjs.org/@web3uikit/icons/-/icons-0.2.46.tgz", + "integrity": "sha512-lRAYTV6BkLZkqMoLAB5NenM/4OTBjC8pa5lFXaSGG6U2NGXYnHJdSE/B2zZEgZZfuJ1HUDboD7RUiSglx8EbEg==", + "requires": { + "@web3uikit/config": "*" + } + }, + "@web3uikit/styles": { + "version": "0.2.37", + "resolved": "https://registry.npmjs.org/@web3uikit/styles/-/styles-0.2.37.tgz", + "integrity": "sha512-8bJPmSis69JHry1PMeWbi+CDPU6dH13sLF5VWtvmnq1jBNzI6pJ4gGQikT//eEhi/3IjmMOILhl1f7qxR1567w==", + "requires": { + "@web3uikit/config": "*" + } + }, + "@web3uikit/web3": { + "version": "0.2.2", + "resolved": "https://registry.npmjs.org/@web3uikit/web3/-/web3-0.2.2.tgz", + "integrity": "sha512-OwTZJTnaWMuKXsjDpYtXSV3w12Rwm8sv4GB5ptjNoTZZ2xXx2kJrLKbRrgBgm2duhLocD2u2mdXAAmcbyyaxkg==", + "requires": { + "@walletconnect/web3-provider": "^1.7.8", + "@web3auth/web3auth": "^1.1.0", + "@web3uikit/config": "*", + "@web3uikit/core": "*", + "@web3uikit/icons": "*", + "@web3uikit/styles": "*", + "moralis": "^1.8.1", + "react-blockies": "^1.4.1", + "react-moralis": "^1.4.0", + "wp5-cra-polyfill": "github:oscario2/wp5-cra-polyfill#91431fa" + }, + "dependencies": { + "@babel/runtime": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.16.7.tgz", + "integrity": "sha512-9E9FJowqAsytyOY6LG+1KuueckRL+aQW+mKvXRXnuFGyRAyepJPmEo9vgMfXUA6O9u3IeEdv9MAkppFcaQwogQ==", + "requires": { + "regenerator-runtime": "^0.13.4" + } + }, + "@ethersproject/abi": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/abi/-/abi-5.6.0.tgz", + "integrity": "sha512-AhVByTwdXCc2YQ20v300w6KVHle9g2OFc28ZAFCPnJyEpkv1xKXjZcSTgWOlv1i+0dqlgF8RCF2Rn2KC1t+1Vg==", + "requires": { + "@ethersproject/address": "^5.6.0", + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/constants": "^5.6.0", + "@ethersproject/hash": "^5.6.0", "@ethersproject/keccak256": "^5.6.0", "@ethersproject/logger": "^5.6.0", "@ethersproject/properties": "^5.6.0", @@ -19027,6 +19950,11 @@ "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" }, + "attr-accept": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/attr-accept/-/attr-accept-2.2.2.tgz", + "integrity": "sha512-7prDjvt9HmqiZ0cl5CRjtS84sEyhsHP2coDkaZKRKVfCDo9s7iw7ChVmar78Gu9pC4SoR/28wFu/G5JJhTnqEg==" + }, "autoprefixer": { "version": "10.4.13", "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.13.tgz", @@ -19809,6 +20737,11 @@ "sha.js": "^2.4.8" } }, + "create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==" + }, "cross-fetch": { "version": "2.2.6", "resolved": "https://registry.npmjs.org/cross-fetch/-/cross-fetch-2.2.6.tgz", @@ -20056,6 +20989,11 @@ "integrity": "sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==", "dev": true }, + "diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==" + }, "diffie-hellman": { "version": "5.0.3", "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", @@ -21401,6 +22339,14 @@ "flat-cache": "^3.0.4" } }, + "file-selector": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/file-selector/-/file-selector-0.6.0.tgz", + "integrity": "sha512-QlZ5yJC0VxHxQQsQhXvBaC7VRJ2uaxTf+Tfpu4Z/OcVQJVpZO+DGU0rkoVW5ce2SccxugvpBJoMvUs59iILYdw==", + "requires": { + "tslib": "^2.4.0" + } + }, "file-uri-to-path": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", @@ -23005,6 +23951,11 @@ "localforage": "^1.7.4" } }, + "make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==" + }, "map-obj": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz", @@ -23784,1892 +24735,2578 @@ } } }, - "move-file": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/move-file/-/move-file-2.1.0.tgz", - "integrity": "sha512-i9qLW6gqboJ5Ht8bauZi7KlTnQ3QFpBCvMvFfEcHADKgHGeJ9BZMO7SFCTwHPV9Qa0du9DYY1Yx3oqlGt30nXA==", + "move-file": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/move-file/-/move-file-2.1.0.tgz", + "integrity": "sha512-i9qLW6gqboJ5Ht8bauZi7KlTnQ3QFpBCvMvFfEcHADKgHGeJ9BZMO7SFCTwHPV9Qa0du9DYY1Yx3oqlGt30nXA==", + "requires": { + "path-exists": "^4.0.0" + } + }, + "mrmime": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-1.0.1.tgz", + "integrity": "sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==" + }, + "ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "multiaddr": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/multiaddr/-/multiaddr-10.0.1.tgz", + "integrity": "sha512-G5upNcGzEGuTHkzxezPrrD6CaIHR9uo+7MwqhNVcXTs33IInon4y7nMiGxl2CY5hG7chvYQUQhz5V52/Qe3cbg==", + "requires": { + "dns-over-http-resolver": "^1.2.3", + "err-code": "^3.0.1", + "is-ip": "^3.1.0", + "multiformats": "^9.4.5", + "uint8arrays": "^3.0.0", + "varint": "^6.0.0" + } + }, + "multiaddr-to-uri": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/multiaddr-to-uri/-/multiaddr-to-uri-8.0.0.tgz", + "integrity": "sha512-dq4p/vsOOUdVEd1J1gl+R2GFrXJQH8yjLtz4hodqdVbieg39LvBOdMQRdQnfbg5LSM/q1BYNVf5CBbwZFFqBgA==", + "requires": { + "multiaddr": "^10.0.0" + } + }, + "multiformats": { + "version": "9.9.0", + "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", + "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==" + }, + "murmurhash3js-revisited": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/murmurhash3js-revisited/-/murmurhash3js-revisited-3.0.0.tgz", + "integrity": "sha512-/sF3ee6zvScXMb1XFJ8gDsSnY+X8PbOyjIuBhtgis10W2Jx4ZjIhikUCIF9c4gpJxVnQIsPAFrSwTCuAjicP6g==" + }, + "nan": { + "version": "2.17.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.17.0.tgz", + "integrity": "sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ==" + }, + "nanoid": { + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", + "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==" + }, + "native-abort-controller": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/native-abort-controller/-/native-abort-controller-1.0.4.tgz", + "integrity": "sha512-zp8yev7nxczDJMoP6pDxyD20IU0T22eX8VwN2ztDccKvSZhRaV33yP1BGwKSZfXuqWUzsXopVFjBdau9OOAwMQ==", + "requires": {} + }, + "native-fetch": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/native-fetch/-/native-fetch-3.0.0.tgz", + "integrity": "sha512-G3Z7vx0IFb/FQ4JxvtqGABsOTIqRWvgQz6e+erkB+JJD6LrszQtMozEHI4EkmgZQvnGHrpLVzUWk7t4sJCIkVw==", + "requires": {} + }, + "natural-compare": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", + "dev": true + }, + "neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "peer": true + }, + "next": { + "version": "13.1.6", + "resolved": "https://registry.npmjs.org/next/-/next-13.1.6.tgz", + "integrity": "sha512-hHlbhKPj9pW+Cymvfzc15lvhaOZ54l+8sXDXJWm3OBNBzgrVj6hwGPmqqsXg40xO1Leq+kXpllzRPuncpC0Phw==", + "requires": { + "@next/env": "13.1.6", + "@next/swc-android-arm-eabi": "13.1.6", + "@next/swc-android-arm64": "13.1.6", + "@next/swc-darwin-arm64": "13.1.6", + "@next/swc-darwin-x64": "13.1.6", + "@next/swc-freebsd-x64": "13.1.6", + "@next/swc-linux-arm-gnueabihf": "13.1.6", + "@next/swc-linux-arm64-gnu": "13.1.6", + "@next/swc-linux-arm64-musl": "13.1.6", + "@next/swc-linux-x64-gnu": "13.1.6", + "@next/swc-linux-x64-musl": "13.1.6", + "@next/swc-win32-arm64-msvc": "13.1.6", + "@next/swc-win32-ia32-msvc": "13.1.6", + "@next/swc-win32-x64-msvc": "13.1.6", + "@swc/helpers": "0.4.14", + "caniuse-lite": "^1.0.30001406", + "postcss": "8.4.14", + "styled-jsx": "5.1.1" + }, + "dependencies": { + "postcss": { + "version": "8.4.14", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz", + "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==", + "requires": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + } + } + } + }, + "next-auth": { + "version": "4.19.2", + "resolved": "https://registry.npmjs.org/next-auth/-/next-auth-4.19.2.tgz", + "integrity": "sha512-6V2YG3IJQVhgCAH7mvT3yopTW92gMdUrcwGX7NQ0dCreT/+axGua/JmVdarjec0C/oJukKpIYRgjMlV+L5ZQOQ==", + "requires": { + "@babel/runtime": "^7.16.3", + "@panva/hkdf": "^1.0.1", + "cookie": "^0.5.0", + "jose": "^4.9.3", + "oauth": "^0.9.15", + "openid-client": "^5.1.0", + "preact": "^10.6.3", + "preact-render-to-string": "^5.1.19", + "uuid": "^8.3.2" + } + }, + "next-themes": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/next-themes/-/next-themes-0.2.1.tgz", + "integrity": "sha512-B+AKNfYNIzh0vqQQKqQItTS8evEouKD7H5Hj3kmuPERwddR2TxvDSFZuTj6T7Jfn1oyeUyJMydPl1Bkxkh0W7A==", + "requires": {} + }, + "next-tick": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", + "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==" + }, + "node-addon-api": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-2.0.2.tgz", + "integrity": "sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==" + }, + "node-fetch": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.9.tgz", + "integrity": "sha512-DJm/CJkZkRjKKj4Zi4BsKVZh3ValV5IR5s7LVZnW+6YMh0W1BfNA8XSs6DLMGYlId5F3KnA70uu2qepcR08Qqg==", + "requires": { + "whatwg-url": "^5.0.0" + } + }, + "node-forge": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", + "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==" + }, + "node-gyp-build": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.6.0.tgz", + "integrity": "sha512-NTZVKn9IylLwUzaKjkas1e4u2DLNcV4rdYagA4PWdPwW87Bi7z+BznyKSRwS/761tV/lzCGXplWsiaMjLqP2zQ==" + }, + "node-polyfill-webpack-plugin": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/node-polyfill-webpack-plugin/-/node-polyfill-webpack-plugin-1.1.4.tgz", + "integrity": "sha512-Z0XTKj1wRWO8o/Vjobsw5iOJCN+Sua3EZEUc2Ziy9CyVvmHKu6o+t4gUH9GOE0czyPR94LI6ZCV/PpcM8b5yow==", + "requires": { + "assert": "^2.0.0", + "browserify-zlib": "^0.2.0", + "buffer": "^6.0.3", + "console-browserify": "^1.2.0", + "constants-browserify": "^1.0.0", + "crypto-browserify": "^3.12.0", + "domain-browser": "^4.19.0", + "events": "^3.3.0", + "filter-obj": "^2.0.2", + "https-browserify": "^1.0.0", + "os-browserify": "^0.3.0", + "path-browserify": "^1.0.1", + "process": "^0.11.10", + "punycode": "^2.1.1", + "querystring-es3": "^0.2.1", + "readable-stream": "^3.6.0", + "stream-browserify": "^3.0.0", + "stream-http": "^3.2.0", + "string_decoder": "^1.3.0", + "timers-browserify": "^2.0.12", + "tty-browserify": "^0.0.1", + "url": "^0.11.0", + "util": "^0.12.4", + "vm-browserify": "^1.1.2" + } + }, + "node-releases": { + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz", + "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==" + }, + "normalize-package-data": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", + "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", + "requires": { + "hosted-git-info": "^4.0.1", + "is-core-module": "^2.5.0", + "semver": "^7.3.4", + "validate-npm-package-license": "^3.0.1" + }, + "dependencies": { + "semver": { + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "requires": { + "lru-cache": "^6.0.0" + } + } + } + }, + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "dev": true + }, + "normalize-range": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", + "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", + "dev": true + }, + "number-to-bn": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/number-to-bn/-/number-to-bn-1.7.0.tgz", + "integrity": "sha512-wsJ9gfSz1/s4ZsJN01lyonwuxA1tml6X1yBDnfpMglypcBRFZZkus26EdPSlqS5GJfYddVZa22p3VNb3z5m5Ig==", + "requires": { + "bn.js": "4.11.6", + "strip-hex-prefix": "1.0.0" + }, + "dependencies": { + "bn.js": { + "version": "4.11.6", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", + "integrity": "sha512-XWwnNNFCuuSQ0m3r3C4LE3EiORltHd9M05pq6FOlVeiophzRbMo50Sbz1ehl8K3Z+jw9+vmgnXefY1hz8X+2wA==" + } + } + }, + "oauth": { + "version": "0.9.15", + "resolved": "https://registry.npmjs.org/oauth/-/oauth-0.9.15.tgz", + "integrity": "sha512-a5ERWK1kh38ExDEfoO6qUHJb32rd7aYmPHuyCu3Fta/cnICvYmgd2uhuKXvPD+PXB+gCEYYEaQdIRAjCOwAKNA==" + }, + "oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==" + }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==" + }, + "object-hash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", + "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", + "dev": true + }, + "object-inspect": { + "version": "1.12.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", + "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==", + "dev": true + }, + "object-is": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", + "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + } + }, + "object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" + }, + "object.assign": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", + "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + } + }, + "object.entries": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.6.tgz", + "integrity": "sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "object.fromentries": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.6.tgz", + "integrity": "sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "object.hasown": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.2.tgz", + "integrity": "sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw==", + "dev": true, + "requires": { + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "object.values": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz", + "integrity": "sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" + } + }, + "oblivious-set": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/oblivious-set/-/oblivious-set-1.1.1.tgz", + "integrity": "sha512-Oh+8fK09mgGmAshFdH6hSVco6KZmd1tTwNFWj35OvzdmJTMZtAkbn05zar2iG3v6sDs1JLEtOiBGNb6BHwkb2w==" + }, + "oboe": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/oboe/-/oboe-2.1.5.tgz", + "integrity": "sha512-zRFWiF+FoicxEs3jNI/WYUrVEgA7DeET/InK0XQuudGHRg8iIob3cNPrJTKaz4004uaA9Pbe+Dwa8iluhjLZWA==", + "requires": { + "http-https": "^1.0.0" + } + }, + "oidc-token-hash": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/oidc-token-hash/-/oidc-token-hash-5.0.1.tgz", + "integrity": "sha512-EvoOtz6FIEBzE+9q253HsLCVRiK/0doEJ2HCvvqMQb3dHZrP3WlJKYtJ55CRTw4jmYomzH4wkPuCj/I3ZvpKxQ==" + }, + "once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "requires": { + "wrappy": "1" + } + }, + "open": { + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/open/-/open-8.4.0.tgz", + "integrity": "sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==", + "dev": true, + "requires": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + } + }, + "openid-client": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/openid-client/-/openid-client-5.4.0.tgz", + "integrity": "sha512-hgJa2aQKcM2hn3eyVtN12tEA45ECjTJPXCgUh5YzTzy9qwapCvmDTVPWOcWVL0d34zeQoQ/hbG9lJhl3AYxJlQ==", + "requires": { + "jose": "^4.10.0", + "lru-cache": "^6.0.0", + "object-hash": "^2.0.1", + "oidc-token-hash": "^5.0.1" + }, + "dependencies": { + "object-hash": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-2.2.0.tgz", + "integrity": "sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw==" + } + } + }, + "optionator": { + "version": "0.9.1", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", + "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", + "dev": true, + "requires": { + "deep-is": "^0.1.3", + "fast-levenshtein": "^2.0.6", + "levn": "^0.4.1", + "prelude-ls": "^1.2.1", + "type-check": "^0.4.0", + "word-wrap": "^1.2.3" + } + }, + "os-browserify": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", + "integrity": "sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==" + }, + "p-defer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-3.0.0.tgz", + "integrity": "sha512-ugZxsxmtTln604yeYd29EGrNhazN2lywetzpKhfmQjW/VJmhpDmWbiX+h0zL8V91R0UXkhb3KtPmyq9PZw3aYw==" + }, + "p-fifo": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-fifo/-/p-fifo-1.0.0.tgz", + "integrity": "sha512-IjoCxXW48tqdtDFz6fqo5q1UfFVjjVZe8TC1QRflvNUJtNfCUhxOUw6MOVZhDPjqhSzc26xKdugsO17gmzd5+A==", + "requires": { + "fast-fifo": "^1.0.0", + "p-defer": "^3.0.0" + } + }, + "p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "requires": { + "yocto-queue": "^0.1.0" + } + }, + "p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "requires": { + "p-limit": "^3.0.2" + } + }, + "p-retry": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", + "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", + "requires": { + "@types/retry": "0.12.0", + "retry": "^0.13.1" + } + }, + "p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" + }, + "pako": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" + }, + "parent-module": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "dev": true, + "requires": { + "callsites": "^3.0.0" + } + }, + "parse-asn1": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", + "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", + "requires": { + "asn1.js": "^5.2.0", + "browserify-aes": "^1.0.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3", + "safe-buffer": "^5.1.1" + } + }, + "parse-duration": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/parse-duration/-/parse-duration-1.0.2.tgz", + "integrity": "sha512-Dg27N6mfok+ow1a2rj/nRjtCfaKrHUZV2SJpEn/s8GaVUSlf4GGRCRP1c13Hj+wfPKVMrFDqLMLITkYKgKxyyg==" + }, + "parse-headers": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/parse-headers/-/parse-headers-2.0.5.tgz", + "integrity": "sha512-ft3iAoLOB/MlwbNXgzy43SWGP6sQki2jQvAyBg/zDFAgr9bfNWZIUj42Kw2eJIl8kEi4PbgE6U1Zau/HwI75HA==" + }, + "parse-json": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", "requires": { - "path-exists": "^4.0.0" + "@babel/code-frame": "^7.0.0", + "error-ex": "^1.3.1", + "json-parse-even-better-errors": "^2.3.0", + "lines-and-columns": "^1.1.6" } }, - "mrmime": { + "path-browserify": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/mrmime/-/mrmime-1.0.1.tgz", - "integrity": "sha512-hzzEagAgDyoU1Q6yg5uI+AorQgdvMCur3FcKf7NhMKWsaYg+RnbTyHRa/9IlLF9rf455MOCtcqqrQQ83pPP7Uw==" + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", + "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==" }, - "ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" }, - "multiaddr": { - "version": "10.0.1", - "resolved": "https://registry.npmjs.org/multiaddr/-/multiaddr-10.0.1.tgz", - "integrity": "sha512-G5upNcGzEGuTHkzxezPrrD6CaIHR9uo+7MwqhNVcXTs33IInon4y7nMiGxl2CY5hG7chvYQUQhz5V52/Qe3cbg==", + "path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "dev": true + }, + "path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true + }, + "path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + }, + "path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "dev": true + }, + "pbkdf2": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", + "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", "requires": { - "dns-over-http-resolver": "^1.2.3", - "err-code": "^3.0.1", - "is-ip": "^3.1.0", - "multiformats": "^9.4.5", - "uint8arrays": "^3.0.0", - "varint": "^6.0.0" + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" } }, - "multiaddr-to-uri": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/multiaddr-to-uri/-/multiaddr-to-uri-8.0.0.tgz", - "integrity": "sha512-dq4p/vsOOUdVEd1J1gl+R2GFrXJQH8yjLtz4hodqdVbieg39LvBOdMQRdQnfbg5LSM/q1BYNVf5CBbwZFFqBgA==", + "peer-id": { + "version": "0.16.0", + "resolved": "https://registry.npmjs.org/peer-id/-/peer-id-0.16.0.tgz", + "integrity": "sha512-EmL7FurFUduU9m1PS9cfJ5TAuCvxKQ7DKpfx3Yj6IKWyBRtosriFuOag/l3ni/dtPgPLwiA4R9IvpL7hsDLJuQ==", "requires": { - "multiaddr": "^10.0.0" + "class-is": "^1.1.0", + "libp2p-crypto": "^0.21.0", + "multiformats": "^9.4.5", + "protobufjs": "^6.10.2", + "uint8arrays": "^3.0.0" } }, - "multiformats": { - "version": "9.9.0", - "resolved": "https://registry.npmjs.org/multiformats/-/multiformats-9.9.0.tgz", - "integrity": "sha512-HoMUjhH9T8DDBNT+6xzkrd9ga/XiBI4xLr58LJACwK6G3HTOPeMz4nB4KJs33L2BelrIJa7P0VuNaVF3hMYfjg==" + "performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==" }, - "murmurhash3js-revisited": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/murmurhash3js-revisited/-/murmurhash3js-revisited-3.0.0.tgz", - "integrity": "sha512-/sF3ee6zvScXMb1XFJ8gDsSnY+X8PbOyjIuBhtgis10W2Jx4ZjIhikUCIF9c4gpJxVnQIsPAFrSwTCuAjicP6g==" + "picocolors": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" }, - "nan": { - "version": "2.17.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.17.0.tgz", - "integrity": "sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ==" + "picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==" }, - "nanoid": { - "version": "3.3.4", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.4.tgz", - "integrity": "sha512-MqBkQh/OHTS2egovRtLk45wEyNXwF+cokD+1YPf9u5VfJiRdAiRwB2froX5Co9Rh20xs4siNPm8naNotSD6RBw==" + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "dev": true }, - "native-abort-controller": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/native-abort-controller/-/native-abort-controller-1.0.4.tgz", - "integrity": "sha512-zp8yev7nxczDJMoP6pDxyD20IU0T22eX8VwN2ztDccKvSZhRaV33yP1BGwKSZfXuqWUzsXopVFjBdau9OOAwMQ==", - "requires": {} + "pngjs": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-3.4.0.tgz", + "integrity": "sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w==" }, - "native-fetch": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/native-fetch/-/native-fetch-3.0.0.tgz", - "integrity": "sha512-G3Z7vx0IFb/FQ4JxvtqGABsOTIqRWvgQz6e+erkB+JJD6LrszQtMozEHI4EkmgZQvnGHrpLVzUWk7t4sJCIkVw==", - "requires": {} + "postcss": { + "version": "8.4.21", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", + "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", + "dev": true, + "requires": { + "nanoid": "^3.3.4", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + } }, - "natural-compare": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - "dev": true + "postcss-import": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-14.1.0.tgz", + "integrity": "sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==", + "dev": true, + "requires": { + "postcss-value-parser": "^4.0.0", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" + } }, - "neo-async": { - "version": "2.6.2", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "peer": true + "postcss-js": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.0.tgz", + "integrity": "sha512-77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ==", + "dev": true, + "requires": { + "camelcase-css": "^2.0.1" + } }, - "next": { - "version": "13.1.6", - "resolved": "https://registry.npmjs.org/next/-/next-13.1.6.tgz", - "integrity": "sha512-hHlbhKPj9pW+Cymvfzc15lvhaOZ54l+8sXDXJWm3OBNBzgrVj6hwGPmqqsXg40xO1Leq+kXpllzRPuncpC0Phw==", + "postcss-load-config": { + "version": "3.1.4", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.4.tgz", + "integrity": "sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==", + "dev": true, "requires": { - "@next/env": "13.1.6", - "@next/swc-android-arm-eabi": "13.1.6", - "@next/swc-android-arm64": "13.1.6", - "@next/swc-darwin-arm64": "13.1.6", - "@next/swc-darwin-x64": "13.1.6", - "@next/swc-freebsd-x64": "13.1.6", - "@next/swc-linux-arm-gnueabihf": "13.1.6", - "@next/swc-linux-arm64-gnu": "13.1.6", - "@next/swc-linux-arm64-musl": "13.1.6", - "@next/swc-linux-x64-gnu": "13.1.6", - "@next/swc-linux-x64-musl": "13.1.6", - "@next/swc-win32-arm64-msvc": "13.1.6", - "@next/swc-win32-ia32-msvc": "13.1.6", - "@next/swc-win32-x64-msvc": "13.1.6", - "@swc/helpers": "0.4.14", - "caniuse-lite": "^1.0.30001406", - "postcss": "8.4.14", - "styled-jsx": "5.1.1" - }, - "dependencies": { - "postcss": { - "version": "8.4.14", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.14.tgz", - "integrity": "sha512-E398TUmfAYFPBSdzgeieK2Y1+1cpdxJx8yXbK/m57nRhKSmk1GB2tO4lbLBtlkfPQTDKfe4Xqv1ASWPpayPEig==", - "requires": { - "nanoid": "^3.3.4", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" - } - } + "lilconfig": "^2.0.5", + "yaml": "^1.10.2" } }, - "next-auth": { - "version": "4.19.2", - "resolved": "https://registry.npmjs.org/next-auth/-/next-auth-4.19.2.tgz", - "integrity": "sha512-6V2YG3IJQVhgCAH7mvT3yopTW92gMdUrcwGX7NQ0dCreT/+axGua/JmVdarjec0C/oJukKpIYRgjMlV+L5ZQOQ==", + "postcss-nested": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.0.0.tgz", + "integrity": "sha512-0DkamqrPcmkBDsLn+vQDIrtkSbNkv5AD/M322ySo9kqFkCIYklym2xEmWkwo+Y3/qZo34tzEPNUw4y7yMCdv5w==", + "dev": true, "requires": { - "@babel/runtime": "^7.16.3", - "@panva/hkdf": "^1.0.1", - "cookie": "^0.5.0", - "jose": "^4.9.3", - "oauth": "^0.9.15", - "openid-client": "^5.1.0", - "preact": "^10.6.3", - "preact-render-to-string": "^5.1.19", - "uuid": "^8.3.2" + "postcss-selector-parser": "^6.0.10" + } + }, + "postcss-selector-parser": { + "version": "6.0.11", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", + "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==", + "dev": true, + "requires": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + } + }, + "postcss-value-parser": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", + "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" + }, + "preact": { + "version": "10.12.1", + "resolved": "https://registry.npmjs.org/preact/-/preact-10.12.1.tgz", + "integrity": "sha512-l8386ixSsBdbreOAkqtrwqHwdvR35ID8c3rKPa8lCWuO86dBi32QWHV4vfsZK1utLLFMvw+Z5Ad4XLkZzchscg==" + }, + "preact-render-to-string": { + "version": "5.2.6", + "resolved": "https://registry.npmjs.org/preact-render-to-string/-/preact-render-to-string-5.2.6.tgz", + "integrity": "sha512-JyhErpYOvBV1hEPwIxc/fHWXPfnEGdRKxc8gFdAZ7XV4tlzyzG847XAyEZqoDnynP88akM4eaHcSOzNcLWFguw==", + "requires": { + "pretty-format": "^3.8.0" } }, - "next-tick": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz", - "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==" + "precond": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/precond/-/precond-0.2.3.tgz", + "integrity": "sha512-QCYG84SgGyGzqJ/vlMsxeXd/pgL/I94ixdNFyh1PusWmTCyVfPJjZ1K1jvHtsbfnXQs2TSkEP2fR7QiMZAnKFQ==" }, - "node-addon-api": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-2.0.2.tgz", - "integrity": "sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==" + "prelude-ls": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", + "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", + "dev": true }, - "node-fetch": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.9.tgz", - "integrity": "sha512-DJm/CJkZkRjKKj4Zi4BsKVZh3ValV5IR5s7LVZnW+6YMh0W1BfNA8XSs6DLMGYlId5F3KnA70uu2qepcR08Qqg==", + "pretty-format": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-3.8.0.tgz", + "integrity": "sha512-WuxUnVtlWL1OfZFQFuqvnvs6MiAGk9UNsBostyBOB0Is9wb5uRESevA6rnl/rkksXaGX3GzZhPup5d6Vp1nFew==" + }, + "process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==" + }, + "process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + }, + "promise-to-callback": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/promise-to-callback/-/promise-to-callback-1.0.0.tgz", + "integrity": "sha512-uhMIZmKM5ZteDMfLgJnoSq9GCwsNKrYau73Awf1jIy6/eUcuuZ3P+CD9zUv0kJsIUbU+x6uLNIhXhLHDs1pNPA==", "requires": { - "whatwg-url": "^5.0.0" + "is-fn": "^1.0.0", + "set-immediate-shim": "^1.0.1" } }, - "node-forge": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", - "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==" - }, - "node-gyp-build": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.6.0.tgz", - "integrity": "sha512-NTZVKn9IylLwUzaKjkas1e4u2DLNcV4rdYagA4PWdPwW87Bi7z+BznyKSRwS/761tV/lzCGXplWsiaMjLqP2zQ==" + "prop-types": { + "version": "15.8.1", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "requires": { + "loose-envify": "^1.4.0", + "object-assign": "^4.1.1", + "react-is": "^16.13.1" + } }, - "node-polyfill-webpack-plugin": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/node-polyfill-webpack-plugin/-/node-polyfill-webpack-plugin-1.1.4.tgz", - "integrity": "sha512-Z0XTKj1wRWO8o/Vjobsw5iOJCN+Sua3EZEUc2Ziy9CyVvmHKu6o+t4gUH9GOE0czyPR94LI6ZCV/PpcM8b5yow==", + "protobufjs": { + "version": "6.11.3", + "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.3.tgz", + "integrity": "sha512-xL96WDdCZYdU7Slin569tFX712BxsxslWwAfAhCYjQKGTq7dAU91Lomy6nLLhh/dyGhk/YH4TwTSRxTzhuHyZg==", "requires": { - "assert": "^2.0.0", - "browserify-zlib": "^0.2.0", - "buffer": "^6.0.3", - "console-browserify": "^1.2.0", - "constants-browserify": "^1.0.0", - "crypto-browserify": "^3.12.0", - "domain-browser": "^4.19.0", - "events": "^3.3.0", - "filter-obj": "^2.0.2", - "https-browserify": "^1.0.0", - "os-browserify": "^0.3.0", - "path-browserify": "^1.0.1", - "process": "^0.11.10", - "punycode": "^2.1.1", - "querystring-es3": "^0.2.1", - "readable-stream": "^3.6.0", - "stream-browserify": "^3.0.0", - "stream-http": "^3.2.0", - "string_decoder": "^1.3.0", - "timers-browserify": "^2.0.12", - "tty-browserify": "^0.0.1", - "url": "^0.11.0", - "util": "^0.12.4", - "vm-browserify": "^1.1.2" + "@protobufjs/aspromise": "^1.1.2", + "@protobufjs/base64": "^1.1.2", + "@protobufjs/codegen": "^2.0.4", + "@protobufjs/eventemitter": "^1.1.0", + "@protobufjs/fetch": "^1.1.0", + "@protobufjs/float": "^1.0.2", + "@protobufjs/inquire": "^1.1.0", + "@protobufjs/path": "^1.1.2", + "@protobufjs/pool": "^1.1.0", + "@protobufjs/utf8": "^1.1.0", + "@types/long": "^4.0.1", + "@types/node": ">=13.7.0", + "long": "^4.0.0" } }, - "node-releases": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz", - "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==" + "proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" }, - "normalize-package-data": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", - "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", + "prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==" + }, + "psl": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", + "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==" + }, + "public-encrypt": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", "requires": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" + "bn.js": "^4.1.0", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "parse-asn1": "^5.0.0", + "randombytes": "^2.0.1", + "safe-buffer": "^5.1.2" }, "dependencies": { - "semver": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", - "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", - "requires": { - "lru-cache": "^6.0.0" - } + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" } } }, - "normalize-path": { + "pump": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } }, - "normalize-range": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", - "dev": true + "punycode": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", + "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==" }, - "number-to-bn": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/number-to-bn/-/number-to-bn-1.7.0.tgz", - "integrity": "sha512-wsJ9gfSz1/s4ZsJN01lyonwuxA1tml6X1yBDnfpMglypcBRFZZkus26EdPSlqS5GJfYddVZa22p3VNb3z5m5Ig==", + "qr.js": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/qr.js/-/qr.js-0.0.0.tgz", + "integrity": "sha512-c4iYnWb+k2E+vYpRimHqSu575b1/wKl4XFeJGpFmrJQz5I88v9aY2czh7s0w36srfCM1sXgC/xpoJz5dJfq+OQ==" + }, + "qrcode": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/qrcode/-/qrcode-1.4.4.tgz", + "integrity": "sha512-oLzEC5+NKFou9P0bMj5+v6Z40evexeE29Z9cummZXZ9QXyMr3lphkURzxjXgPJC5azpxcshoDWV1xE46z+/c3Q==", "requires": { - "bn.js": "4.11.6", - "strip-hex-prefix": "1.0.0" + "buffer": "^5.4.3", + "buffer-alloc": "^1.2.0", + "buffer-from": "^1.1.1", + "dijkstrajs": "^1.0.1", + "isarray": "^2.0.1", + "pngjs": "^3.3.0", + "yargs": "^13.2.4" }, "dependencies": { - "bn.js": { - "version": "4.11.6", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz", - "integrity": "sha512-XWwnNNFCuuSQ0m3r3C4LE3EiORltHd9M05pq6FOlVeiophzRbMo50Sbz1ehl8K3Z+jw9+vmgnXefY1hz8X+2wA==" + "buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } } } }, - "oauth": { - "version": "0.9.15", - "resolved": "https://registry.npmjs.org/oauth/-/oauth-0.9.15.tgz", - "integrity": "sha512-a5ERWK1kh38ExDEfoO6qUHJb32rd7aYmPHuyCu3Fta/cnICvYmgd2uhuKXvPD+PXB+gCEYYEaQdIRAjCOwAKNA==" + "qs": { + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", + "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==" }, - "oauth-sign": { - "version": "0.9.0", - "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", - "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==" + "query-string": { + "version": "6.13.5", + "resolved": "https://registry.npmjs.org/query-string/-/query-string-6.13.5.tgz", + "integrity": "sha512-svk3xg9qHR39P3JlHuD7g3nRnyay5mHbrPctEBDUxUkHRifPHXJDhBUycdCC0NBjXoDf44Gb+IsOZL1Uwn8M/Q==", + "requires": { + "decode-uri-component": "^0.2.0", + "split-on-first": "^1.0.0", + "strict-uri-encode": "^2.0.0" + } }, - "object-assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==" + "querystring": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", + "integrity": "sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g==" }, - "object-hash": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz", - "integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==", + "querystring-es3": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", + "integrity": "sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==" + }, + "queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", "dev": true }, - "object-inspect": { - "version": "1.12.3", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.3.tgz", - "integrity": "sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==", + "quick-lru": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", + "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", "dev": true }, - "object-is": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz", - "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", + "rabin-wasm": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/rabin-wasm/-/rabin-wasm-0.1.5.tgz", + "integrity": "sha512-uWgQTo7pim1Rnj5TuWcCewRDTf0PEFTSlaUjWP4eY9EbLV9em08v89oCz/WO+wRxpYuO36XEHp4wgYQnAgOHzA==", "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" + "@assemblyscript/loader": "^0.9.4", + "bl": "^5.0.0", + "debug": "^4.3.1", + "minimist": "^1.2.5", + "node-fetch": "^2.6.1", + "readable-stream": "^3.6.0" } }, - "object-keys": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" + "randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "requires": { + "safe-buffer": "^5.1.0" + } }, - "object.assign": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", - "dev": true, + "randomfill": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", + "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "has-symbols": "^1.0.3", - "object-keys": "^1.1.1" + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" } }, - "object.entries": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.6.tgz", - "integrity": "sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==", - "dev": true, + "react": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", + "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" + "loose-envify": "^1.1.0" } }, - "object.fromentries": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.6.tgz", - "integrity": "sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==", - "dev": true, + "react-blockies": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/react-blockies/-/react-blockies-1.4.1.tgz", + "integrity": "sha512-4N015X5oPNnD3xQPsiqolOFzPZSSWyc5mJhJUZShUCHtiGUxVN+1qsWTcglkHMNySux9hUofaispqcw9QkWP5Q==", "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" + "prop-types": "^15.5.10" } }, - "object.hasown": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.2.tgz", - "integrity": "sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw==", - "dev": true, + "react-dom": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz", + "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==", "requires": { - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" + "loose-envify": "^1.1.0", + "scheduler": "^0.23.0" } }, - "object.values": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.6.tgz", - "integrity": "sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==", - "dev": true, + "react-dropzone": { + "version": "14.2.3", + "resolved": "https://registry.npmjs.org/react-dropzone/-/react-dropzone-14.2.3.tgz", + "integrity": "sha512-O3om8I+PkFKbxCukfIR3QAGftYXDZfOE2N1mr/7qebQJHs7U+/RSL/9xomJNpRg9kM5h9soQSdf0Gc7OHF5Fug==", "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" + "attr-accept": "^2.2.2", + "file-selector": "^0.6.0", + "prop-types": "^15.8.1" } }, - "oblivious-set": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/oblivious-set/-/oblivious-set-1.1.1.tgz", - "integrity": "sha512-Oh+8fK09mgGmAshFdH6hSVco6KZmd1tTwNFWj35OvzdmJTMZtAkbn05zar2iG3v6sDs1JLEtOiBGNb6BHwkb2w==" + "react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" }, - "oboe": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/oboe/-/oboe-2.1.5.tgz", - "integrity": "sha512-zRFWiF+FoicxEs3jNI/WYUrVEgA7DeET/InK0XQuudGHRg8iIob3cNPrJTKaz4004uaA9Pbe+Dwa8iluhjLZWA==", + "react-moralis": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/react-moralis/-/react-moralis-1.4.2.tgz", + "integrity": "sha512-M6R9+AO4r/ZmJEMbv2IySnp1+8fRvzu1osehAWYqQgN8cPsHWGuDpnmNSd8Q+DegZ/sjiBkfWjuEXFRwrHYorQ==", "requires": { - "http-https": "^1.0.0" + "fast-deep-equal": "^3.1.3", + "immer": "^9.0.7", + "use-immer": "^0.6.0" + }, + "dependencies": { + "use-immer": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/use-immer/-/use-immer-0.6.0.tgz", + "integrity": "sha512-dFGRfvWCqPDTOt/S431ETYTg6+uxbpb7A1pptufwXVzGJY3RlXr38+3wyLNpc6SbbmAKjWl6+EP6uW74fkEsXQ==", + "requires": {} + } } }, - "oidc-token-hash": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/oidc-token-hash/-/oidc-token-hash-5.0.1.tgz", - "integrity": "sha512-EvoOtz6FIEBzE+9q253HsLCVRiK/0doEJ2HCvvqMQb3dHZrP3WlJKYtJ55CRTw4jmYomzH4wkPuCj/I3ZvpKxQ==" + "react-native-crypto-js": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/react-native-crypto-js/-/react-native-crypto-js-1.0.0.tgz", + "integrity": "sha512-FNbLuG/HAdapQoybeZSoes1PWdOj0w242gb+e1R0hicf3Gyj/Mf8M9NaED2AnXVOX01b2FXomwUiw1xP1K+8sA==" }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "react-native-fetch-api": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/react-native-fetch-api/-/react-native-fetch-api-3.0.0.tgz", + "integrity": "sha512-g2rtqPjdroaboDKTsJCTlcmtw54E25OjyaunUP0anOZn4Fuo2IKs8BVfe02zVggA/UysbmfSnRJIqtNkAgggNA==", "requires": { - "wrappy": "1" + "p-defer": "^3.0.0" } }, - "open": { - "version": "8.4.0", - "resolved": "https://registry.npmjs.org/open/-/open-8.4.0.tgz", - "integrity": "sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==", + "react-qr-code": { + "version": "2.0.11", + "resolved": "https://registry.npmjs.org/react-qr-code/-/react-qr-code-2.0.11.tgz", + "integrity": "sha512-P7mvVM5vk9NjGdHMt4Z0KWeeJYwRAtonHTghZT2r+AASinLUUKQ9wfsGH2lPKsT++gps7hXmaiMGRvwTDEL9OA==", + "requires": { + "prop-types": "^15.8.1", + "qr.js": "0.0.0" + } + }, + "react-router": { + "version": "6.8.1", + "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.8.1.tgz", + "integrity": "sha512-Jgi8BzAJQ8MkPt8ipXnR73rnD7EmZ0HFFb7jdQU24TynGW1Ooqin2KVDN9voSC+7xhqbbCd2cjGUepb6RObnyg==", + "requires": { + "@remix-run/router": "1.3.2" + } + }, + "react-router-dom": { + "version": "6.8.1", + "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.8.1.tgz", + "integrity": "sha512-67EXNfkQgf34P7+PSb6VlBuaacGhkKn3kpE51+P6zYSG2kiRoumXEL6e27zTa9+PGF2MNXbgIUHTVlleLbIcHQ==", + "requires": { + "@remix-run/router": "1.3.2", + "react-router": "6.8.1" + } + }, + "read-cache": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", + "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", "dev": true, "requires": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", - "is-wsl": "^2.2.0" + "pify": "^2.3.0" } }, - "openid-client": { - "version": "5.4.0", - "resolved": "https://registry.npmjs.org/openid-client/-/openid-client-5.4.0.tgz", - "integrity": "sha512-hgJa2aQKcM2hn3eyVtN12tEA45ECjTJPXCgUh5YzTzy9qwapCvmDTVPWOcWVL0d34zeQoQ/hbG9lJhl3AYxJlQ==", + "read-pkg": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", "requires": { - "jose": "^4.10.0", - "lru-cache": "^6.0.0", - "object-hash": "^2.0.1", - "oidc-token-hash": "^5.0.1" + "@types/normalize-package-data": "^2.4.0", + "normalize-package-data": "^2.5.0", + "parse-json": "^5.0.0", + "type-fest": "^0.6.0" }, "dependencies": { - "object-hash": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-2.2.0.tgz", - "integrity": "sha512-gScRMn0bS5fH+IuwyIFgnh9zBdo4DV+6GhygmWM9HyNJSgS0hScp1f5vjtm7oIIOiT9trXrShAkLFSc2IqKNgw==" + "hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" + }, + "normalize-package-data": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "requires": { + "hosted-git-info": "^2.1.4", + "resolve": "^1.10.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" + } + }, + "semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" + }, + "type-fest": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==" + } + } + }, + "read-pkg-up": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", + "requires": { + "find-up": "^4.1.0", + "read-pkg": "^5.2.0", + "type-fest": "^0.8.1" + }, + "dependencies": { + "find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "requires": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + } + }, + "locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "requires": { + "p-locate": "^4.1.0" + } + }, + "p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "requires": { + "p-limit": "^2.2.0" + } + }, + "type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==" } } }, - "optionator": { - "version": "0.9.1", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", - "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", - "dev": true, - "requires": { - "deep-is": "^0.1.3", - "fast-levenshtein": "^2.0.6", - "levn": "^0.4.1", - "prelude-ls": "^1.2.1", - "type-check": "^0.4.0", - "word-wrap": "^1.2.3" - } - }, - "os-browserify": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", - "integrity": "sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==" - }, - "p-defer": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-3.0.0.tgz", - "integrity": "sha512-ugZxsxmtTln604yeYd29EGrNhazN2lywetzpKhfmQjW/VJmhpDmWbiX+h0zL8V91R0UXkhb3KtPmyq9PZw3aYw==" - }, - "p-fifo": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/p-fifo/-/p-fifo-1.0.0.tgz", - "integrity": "sha512-IjoCxXW48tqdtDFz6fqo5q1UfFVjjVZe8TC1QRflvNUJtNfCUhxOUw6MOVZhDPjqhSzc26xKdugsO17gmzd5+A==", + "readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", "requires": { - "fast-fifo": "^1.0.0", - "p-defer": "^3.0.0" + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" } }, - "p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", "dev": true, "requires": { - "yocto-queue": "^0.1.0" + "picomatch": "^2.2.1" } }, - "p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, + "receptacle": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/receptacle/-/receptacle-1.3.2.tgz", + "integrity": "sha512-HrsFvqZZheusncQRiEE7GatOAETrARKV/lnfYicIm8lbvp/JQOdADOfhjBd2DajvoszEyxSM6RlAAIZgEoeu/A==", "requires": { - "p-limit": "^3.0.2" + "ms": "^2.1.1" } }, - "p-retry": { - "version": "4.6.2", - "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.6.2.tgz", - "integrity": "sha512-312Id396EbJdvRONlngUx0NydfrIQ5lsYu0znKVUzVvArzEIt08V1qhtyESbGVd1FGX7UKtiFp5uwKZdM8wIuQ==", + "redent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", + "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", "requires": { - "@types/retry": "0.12.0", - "retry": "^0.13.1" + "indent-string": "^4.0.0", + "strip-indent": "^3.0.0" } }, - "p-try": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==" - }, - "pako": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" + "regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" }, - "parent-module": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "regexp.prototype.flags": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", + "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", "dev": true, "requires": { - "callsites": "^3.0.0" - } - }, - "parse-asn1": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", - "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", - "requires": { - "asn1.js": "^5.2.0", - "browserify-aes": "^1.0.0", - "evp_bytestokey": "^1.0.0", - "pbkdf2": "^3.0.3", - "safe-buffer": "^5.1.1" + "call-bind": "^1.0.2", + "define-properties": "^1.1.3", + "functions-have-names": "^1.2.2" } }, - "parse-duration": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/parse-duration/-/parse-duration-1.0.2.tgz", - "integrity": "sha512-Dg27N6mfok+ow1a2rj/nRjtCfaKrHUZV2SJpEn/s8GaVUSlf4GGRCRP1c13Hj+wfPKVMrFDqLMLITkYKgKxyyg==" - }, - "parse-headers": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/parse-headers/-/parse-headers-2.0.5.tgz", - "integrity": "sha512-ft3iAoLOB/MlwbNXgzy43SWGP6sQki2jQvAyBg/zDFAgr9bfNWZIUj42Kw2eJIl8kEi4PbgE6U1Zau/HwI75HA==" + "regexpp": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", + "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", + "dev": true }, - "parse-json": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "request": { + "version": "2.88.2", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", "requires": { - "@babel/code-frame": "^7.0.0", - "error-ex": "^1.3.1", - "json-parse-even-better-errors": "^2.3.0", - "lines-and-columns": "^1.1.6" + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.3", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.5.0", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + }, + "dependencies": { + "form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "requires": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + } + }, + "uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" + } } }, - "path-browserify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", - "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==" - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==" - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "dev": true - }, - "path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true - }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" - }, - "path-type": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", - "dev": true + "require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==" }, - "pbkdf2": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", - "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==", - "requires": { - "create-hash": "^1.1.2", - "create-hmac": "^1.1.4", - "ripemd160": "^2.0.1", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } + "require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==" }, - "peer-id": { - "version": "0.16.0", - "resolved": "https://registry.npmjs.org/peer-id/-/peer-id-0.16.0.tgz", - "integrity": "sha512-EmL7FurFUduU9m1PS9cfJ5TAuCvxKQ7DKpfx3Yj6IKWyBRtosriFuOag/l3ni/dtPgPLwiA4R9IvpL7hsDLJuQ==", - "requires": { - "class-is": "^1.1.0", - "libp2p-crypto": "^0.21.0", - "multiformats": "^9.4.5", - "protobufjs": "^6.10.2", - "uint8arrays": "^3.0.0" + "resolve": { + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "requires": { + "is-core-module": "^2.9.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" } }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==" + "resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true }, - "picocolors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + "retimer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/retimer/-/retimer-2.0.0.tgz", + "integrity": "sha512-KLXY85WkEq2V2bKex/LOO1ViXVn2KGYe4PYysAdYdjmraYIUsVkXu8O4am+8+5UbaaGl1qho4aqAAPHNQ4GSbg==" }, - "picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==" + "retry": { + "version": "0.13.1", + "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", + "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==" }, - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==", + "reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", "dev": true }, - "pngjs": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-3.4.0.tgz", - "integrity": "sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w==" - }, - "postcss": { - "version": "8.4.21", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.21.tgz", - "integrity": "sha512-tP7u/Sn/dVxK2NnruI4H9BG+x+Wxz6oeZ1cJ8P6G/PZY0IKk4k/63TDsQf2kQq3+qoJeLm2kIBUNlZe3zgb4Zg==", + "rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", "dev": true, "requires": { - "nanoid": "^3.3.4", - "picocolors": "^1.0.0", - "source-map-js": "^1.0.2" + "glob": "^7.1.3" + }, + "dependencies": { + "glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + } } }, - "postcss-import": { - "version": "14.1.0", - "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-14.1.0.tgz", - "integrity": "sha512-flwI+Vgm4SElObFVPpTIT7SU7R3qk2L7PyduMcokiaVKuWv9d/U+Gm/QAd8NDLuykTWTkcrjOeD2Pp1rMeBTGw==", - "dev": true, + "ripemd160": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", + "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", "requires": { - "postcss-value-parser": "^4.0.0", - "read-cache": "^1.0.0", - "resolve": "^1.1.7" + "hash-base": "^3.0.0", + "inherits": "^2.0.1" } }, - "postcss-js": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-js/-/postcss-js-4.0.0.tgz", - "integrity": "sha512-77QESFBwgX4irogGVPgQ5s07vLvFqWr228qZY+w6lW599cRlK/HmnlivnnVUxkjHnCu4J16PDMHcH+e+2HbvTQ==", - "dev": true, + "rlp": { + "version": "2.2.7", + "resolved": "https://registry.npmjs.org/rlp/-/rlp-2.2.7.tgz", + "integrity": "sha512-d5gdPmgQ0Z+AklL2NVXr/IoSjNZFfTVvQWzL/AM2AOcSzYP2xjlb0AC8YyCLc41MSNf6P6QVtjgPdmVtzb+4lQ==", "requires": { - "camelcase-css": "^2.0.1" + "bn.js": "^5.2.0" } }, - "postcss-load-config": { - "version": "3.1.4", - "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.4.tgz", - "integrity": "sha512-6DiM4E7v4coTE4uzA8U//WhtPwyhiim3eyjEMFCnUpzbrkK9wJHgKDT2mR+HbtSrd/NubVaYTOpSpjUl8NQeRg==", - "dev": true, + "rpc-websockets": { + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/rpc-websockets/-/rpc-websockets-7.5.0.tgz", + "integrity": "sha512-9tIRi1uZGy7YmDjErf1Ax3wtqdSSLIlnmL5OtOzgd5eqPKbsPpwDP5whUDO2LQay3Xp0CcHlcNSGzacNRluBaQ==", "requires": { - "lilconfig": "^2.0.5", - "yaml": "^1.10.2" + "@babel/runtime": "^7.17.2", + "bufferutil": "^4.0.1", + "eventemitter3": "^4.0.7", + "utf-8-validate": "^5.0.2", + "uuid": "^8.3.2", + "ws": "^8.5.0" + }, + "dependencies": { + "ws": { + "version": "8.12.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.12.1.tgz", + "integrity": "sha512-1qo+M9Ba+xNhPB+YTWUlK6M17brTut5EXbcBaMRN5pH5dFrXz7lzz1ChFSUq3bOUl8yEvSenhHmYUNJxFzdJew==", + "requires": {} + } } }, - "postcss-nested": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/postcss-nested/-/postcss-nested-6.0.0.tgz", - "integrity": "sha512-0DkamqrPcmkBDsLn+vQDIrtkSbNkv5AD/M322ySo9kqFkCIYklym2xEmWkwo+Y3/qZo34tzEPNUw4y7yMCdv5w==", + "run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", "dev": true, "requires": { - "postcss-selector-parser": "^6.0.10" + "queue-microtask": "^1.2.2" } }, - "postcss-selector-parser": { - "version": "6.0.11", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz", - "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==", - "dev": true, - "requires": { - "cssesc": "^3.0.0", - "util-deprecate": "^1.0.2" - } + "rustbn.js": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/rustbn.js/-/rustbn.js-0.2.0.tgz", + "integrity": "sha512-4VlvkRUuCJvr2J6Y0ImW7NvTCriMi7ErOAqWk1y69vAdoNIzCF3yPmgeNzx+RQTLEDFq5sHfscn1MwHxP9hNfA==" }, - "postcss-value-parser": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==" + "safari-14-idb-fix": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/safari-14-idb-fix/-/safari-14-idb-fix-3.0.0.tgz", + "integrity": "sha512-eBNFLob4PMq8JA1dGyFn6G97q3/WzNtFK4RnzT1fnLq+9RyrGknzYiM/9B12MnKAxuj1IXr7UKYtTNtjyKMBog==" }, - "preact": { - "version": "10.12.1", - "resolved": "https://registry.npmjs.org/preact/-/preact-10.12.1.tgz", - "integrity": "sha512-l8386ixSsBdbreOAkqtrwqHwdvR35ID8c3rKPa8lCWuO86dBi32QWHV4vfsZK1utLLFMvw+Z5Ad4XLkZzchscg==" + "safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" }, - "preact-render-to-string": { - "version": "5.2.6", - "resolved": "https://registry.npmjs.org/preact-render-to-string/-/preact-render-to-string-5.2.6.tgz", - "integrity": "sha512-JyhErpYOvBV1hEPwIxc/fHWXPfnEGdRKxc8gFdAZ7XV4tlzyzG847XAyEZqoDnynP88akM4eaHcSOzNcLWFguw==", + "safe-event-emitter": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/safe-event-emitter/-/safe-event-emitter-1.0.1.tgz", + "integrity": "sha512-e1wFe99A91XYYxoQbcq2ZJUWurxEyP8vfz7A7vuUe1s95q8r5ebraVaA1BukYJcpM6V16ugWoD9vngi8Ccu5fg==", "requires": { - "pretty-format": "^3.8.0" + "events": "^3.0.0" } }, - "precond": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/precond/-/precond-0.2.3.tgz", - "integrity": "sha512-QCYG84SgGyGzqJ/vlMsxeXd/pgL/I94ixdNFyh1PusWmTCyVfPJjZ1K1jvHtsbfnXQs2TSkEP2fR7QiMZAnKFQ==" - }, - "prelude-ls": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", - "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", - "dev": true - }, - "pretty-format": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-3.8.0.tgz", - "integrity": "sha512-WuxUnVtlWL1OfZFQFuqvnvs6MiAGk9UNsBostyBOB0Is9wb5uRESevA6rnl/rkksXaGX3GzZhPup5d6Vp1nFew==" + "safe-regex-test": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", + "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.3", + "is-regex": "^1.1.4" + } }, - "process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==" + "safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, - "process-nextick-args": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", - "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + "scheduler": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz", + "integrity": "sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==", + "requires": { + "loose-envify": "^1.1.0" + } }, - "promise-to-callback": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/promise-to-callback/-/promise-to-callback-1.0.0.tgz", - "integrity": "sha512-uhMIZmKM5ZteDMfLgJnoSq9GCwsNKrYau73Awf1jIy6/eUcuuZ3P+CD9zUv0kJsIUbU+x6uLNIhXhLHDs1pNPA==", + "schema-utils": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", + "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", + "peer": true, "requires": { - "is-fn": "^1.0.0", - "set-immediate-shim": "^1.0.1" + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" } }, - "prop-types": { - "version": "15.8.1", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", - "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "scrypt-js": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/scrypt-js/-/scrypt-js-3.0.1.tgz", + "integrity": "sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==" + }, + "secp256k1": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-4.0.3.tgz", + "integrity": "sha512-NLZVf+ROMxwtEj3Xa562qgv2BK5e2WNmXPiOdVIPLgs6lyTzMvBq0aWTYMI5XCP9jZMVKOcqZLw/Wc4vDkuxhA==", "requires": { - "loose-envify": "^1.4.0", - "object-assign": "^4.1.1", - "react-is": "^16.13.1" + "elliptic": "^6.5.4", + "node-addon-api": "^2.0.0", + "node-gyp-build": "^4.2.0" } }, - "protobufjs": { - "version": "6.11.3", - "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-6.11.3.tgz", - "integrity": "sha512-xL96WDdCZYdU7Slin569tFX712BxsxslWwAfAhCYjQKGTq7dAU91Lomy6nLLhh/dyGhk/YH4TwTSRxTzhuHyZg==", + "semaphore": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/semaphore/-/semaphore-1.1.0.tgz", + "integrity": "sha512-O4OZEaNtkMd/K0i6js9SL+gqy0ZCBMgUvlSqHKi4IBdjhe7wB8pwztUk1BbZ1fmrvpwFrPbHzqd2w5pTcJH6LA==" + }, + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + }, + "serialize-javascript": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz", + "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", + "peer": true, "requires": { - "@protobufjs/aspromise": "^1.1.2", - "@protobufjs/base64": "^1.1.2", - "@protobufjs/codegen": "^2.0.4", - "@protobufjs/eventemitter": "^1.1.0", - "@protobufjs/fetch": "^1.1.0", - "@protobufjs/float": "^1.0.2", - "@protobufjs/inquire": "^1.1.0", - "@protobufjs/path": "^1.1.2", - "@protobufjs/pool": "^1.1.0", - "@protobufjs/utf8": "^1.1.0", - "@types/long": "^4.0.1", - "@types/node": ">=13.7.0", - "long": "^4.0.0" + "randombytes": "^2.1.0" } }, - "proxy-from-env": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", - "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + "set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==" }, - "prr": { + "set-immediate-shim": { "version": "1.0.1", - "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", - "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==" + "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", + "integrity": "sha512-Li5AOqrZWCVA2n5kryzEmqai6bKSIvpz5oUJHPVj6+dsbD3X1ixtsY5tEnsaNpH3pFAHmG8eIHUrtEtohrg+UQ==" }, - "psl": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", - "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==" + "setimmediate": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", + "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==" }, - "public-encrypt": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", - "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", + "sha.js": { + "version": "2.4.11", + "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", + "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", "requires": { - "bn.js": "^4.1.0", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "parse-asn1": "^5.0.0", - "randombytes": "^2.0.1", - "safe-buffer": "^5.1.2" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - } + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" } }, - "pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "shallowequal": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz", + "integrity": "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==" + }, + "shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" + "shebang-regex": "^3.0.0" } }, - "punycode": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", - "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==" - }, - "qr.js": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/qr.js/-/qr.js-0.0.0.tgz", - "integrity": "sha512-c4iYnWb+k2E+vYpRimHqSu575b1/wKl4XFeJGpFmrJQz5I88v9aY2czh7s0w36srfCM1sXgC/xpoJz5dJfq+OQ==" + "shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true }, - "qrcode": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/qrcode/-/qrcode-1.4.4.tgz", - "integrity": "sha512-oLzEC5+NKFou9P0bMj5+v6Z40evexeE29Z9cummZXZ9QXyMr3lphkURzxjXgPJC5azpxcshoDWV1xE46z+/c3Q==", + "side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dev": true, "requires": { - "buffer": "^5.4.3", - "buffer-alloc": "^1.2.0", - "buffer-from": "^1.1.1", - "dijkstrajs": "^1.0.1", - "isarray": "^2.0.1", - "pngjs": "^3.3.0", - "yargs": "^13.2.4" - }, - "dependencies": { - "buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "requires": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - } + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" } }, - "qs": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", - "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==" + "simple-concat": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", + "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==" }, - "query-string": { - "version": "6.13.5", - "resolved": "https://registry.npmjs.org/query-string/-/query-string-6.13.5.tgz", - "integrity": "sha512-svk3xg9qHR39P3JlHuD7g3nRnyay5mHbrPctEBDUxUkHRifPHXJDhBUycdCC0NBjXoDf44Gb+IsOZL1Uwn8M/Q==", + "simple-get": { + "version": "2.8.2", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-2.8.2.tgz", + "integrity": "sha512-Ijd/rV5o+mSBBs4F/x9oDPtTx9Zb6X9brmnXvMW4J7IR15ngi9q5xxqWBKU744jTZiaXtxaPL7uHG6vtN8kUkw==", "requires": { - "decode-uri-component": "^0.2.0", - "split-on-first": "^1.0.0", - "strict-uri-encode": "^2.0.0" + "decompress-response": "^3.3.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" } }, - "querystring": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", - "integrity": "sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g==" - }, - "querystring-es3": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", - "integrity": "sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==" - }, - "queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", - "dev": true - }, - "quick-lru": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", - "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", + "slash": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", + "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", "dev": true }, - "rabin-wasm": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/rabin-wasm/-/rabin-wasm-0.1.5.tgz", - "integrity": "sha512-uWgQTo7pim1Rnj5TuWcCewRDTf0PEFTSlaUjWP4eY9EbLV9em08v89oCz/WO+wRxpYuO36XEHp4wgYQnAgOHzA==", + "socket.io-client": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.6.0.tgz", + "integrity": "sha512-2XOp18xnGghUICSd5ziUIS4rB0dhr6S8OvAps8y+HhOjFQlqGcf+FIh6fCIsKKZyWFxJeFPrZRNPGsHDTsz1Ug==", "requires": { - "@assemblyscript/loader": "^0.9.4", - "bl": "^5.0.0", - "debug": "^4.3.1", - "minimist": "^1.2.5", - "node-fetch": "^2.6.1", - "readable-stream": "^3.6.0" + "@socket.io/component-emitter": "~3.1.0", + "debug": "~4.3.2", + "engine.io-client": "~6.4.0", + "socket.io-parser": "~4.2.1" } }, - "randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", - "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "socket.io-parser": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.2.2.tgz", + "integrity": "sha512-DJtziuKypFkMMHCm2uIshOYC7QaylbtzQwiMYDuCKy3OPkjLzu4B2vAhTlqipRHHzrI0NJeBAizTK7X+6m1jVw==", "requires": { - "safe-buffer": "^5.1.0" + "@socket.io/component-emitter": "~3.1.0", + "debug": "~4.3.1" } }, - "randomfill": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", - "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", - "requires": { - "randombytes": "^2.0.5", - "safe-buffer": "^5.1.0" - } + "source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" }, - "react": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", - "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", + "source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==" + }, + "source-map-support": { + "version": "0.5.21", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", + "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", "requires": { - "loose-envify": "^1.1.0" + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" } }, - "react-blockies": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/react-blockies/-/react-blockies-1.4.1.tgz", - "integrity": "sha512-4N015X5oPNnD3xQPsiqolOFzPZSSWyc5mJhJUZShUCHtiGUxVN+1qsWTcglkHMNySux9hUofaispqcw9QkWP5Q==", + "sparse-array": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/sparse-array/-/sparse-array-1.3.2.tgz", + "integrity": "sha512-ZT711fePGn3+kQyLuv1fpd3rNSkNF8vd5Kv2D+qnOANeyKs3fx6bUMGWRPvgTTcYV64QMqZKZwcuaQSP3AZ0tg==" + }, + "spdx-correct": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", "requires": { - "prop-types": "^15.5.10" + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" } }, - "react-dom": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz", - "integrity": "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==", + "spdx-exceptions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==" + }, + "spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", "requires": { - "loose-envify": "^1.1.0", - "scheduler": "^0.23.0" + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" } }, - "react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + "spdx-license-ids": { + "version": "3.0.12", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz", + "integrity": "sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==" }, - "react-moralis": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/react-moralis/-/react-moralis-1.4.2.tgz", - "integrity": "sha512-M6R9+AO4r/ZmJEMbv2IySnp1+8fRvzu1osehAWYqQgN8cPsHWGuDpnmNSd8Q+DegZ/sjiBkfWjuEXFRwrHYorQ==", + "split-on-first": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/split-on-first/-/split-on-first-1.1.0.tgz", + "integrity": "sha512-43ZssAJaMusuKWL8sKUBQXHWOpq8d6CfN/u1p4gUzfJkM05C8rxTmYrkIPTXapZpORA6LkkzcUulJ8FqA7Uudw==" + }, + "sshpk": { + "version": "1.17.0", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", + "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", "requires": { - "fast-deep-equal": "^3.1.3", - "immer": "^9.0.7", - "use-immer": "^0.6.0" + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" }, "dependencies": { - "use-immer": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/use-immer/-/use-immer-0.6.0.tgz", - "integrity": "sha512-dFGRfvWCqPDTOt/S431ETYTg6+uxbpb7A1pptufwXVzGJY3RlXr38+3wyLNpc6SbbmAKjWl6+EP6uW74fkEsXQ==", - "requires": {} + "tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==" } } }, - "react-native-crypto-js": { + "stop-iteration-iterator": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/react-native-crypto-js/-/react-native-crypto-js-1.0.0.tgz", - "integrity": "sha512-FNbLuG/HAdapQoybeZSoes1PWdOj0w242gb+e1R0hicf3Gyj/Mf8M9NaED2AnXVOX01b2FXomwUiw1xP1K+8sA==" - }, - "react-native-fetch-api": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/react-native-fetch-api/-/react-native-fetch-api-3.0.0.tgz", - "integrity": "sha512-g2rtqPjdroaboDKTsJCTlcmtw54E25OjyaunUP0anOZn4Fuo2IKs8BVfe02zVggA/UysbmfSnRJIqtNkAgggNA==", + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", + "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==", + "dev": true, "requires": { - "p-defer": "^3.0.0" + "internal-slot": "^1.0.4" } }, - "react-qr-code": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/react-qr-code/-/react-qr-code-2.0.11.tgz", - "integrity": "sha512-P7mvVM5vk9NjGdHMt4Z0KWeeJYwRAtonHTghZT2r+AASinLUUKQ9wfsGH2lPKsT++gps7hXmaiMGRvwTDEL9OA==", + "stream-browserify": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz", + "integrity": "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==", "requires": { - "prop-types": "^15.8.1", - "qr.js": "0.0.0" + "inherits": "~2.0.4", + "readable-stream": "^3.5.0" } }, - "react-router": { - "version": "6.8.1", - "resolved": "https://registry.npmjs.org/react-router/-/react-router-6.8.1.tgz", - "integrity": "sha512-Jgi8BzAJQ8MkPt8ipXnR73rnD7EmZ0HFFb7jdQU24TynGW1Ooqin2KVDN9voSC+7xhqbbCd2cjGUepb6RObnyg==", + "stream-http": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-3.2.0.tgz", + "integrity": "sha512-Oq1bLqisTyK3TSCXpPbT4sdeYNdmyZJv1LxpEm2vu1ZhK89kSE5YXwZc3cWk0MagGaKriBh9mCFbVGtO+vY29A==", "requires": { - "@remix-run/router": "1.3.2" + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.4", + "readable-stream": "^3.6.0", + "xtend": "^4.0.2" } }, - "react-router-dom": { - "version": "6.8.1", - "resolved": "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.8.1.tgz", - "integrity": "sha512-67EXNfkQgf34P7+PSb6VlBuaacGhkKn3kpE51+P6zYSG2kiRoumXEL6e27zTa9+PGF2MNXbgIUHTVlleLbIcHQ==", + "stream-to-it": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/stream-to-it/-/stream-to-it-0.2.4.tgz", + "integrity": "sha512-4vEbkSs83OahpmBybNJXlJd7d6/RxzkkSdT3I0mnGt79Xd2Kk+e1JqbvAvsQfCeKj3aKb0QIWkyK3/n0j506vQ==", "requires": { - "@remix-run/router": "1.3.2", - "react-router": "6.8.1" + "get-iterator": "^1.0.2" } }, - "read-cache": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", - "integrity": "sha512-Owdv/Ft7IjOgm/i0xvNDZ1LrRANRfew4b2prF3OWMQLxLfu3bS8FVhCsrSCMK4lR56Y9ya+AThoTpDCTxCmpRA==", - "dev": true, + "streaming-iterables": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/streaming-iterables/-/streaming-iterables-6.2.0.tgz", + "integrity": "sha512-3AYC8oB60WyD1ic7uHmN/vm2oRGzRnQ3XFBl/bFMDi1q1+nc5/vjMmiE4vroIya3jG59t87VpyAj/iXYxyw9AA==" + }, + "strict-uri-encode": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz", + "integrity": "sha512-QwiXZgpRcKkhTj2Scnn++4PKtWsH0kpzZ62L2R6c/LUVYv7hVnZqcg2+sMuT6R7Jusu1vviK/MFsu6kNJfWlEQ==" + }, + "string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", "requires": { - "pify": "^2.3.0" + "safe-buffer": "~5.2.0" } }, - "read-pkg": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", - "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", "requires": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^2.5.0", - "parse-json": "^5.0.0", - "type-fest": "^0.6.0" + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" }, "dependencies": { - "hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" + "ansi-regex": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==" }, - "normalize-package-data": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" + }, + "strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", "requires": { - "hosted-git-info": "^2.1.4", - "resolve": "^1.10.0", - "semver": "2 || 3 || 4 || 5", - "validate-npm-package-license": "^3.0.1" + "ansi-regex": "^4.1.0" } - }, - "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==" - }, - "type-fest": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", - "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==" } } }, - "read-pkg-up": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", - "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", + "string.prototype.matchall": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.8.tgz", + "integrity": "sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==", + "dev": true, "requires": { - "find-up": "^4.1.0", - "read-pkg": "^5.2.0", - "type-fest": "^0.8.1" - }, - "dependencies": { - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - "requires": { - "p-locate": "^4.1.0" - } - }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "requires": { - "p-try": "^2.0.0" - } - }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - "requires": { - "p-limit": "^2.2.0" - } - }, - "type-fest": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==" - } + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4", + "get-intrinsic": "^1.1.3", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.3", + "regexp.prototype.flags": "^1.4.3", + "side-channel": "^1.0.4" } }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "string.prototype.trimend": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", + "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", + "dev": true, "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" } }, - "readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "string.prototype.trimstart": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz", + "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==", "dev": true, "requires": { - "picomatch": "^2.2.1" + "call-bind": "^1.0.2", + "define-properties": "^1.1.4", + "es-abstract": "^1.20.4" } }, - "receptacle": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/receptacle/-/receptacle-1.3.2.tgz", - "integrity": "sha512-HrsFvqZZheusncQRiEE7GatOAETrARKV/lnfYicIm8lbvp/JQOdADOfhjBd2DajvoszEyxSM6RlAAIZgEoeu/A==", + "strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, "requires": { - "ms": "^2.1.1" + "ansi-regex": "^5.0.1" } }, - "redent": { + "strip-bom": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", - "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true + }, + "strip-hex-prefix": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz", + "integrity": "sha512-q8d4ue7JGEiVcypji1bALTos+0pWtyGlivAWyPuTkHzuTCJqrK9sWxYQZUq6Nq3cuyv3bm734IhHvHtGGURU6A==", "requires": { - "indent-string": "^4.0.0", - "strip-indent": "^3.0.0" + "is-hex-prefixed": "1.0.0" } }, - "regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" - }, - "regexp.prototype.flags": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", - "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", - "dev": true, + "strip-indent": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", + "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "functions-have-names": "^1.2.2" + "min-indent": "^1.0.0" } }, - "regexpp": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", - "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", + "strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", "dev": true }, - "request": { - "version": "2.88.2", - "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", - "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", + "styled-components": { + "version": "5.3.6", + "resolved": "https://registry.npmjs.org/styled-components/-/styled-components-5.3.6.tgz", + "integrity": "sha512-hGTZquGAaTqhGWldX7hhfzjnIYBZ0IXQXkCYdvF1Sq3DsUaLx6+NTHC5Jj1ooM2F68sBiVz3lvhfwQs/S3l6qg==", "requires": { - "aws-sign2": "~0.7.0", - "aws4": "^1.8.0", - "caseless": "~0.12.0", - "combined-stream": "~1.0.6", - "extend": "~3.0.2", - "forever-agent": "~0.6.1", - "form-data": "~2.3.2", - "har-validator": "~5.1.3", - "http-signature": "~1.2.0", - "is-typedarray": "~1.0.0", - "isstream": "~0.1.2", - "json-stringify-safe": "~5.0.1", - "mime-types": "~2.1.19", - "oauth-sign": "~0.9.0", - "performance-now": "^2.1.0", - "qs": "~6.5.2", - "safe-buffer": "^5.1.2", - "tough-cookie": "~2.5.0", - "tunnel-agent": "^0.6.0", - "uuid": "^3.3.2" + "@babel/helper-module-imports": "^7.0.0", + "@babel/traverse": "^7.4.5", + "@emotion/is-prop-valid": "^1.1.0", + "@emotion/stylis": "^0.8.4", + "@emotion/unitless": "^0.7.4", + "babel-plugin-styled-components": ">= 1.12.0", + "css-to-react-native": "^3.0.0", + "hoist-non-react-statics": "^3.0.0", + "shallowequal": "^1.1.0", + "supports-color": "^5.5.0" }, "dependencies": { - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" + }, + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" + "has-flag": "^3.0.0" } - }, - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" } } }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==" + "styled-jsx": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.1.tgz", + "integrity": "sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==", + "requires": { + "client-only": "0.0.1" + } }, - "require-main-filename": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==" + "superstruct": { + "version": "0.14.2", + "resolved": "https://registry.npmjs.org/superstruct/-/superstruct-0.14.2.tgz", + "integrity": "sha512-nPewA6m9mR3d6k7WkZ8N8zpTWfenFH3q9pA2PkuiZxINr9DKB2+40wEQf0ixn8VaGuJ78AB6iWOtStI+/4FKZQ==" }, - "resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, "requires": { - "is-core-module": "^2.9.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" + "has-flag": "^4.0.0" } }, - "resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true + "supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==" }, - "retimer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/retimer/-/retimer-2.0.0.tgz", - "integrity": "sha512-KLXY85WkEq2V2bKex/LOO1ViXVn2KGYe4PYysAdYdjmraYIUsVkXu8O4am+8+5UbaaGl1qho4aqAAPHNQ4GSbg==" + "swr": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/swr/-/swr-1.3.0.tgz", + "integrity": "sha512-dkghQrOl2ORX9HYrMDtPa7LTVHJjCTeZoB1dqTbnnEDlSvN8JEKpYIYurDfvbQFUUS8Cg8PceFVZNkW0KNNYPw==", + "requires": {} }, - "retry": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.13.1.tgz", - "integrity": "sha512-XQBQ3I8W1Cge0Seh+6gjj03LbmRFWuoszgK9ooCpwYIrhhoO80pfq4cUkU5DkknwfOfFteRwlZ56PYOGYyFWdg==" + "synckit": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.8.5.tgz", + "integrity": "sha512-L1dapNV6vu2s/4Sputv8xGsCdAVlb5nRDMFU/E27D44l5U6cw1g0dGd45uLc+OXjNMmF4ntiMdCimzcjFKQI8Q==", + "dev": true, + "requires": { + "@pkgr/utils": "^2.3.1", + "tslib": "^2.5.0" + } }, - "reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "tailwindcss": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.2.4.tgz", + "integrity": "sha512-AhwtHCKMtR71JgeYDaswmZXhPcW9iuI9Sp2LvZPo9upDZ7231ZJ7eA9RaURbhpXGVlrjX4cFNlB4ieTetEb7hQ==", + "dev": true, + "requires": { + "arg": "^5.0.2", + "chokidar": "^3.5.3", + "color-name": "^1.1.4", + "detective": "^5.2.1", + "didyoumean": "^1.2.2", + "dlv": "^1.1.3", + "fast-glob": "^3.2.12", + "glob-parent": "^6.0.2", + "is-glob": "^4.0.3", + "lilconfig": "^2.0.6", + "micromatch": "^4.0.5", + "normalize-path": "^3.0.0", + "object-hash": "^3.0.0", + "picocolors": "^1.0.0", + "postcss": "^8.4.18", + "postcss-import": "^14.1.0", + "postcss-js": "^4.0.0", + "postcss-load-config": "^3.1.4", + "postcss-nested": "6.0.0", + "postcss-selector-parser": "^6.0.10", + "postcss-value-parser": "^4.2.0", + "quick-lru": "^5.1.1", + "resolve": "^1.22.1" + } + }, + "taos": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/taos/-/taos-1.0.2.tgz", + "integrity": "sha512-wji577+Do1rKf3EMywQFbzvkGCip0v+MjDVkOaNCtqvufmXIBBoQYJbyk3RTQNr3JhDD4ECYUOX4vMCViS/8Og==" + }, + "tapable": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==" + }, + "terser": { + "version": "5.16.3", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.3.tgz", + "integrity": "sha512-v8wWLaS/xt3nE9dgKEWhNUFP6q4kngO5B8eYFUuebsu7Dw/UNAnpUod6UHo04jSSkv8TzKHjZDSd7EXdDQAl8Q==", + "peer": true, + "requires": { + "@jridgewell/source-map": "^0.3.2", + "acorn": "^8.5.0", + "commander": "^2.20.0", + "source-map-support": "~0.5.20" + } + }, + "terser-webpack-plugin": { + "version": "5.3.6", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.6.tgz", + "integrity": "sha512-kfLFk+PoLUQIbLmB1+PZDMRSZS99Mp+/MHqDNmMA6tOItzRt+Npe3E+fsMs5mfcM0wCtrrdU387UnV+vnSffXQ==", + "peer": true, + "requires": { + "@jridgewell/trace-mapping": "^0.3.14", + "jest-worker": "^27.4.5", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.0", + "terser": "^5.14.1" + } + }, + "text-encoding-utf-8": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/text-encoding-utf-8/-/text-encoding-utf-8-1.0.2.tgz", + "integrity": "sha512-8bw4MY9WjdsD2aMtO0OzOCY3pXGYNx2d2FfHRVUKkiCPDWjKuOlhLVASS+pD7VkLTVjW268LYJHwsnPFlBpbAg==" + }, + "text-table": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", "dev": true }, - "rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dev": true, + "throttled-queue": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/throttled-queue/-/throttled-queue-2.1.4.tgz", + "integrity": "sha512-YGdk8sdmr4ge3g+doFj/7RLF5kLM+Mi7DEciu9PHxnMJZMeVuZeTj31g4VE7ekUffx/IdbvrtOCiz62afg0mkg==" + }, + "through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==" + }, + "through2": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", + "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", "requires": { - "glob": "^7.1.3" + "readable-stream": "~2.3.6", + "xtend": "~4.0.1" }, "dependencies": { - "glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "dev": true, + "isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", "requires": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "requires": { + "safe-buffer": "~5.1.0" } } } }, - "ripemd160": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", - "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" - } + "timed-out": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", + "integrity": "sha512-G7r3AhovYtr5YKOWQkta8RKAPb+J9IsO4uVmzjl8AZwfhs8UcUwTiD6gcJYSgOtzyjvQKrKYn41syHbUWMkafA==" }, - "rlp": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/rlp/-/rlp-2.2.7.tgz", - "integrity": "sha512-d5gdPmgQ0Z+AklL2NVXr/IoSjNZFfTVvQWzL/AM2AOcSzYP2xjlb0AC8YyCLc41MSNf6P6QVtjgPdmVtzb+4lQ==", + "timeout-abort-controller": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/timeout-abort-controller/-/timeout-abort-controller-1.1.1.tgz", + "integrity": "sha512-BsF9i3NAJag6T0ZEjki9j654zoafI2X6ayuNd6Tp8+Ul6Tr5s4jo973qFeiWrRSweqvskC+AHDKUmIW4b7pdhQ==", "requires": { - "bn.js": "^5.2.0" + "abort-controller": "^3.0.0", + "retimer": "^2.0.0" } }, - "rpc-websockets": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/rpc-websockets/-/rpc-websockets-7.5.0.tgz", - "integrity": "sha512-9tIRi1uZGy7YmDjErf1Ax3wtqdSSLIlnmL5OtOzgd5eqPKbsPpwDP5whUDO2LQay3Xp0CcHlcNSGzacNRluBaQ==", + "timers-browserify": { + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz", + "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==", "requires": { - "@babel/runtime": "^7.17.2", - "bufferutil": "^4.0.1", - "eventemitter3": "^4.0.7", - "utf-8-validate": "^5.0.2", - "uuid": "^8.3.2", - "ws": "^8.5.0" - }, - "dependencies": { - "ws": { - "version": "8.12.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.12.1.tgz", - "integrity": "sha512-1qo+M9Ba+xNhPB+YTWUlK6M17brTut5EXbcBaMRN5pH5dFrXz7lzz1ChFSUq3bOUl8yEvSenhHmYUNJxFzdJew==", - "requires": {} - } + "setimmediate": "^1.0.4" } }, - "run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "timestamp-nano": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/timestamp-nano/-/timestamp-nano-1.0.1.tgz", + "integrity": "sha512-4oGOVZWTu5sl89PtCDnhQBSt7/vL1zVEwAfxH1p49JhTosxzVQWYBYFRFZ8nJmo0G6f824iyP/44BFAwIoKvIA==" + }, + "tiny-glob": { + "version": "0.2.9", + "resolved": "https://registry.npmjs.org/tiny-glob/-/tiny-glob-0.2.9.tgz", + "integrity": "sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==", "dev": true, "requires": { - "queue-microtask": "^1.2.2" + "globalyzer": "0.1.0", + "globrex": "^0.1.2" } }, - "rustbn.js": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/rustbn.js/-/rustbn.js-0.2.0.tgz", - "integrity": "sha512-4VlvkRUuCJvr2J6Y0ImW7NvTCriMi7ErOAqWk1y69vAdoNIzCF3yPmgeNzx+RQTLEDFq5sHfscn1MwHxP9hNfA==" - }, - "safari-14-idb-fix": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/safari-14-idb-fix/-/safari-14-idb-fix-3.0.0.tgz", - "integrity": "sha512-eBNFLob4PMq8JA1dGyFn6G97q3/WzNtFK4RnzT1fnLq+9RyrGknzYiM/9B12MnKAxuj1IXr7UKYtTNtjyKMBog==" - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" - }, - "safe-event-emitter": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/safe-event-emitter/-/safe-event-emitter-1.0.1.tgz", - "integrity": "sha512-e1wFe99A91XYYxoQbcq2ZJUWurxEyP8vfz7A7vuUe1s95q8r5ebraVaA1BukYJcpM6V16ugWoD9vngi8Ccu5fg==", - "requires": { - "events": "^3.0.0" - } + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==" }, - "safe-regex-test": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", - "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", "dev": true, "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "is-regex": "^1.1.4" + "is-number": "^7.0.0" } }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + "toggle-selection": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/toggle-selection/-/toggle-selection-1.0.6.tgz", + "integrity": "sha512-BiZS+C1OS8g/q2RRbJmy59xpyghNBqrr6k5L/uKBGRsTfxmu3ffiRnd8mlGPUVayg8pvfi5urfnu8TU7DVOkLQ==" }, - "scheduler": { - "version": "0.23.0", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.0.tgz", - "integrity": "sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==", + "tough-cookie": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", "requires": { - "loose-envify": "^1.1.0" + "psl": "^1.1.28", + "punycode": "^2.1.1" } }, - "schema-utils": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz", - "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==", - "peer": true, - "requires": { - "@types/json-schema": "^7.0.8", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } + "tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" }, - "scrypt-js": { + "trim-newlines": { "version": "3.0.1", - "resolved": "https://registry.npmjs.org/scrypt-js/-/scrypt-js-3.0.1.tgz", - "integrity": "sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA==" + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz", + "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==" }, - "secp256k1": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-4.0.3.tgz", - "integrity": "sha512-NLZVf+ROMxwtEj3Xa562qgv2BK5e2WNmXPiOdVIPLgs6lyTzMvBq0aWTYMI5XCP9jZMVKOcqZLw/Wc4vDkuxhA==", + "ts-custom-error": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/ts-custom-error/-/ts-custom-error-3.3.1.tgz", + "integrity": "sha512-5OX1tzOjxWEgsr/YEUWSuPrQ00deKLh6D7OTWcvNHm12/7QPyRh8SYpyWvA4IZv8H/+GQWQEh/kwo95Q9OVW1A==" + }, + "ts-node": { + "version": "9.1.1", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-9.1.1.tgz", + "integrity": "sha512-hPlt7ZACERQGf03M253ytLY3dHbGNGrAq9qIHWUY9XHYl1z7wYngSr3OQ5xmui8o2AaxsONxIzjafLUiWBo1Fg==", "requires": { - "elliptic": "^6.5.4", - "node-addon-api": "^2.0.0", - "node-gyp-build": "^4.2.0" + "arg": "^4.1.0", + "create-require": "^1.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "source-map-support": "^0.5.17", + "yn": "3.1.1" + }, + "dependencies": { + "arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==" + } } }, - "semaphore": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/semaphore/-/semaphore-1.1.0.tgz", - "integrity": "sha512-O4OZEaNtkMd/K0i6js9SL+gqy0ZCBMgUvlSqHKi4IBdjhe7wB8pwztUk1BbZ1fmrvpwFrPbHzqd2w5pTcJH6LA==" + "tsconfig-paths": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz", + "integrity": "sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==", + "dev": true, + "requires": { + "@types/json5": "^0.0.29", + "json5": "^1.0.1", + "minimist": "^1.2.6", + "strip-bom": "^3.0.0" + } }, - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + "tslib": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", + "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==" }, - "serialize-javascript": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz", - "integrity": "sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w==", - "peer": true, + "tsutils": { + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "dev": true, "requires": { - "randombytes": "^2.1.0" + "tslib": "^1.8.1" + }, + "dependencies": { + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "dev": true + } } }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==" - }, - "set-immediate-shim": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", - "integrity": "sha512-Li5AOqrZWCVA2n5kryzEmqai6bKSIvpz5oUJHPVj6+dsbD3X1ixtsY5tEnsaNpH3pFAHmG8eIHUrtEtohrg+UQ==" - }, - "setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==" + "tty-browserify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz", + "integrity": "sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==" }, - "sha.js": { - "version": "2.4.11", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", - "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", + "tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", "requires": { - "inherits": "^2.0.1", "safe-buffer": "^5.0.1" } }, - "shallowequal": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/shallowequal/-/shallowequal-1.1.0.tgz", - "integrity": "sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==" + "tweetnacl": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz", + "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==" }, - "shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "tweetnacl-util": { + "version": "0.15.1", + "resolved": "https://registry.npmjs.org/tweetnacl-util/-/tweetnacl-util-0.15.1.tgz", + "integrity": "sha512-RKJBIj8lySrShN4w6i/BonWp2Z/uxwC3h4y7xsRrpP59ZboCd0GpEVsOnMDYLMmKBpYhb5TgHzZXy7wTfYFBRw==" + }, + "type": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", + "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==" + }, + "type-check": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", + "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", "dev": true, "requires": { - "shebang-regex": "^3.0.0" + "prelude-ls": "^1.2.1" } }, - "shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "dev": true }, - "side-channel": { + "typed-array-length": { "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", + "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", "dev": true, "requires": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "is-typed-array": "^1.1.9" } }, - "simple-concat": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", - "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==" - }, - "simple-get": { - "version": "2.8.2", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-2.8.2.tgz", - "integrity": "sha512-Ijd/rV5o+mSBBs4F/x9oDPtTx9Zb6X9brmnXvMW4J7IR15ngi9q5xxqWBKU744jTZiaXtxaPL7uHG6vtN8kUkw==", + "typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", "requires": { - "decompress-response": "^3.3.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" + "is-typedarray": "^1.0.0" } }, - "slash": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", - "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", - "dev": true - }, - "socket.io-client": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.6.0.tgz", - "integrity": "sha512-2XOp18xnGghUICSd5ziUIS4rB0dhr6S8OvAps8y+HhOjFQlqGcf+FIh6fCIsKKZyWFxJeFPrZRNPGsHDTsz1Ug==", - "requires": { - "@socket.io/component-emitter": "~3.1.0", - "debug": "~4.3.2", - "engine.io-client": "~6.4.0", - "socket.io-parser": "~4.2.1" - } + "typescript": { + "version": "4.9.5", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", + "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==" }, - "socket.io-parser": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.2.2.tgz", - "integrity": "sha512-DJtziuKypFkMMHCm2uIshOYC7QaylbtzQwiMYDuCKy3OPkjLzu4B2vAhTlqipRHHzrI0NJeBAizTK7X+6m1jVw==", + "uint8arrays": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-3.1.1.tgz", + "integrity": "sha512-+QJa8QRnbdXVpHYjLoTpJIdCTiw9Ir62nocClWuXIq2JIh4Uta0cQsTSpFL678p2CN8B+XSApwcU+pQEqVpKWg==", "requires": { - "@socket.io/component-emitter": "~3.1.0", - "debug": "~4.3.1" + "multiformats": "^9.4.2" } }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "peer": true - }, - "source-map-js": { + "unbox-primitive": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", - "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==" - }, - "source-map-support": { - "version": "0.5.21", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz", - "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==", - "peer": true, + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "dev": true, "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" } }, - "sparse-array": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/sparse-array/-/sparse-array-1.3.2.tgz", - "integrity": "sha512-ZT711fePGn3+kQyLuv1fpd3rNSkNF8vd5Kv2D+qnOANeyKs3fx6bUMGWRPvgTTcYV64QMqZKZwcuaQSP3AZ0tg==" + "unload": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/unload/-/unload-2.4.1.tgz", + "integrity": "sha512-IViSAm8Z3sRBYA+9wc0fLQmU9Nrxb16rcDmIiR6Y9LJSZzI7QY5QsDhqPpKOjAn0O9/kfK1TfNEMMAGPTIraPw==" }, - "spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", + "update-browserslist-db": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", + "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", "requires": { - "spdx-expression-parse": "^3.0.0", - "spdx-license-ids": "^3.0.0" + "escalade": "^3.1.1", + "picocolors": "^1.0.0" } }, - "spdx-exceptions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==" - }, - "spdx-expression-parse": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", "requires": { - "spdx-exceptions": "^2.1.0", - "spdx-license-ids": "^3.0.0" + "punycode": "^2.1.0" } }, - "spdx-license-ids": { - "version": "3.0.12", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz", - "integrity": "sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==" - }, - "split-on-first": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/split-on-first/-/split-on-first-1.1.0.tgz", - "integrity": "sha512-43ZssAJaMusuKWL8sKUBQXHWOpq8d6CfN/u1p4gUzfJkM05C8rxTmYrkIPTXapZpORA6LkkzcUulJ8FqA7Uudw==" - }, - "sshpk": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz", - "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==", + "url": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", + "integrity": "sha512-kbailJa29QrtXnxgq+DdCEGlbTeYM2eJUxsz6vjZavrCYPMIFHMKQmSKYAIuUK2i7hgPm28a8piX5NTUtM/LKQ==", "requires": { - "asn1": "~0.2.3", - "assert-plus": "^1.0.0", - "bcrypt-pbkdf": "^1.0.0", - "dashdash": "^1.12.0", - "ecc-jsbn": "~0.1.1", - "getpass": "^0.1.1", - "jsbn": "~0.1.0", - "safer-buffer": "^2.0.2", - "tweetnacl": "~0.14.0" + "punycode": "1.3.2", + "querystring": "0.2.0" }, "dependencies": { - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha512-KXXFFdAbFXY4geFIwoyNK+f5Z1b7swfXABfL7HXCmoIWMKU3dmS26672A4EeQtDzLKy7SXmfBu51JolvEKwtGA==" + "punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==" } } }, - "stop-iteration-iterator": { + "url-set-query": { "version": "1.0.0", - "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", - "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==", - "dev": true, + "resolved": "https://registry.npmjs.org/url-set-query/-/url-set-query-1.0.0.tgz", + "integrity": "sha512-3AChu4NiXquPfeckE5R5cGdiHCMWJx1dwCWOmWIL4KHAziJNOFIYJlpGFeKDvwLPHovZRCxK3cYlwzqI9Vp+Gg==" + }, + "utf-8-validate": { + "version": "5.0.10", + "resolved": "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-5.0.10.tgz", + "integrity": "sha512-Z6czzLq4u8fPOyx7TU6X3dvUZVvoJmxSQ+IcrlmagKhilxlhZgxPK6C5Jqbkw1IDUmFTM+cz9QDnnLTwDz/2gQ==", "requires": { - "internal-slot": "^1.0.4" + "node-gyp-build": "^4.3.0" } }, - "stream-browserify": { + "utf8": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz", - "integrity": "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==", - "requires": { - "inherits": "~2.0.4", - "readable-stream": "^3.5.0" - } + "resolved": "https://registry.npmjs.org/utf8/-/utf8-3.0.0.tgz", + "integrity": "sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ==" }, - "stream-http": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-3.2.0.tgz", - "integrity": "sha512-Oq1bLqisTyK3TSCXpPbT4sdeYNdmyZJv1LxpEm2vu1ZhK89kSE5YXwZc3cWk0MagGaKriBh9mCFbVGtO+vY29A==", + "util": { + "version": "0.12.5", + "resolved": "https://registry.npmjs.org/util/-/util-0.12.5.tgz", + "integrity": "sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==", "requires": { - "builtin-status-codes": "^3.0.0", - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "xtend": "^4.0.2" + "inherits": "^2.0.3", + "is-arguments": "^1.0.4", + "is-generator-function": "^1.0.7", + "is-typed-array": "^1.1.3", + "which-typed-array": "^1.1.2" } }, - "stream-to-it": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/stream-to-it/-/stream-to-it-0.2.4.tgz", - "integrity": "sha512-4vEbkSs83OahpmBybNJXlJd7d6/RxzkkSdT3I0mnGt79Xd2Kk+e1JqbvAvsQfCeKj3aKb0QIWkyK3/n0j506vQ==", + "util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" + }, + "uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" + }, + "validate-npm-package-license": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", "requires": { - "get-iterator": "^1.0.2" + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" } }, - "streaming-iterables": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/streaming-iterables/-/streaming-iterables-6.2.0.tgz", - "integrity": "sha512-3AYC8oB60WyD1ic7uHmN/vm2oRGzRnQ3XFBl/bFMDi1q1+nc5/vjMmiE4vroIya3jG59t87VpyAj/iXYxyw9AA==" - }, - "strict-uri-encode": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz", - "integrity": "sha512-QwiXZgpRcKkhTj2Scnn++4PKtWsH0kpzZ62L2R6c/LUVYv7hVnZqcg2+sMuT6R7Jusu1vviK/MFsu6kNJfWlEQ==" + "varint": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/varint/-/varint-6.0.0.tgz", + "integrity": "sha512-cXEIW6cfr15lFv563k4GuVuW/fiwjknytD37jIOLSdSWuOI6WnO/oKwmP2FQTU2l01LP8/M5TSAJpzUaGe3uWg==" }, - "string_decoder": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", "requires": { - "safe-buffer": "~5.2.0" + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" } }, - "string-width": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", + "vm-browserify": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", + "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==" + }, + "w3name": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/w3name/-/w3name-1.0.8.tgz", + "integrity": "sha512-MjCUGATeNm70YE1Zro4mykaoRI9dTTlr44AB83Qt6OaRlcLvH9g0gyLwAMd3gBm8oDVU/RrDAxsDGcO8r+RIuQ==", "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.1.0" + "@web-std/fetch": "^4.1.0", + "cborg": "^1.9.4", + "ipns": "^0.16.0", + "libp2p-crypto": "^0.21.2", + "throttled-queue": "^2.1.4", + "uint8arrays": "^3.0.0" }, "dependencies": { - "ansi-regex": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", - "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==" - }, - "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==" + "@web-std/fetch": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/@web-std/fetch/-/fetch-4.1.0.tgz", + "integrity": "sha512-ZRizMcP8YyuRlhIsRYNFD9x/w28K7kbUhNGmKM9hDy4qeQ5xMTk//wA89EF+Clbl6EP4ksmCcN+4TqBMSRL8Zw==", + "requires": { + "@web-std/blob": "^3.0.3", + "@web-std/form-data": "^3.0.2", + "@web-std/stream": "^1.0.1", + "@web3-storage/multipart-parser": "^1.0.0", + "data-uri-to-buffer": "^3.0.1", + "mrmime": "^1.0.0" + } }, - "strip-ansi": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", - "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "@web-std/stream": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@web-std/stream/-/stream-1.0.1.tgz", + "integrity": "sha512-tsz4Y0WNDgFA5jwLSeV7/UV5rfMIlj0cPsSLVfTihjaVW0OJPd5NxJ3le1B3yLyqqzRpeG5OAfJAADLc4VoGTA==", "requires": { - "ansi-regex": "^4.1.0" + "web-streams-polyfill": "^3.1.1" } } } }, - "string.prototype.matchall": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.8.tgz", - "integrity": "sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "get-intrinsic": "^1.1.3", - "has-symbols": "^1.0.3", - "internal-slot": "^1.0.3", - "regexp.prototype.flags": "^1.4.3", - "side-channel": "^1.0.4" - } - }, - "string.prototype.trimend": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", - "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" - } - }, - "string.prototype.trimstart": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz", - "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==", - "dev": true, + "watchpack": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", + "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", + "peer": true, "requires": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" } }, - "strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, + "web-encoding": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/web-encoding/-/web-encoding-1.1.5.tgz", + "integrity": "sha512-HYLeVCdJ0+lBYV2FvNZmv3HJ2Nt0QYXqZojk3d9FJOLkwnuhzM9tmamh8d7HPM8QqjKH8DeHkFTx+CFlWpZZDA==", "requires": { - "ansi-regex": "^5.0.1" + "@zxing/text-encoding": "0.9.0", + "util": "^0.12.3" } }, - "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", - "dev": true - }, - "strip-hex-prefix": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz", - "integrity": "sha512-q8d4ue7JGEiVcypji1bALTos+0pWtyGlivAWyPuTkHzuTCJqrK9sWxYQZUq6Nq3cuyv3bm734IhHvHtGGURU6A==", - "requires": { - "is-hex-prefixed": "1.0.0" - } + "web-streams-polyfill": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.2.1.tgz", + "integrity": "sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q==" }, - "strip-indent": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", - "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", + "web3-core": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/web3-core/-/web3-core-1.5.2.tgz", + "integrity": "sha512-sebMpQbg3kbh3vHUbHrlKGKOxDWqjgt8KatmTBsTAWj/HwWYVDzeX+2Q84+swNYsm2DrTBVFlqTErFUwPBvyaA==", "requires": { - "min-indent": "^1.0.0" + "@types/bn.js": "^4.11.5", + "@types/node": "^12.12.6", + "bignumber.js": "^9.0.0", + "web3-core-helpers": "1.5.2", + "web3-core-method": "1.5.2", + "web3-core-requestmanager": "1.5.2", + "web3-utils": "1.5.2" + }, + "dependencies": { + "@types/bn.js": { + "version": "4.11.6", + "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-4.11.6.tgz", + "integrity": "sha512-pqr857jrp2kPuO9uRjZ3PwnJTjoQy+fcdxvBTvHm6dkmEL9q+hDD/2j/0ELOBPtPnS8LjCX0gI9nbl8lVkadpg==", + "requires": { + "@types/node": "*" + } + }, + "@types/node": { + "version": "12.20.55", + "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", + "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + }, + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "web3-utils": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.5.2.tgz", + "integrity": "sha512-quTtTeQJHYSxAwIBOCGEcQtqdVcFWX6mCFNoqnp+mRbq+Hxbs8CGgO/6oqfBx4OvxIOfCpgJWYVHswRXnbEu9Q==", + "requires": { + "bn.js": "^4.11.9", + "eth-lib": "0.2.8", + "ethereum-bloom-filters": "^1.0.6", + "ethjs-unit": "0.1.6", + "number-to-bn": "1.7.0", + "randombytes": "^2.1.0", + "utf8": "3.0.0" + } + } } }, - "strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - "dev": true - }, - "styled-components": { - "version": "5.3.6", - "resolved": "https://registry.npmjs.org/styled-components/-/styled-components-5.3.6.tgz", - "integrity": "sha512-hGTZquGAaTqhGWldX7hhfzjnIYBZ0IXQXkCYdvF1Sq3DsUaLx6+NTHC5Jj1ooM2F68sBiVz3lvhfwQs/S3l6qg==", - "requires": { - "@babel/helper-module-imports": "^7.0.0", - "@babel/traverse": "^7.4.5", - "@emotion/is-prop-valid": "^1.1.0", - "@emotion/stylis": "^0.8.4", - "@emotion/unitless": "^0.7.4", - "babel-plugin-styled-components": ">= 1.12.0", - "css-to-react-native": "^3.0.0", - "hoist-non-react-statics": "^3.0.0", - "shallowequal": "^1.1.0", - "supports-color": "^5.5.0" + "web3-core-helpers": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/web3-core-helpers/-/web3-core-helpers-1.5.2.tgz", + "integrity": "sha512-U7LJoeUdQ3aY9t5gU7t/1XpcApsWm+4AcW5qKl/44ZxD44w0Dmsq1c5zJm3GuLr/a9MwQfXK4lpmvxVQWHHQRg==", + "requires": { + "web3-eth-iban": "1.5.2", + "web3-utils": "1.5.2" }, "dependencies": { - "has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==" + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "web3-utils": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.5.2.tgz", + "integrity": "sha512-quTtTeQJHYSxAwIBOCGEcQtqdVcFWX6mCFNoqnp+mRbq+Hxbs8CGgO/6oqfBx4OvxIOfCpgJWYVHswRXnbEu9Q==", "requires": { - "has-flag": "^3.0.0" + "bn.js": "^4.11.9", + "eth-lib": "0.2.8", + "ethereum-bloom-filters": "^1.0.6", + "ethjs-unit": "0.1.6", + "number-to-bn": "1.7.0", + "randombytes": "^2.1.0", + "utf8": "3.0.0" } } } }, - "styled-jsx": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/styled-jsx/-/styled-jsx-5.1.1.tgz", - "integrity": "sha512-pW7uC1l4mBZ8ugbiZrcIsiIvVx1UmTfw7UkC3Um2tmfUq9Bhk8IiyEIPl6F8agHgjzku6j0xQEZbfA5uSgSaCw==", + "web3-core-method": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/web3-core-method/-/web3-core-method-1.5.2.tgz", + "integrity": "sha512-/mC5t9UjjJoQmJJqO5nWK41YHo+tMzFaT7Tp7jDCQsBkinE68KsUJkt0jzygpheW84Zra0DVp6q19gf96+cugg==", "requires": { - "client-only": "0.0.1" + "@ethereumjs/common": "^2.4.0", + "@ethersproject/transactions": "^5.0.0-beta.135", + "web3-core-helpers": "1.5.2", + "web3-core-promievent": "1.5.2", + "web3-core-subscriptions": "1.5.2", + "web3-utils": "1.5.2" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "web3-utils": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.5.2.tgz", + "integrity": "sha512-quTtTeQJHYSxAwIBOCGEcQtqdVcFWX6mCFNoqnp+mRbq+Hxbs8CGgO/6oqfBx4OvxIOfCpgJWYVHswRXnbEu9Q==", + "requires": { + "bn.js": "^4.11.9", + "eth-lib": "0.2.8", + "ethereum-bloom-filters": "^1.0.6", + "ethjs-unit": "0.1.6", + "number-to-bn": "1.7.0", + "randombytes": "^2.1.0", + "utf8": "3.0.0" + } + } } }, - "superstruct": { - "version": "0.14.2", - "resolved": "https://registry.npmjs.org/superstruct/-/superstruct-0.14.2.tgz", - "integrity": "sha512-nPewA6m9mR3d6k7WkZ8N8zpTWfenFH3q9pA2PkuiZxINr9DKB2+40wEQf0ixn8VaGuJ78AB6iWOtStI+/4FKZQ==" - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, + "web3-core-promievent": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/web3-core-promievent/-/web3-core-promievent-1.5.2.tgz", + "integrity": "sha512-5DacbJXe98ozSor7JlkTNCy6G8945VunRRkPxMk98rUrg60ECVEM/vuefk1atACzjQsKx6tmLZuHxbJQ64TQeQ==", "requires": { - "has-flag": "^4.0.0" + "eventemitter3": "4.0.4" + }, + "dependencies": { + "eventemitter3": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", + "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==" + } } }, - "supports-preserve-symlinks-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==" - }, - "swr": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/swr/-/swr-1.3.0.tgz", - "integrity": "sha512-dkghQrOl2ORX9HYrMDtPa7LTVHJjCTeZoB1dqTbnnEDlSvN8JEKpYIYurDfvbQFUUS8Cg8PceFVZNkW0KNNYPw==", - "requires": {} - }, - "synckit": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.8.5.tgz", - "integrity": "sha512-L1dapNV6vu2s/4Sputv8xGsCdAVlb5nRDMFU/E27D44l5U6cw1g0dGd45uLc+OXjNMmF4ntiMdCimzcjFKQI8Q==", - "dev": true, + "web3-core-requestmanager": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/web3-core-requestmanager/-/web3-core-requestmanager-1.5.2.tgz", + "integrity": "sha512-oRVW9OrAsXN2JIZt68OEg1Mb1A9a/L3JAGMv15zLEFEnJEGw0KQsGK1ET2kvZBzvpFd5G0EVkYCnx7WDe4HSNw==", "requires": { - "@pkgr/utils": "^2.3.1", - "tslib": "^2.5.0" + "util": "^0.12.0", + "web3-core-helpers": "1.5.2", + "web3-providers-http": "1.5.2", + "web3-providers-ipc": "1.5.2", + "web3-providers-ws": "1.5.2" } }, - "tailwindcss": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.2.4.tgz", - "integrity": "sha512-AhwtHCKMtR71JgeYDaswmZXhPcW9iuI9Sp2LvZPo9upDZ7231ZJ7eA9RaURbhpXGVlrjX4cFNlB4ieTetEb7hQ==", - "dev": true, + "web3-core-subscriptions": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/web3-core-subscriptions/-/web3-core-subscriptions-1.5.2.tgz", + "integrity": "sha512-hapI4rKFk22yurtIv0BYvkraHsM7epA4iI8Np+HuH6P9DD0zj/llaps6TXLM9HyacLBRwmOLZmr+pHBsPopUnQ==", "requires": { - "arg": "^5.0.2", - "chokidar": "^3.5.3", - "color-name": "^1.1.4", - "detective": "^5.2.1", - "didyoumean": "^1.2.2", - "dlv": "^1.1.3", - "fast-glob": "^3.2.12", - "glob-parent": "^6.0.2", - "is-glob": "^4.0.3", - "lilconfig": "^2.0.6", - "micromatch": "^4.0.5", - "normalize-path": "^3.0.0", - "object-hash": "^3.0.0", - "picocolors": "^1.0.0", - "postcss": "^8.4.18", - "postcss-import": "^14.1.0", - "postcss-js": "^4.0.0", - "postcss-load-config": "^3.1.4", - "postcss-nested": "6.0.0", - "postcss-selector-parser": "^6.0.10", - "postcss-value-parser": "^4.2.0", - "quick-lru": "^5.1.1", - "resolve": "^1.22.1" + "eventemitter3": "4.0.4", + "web3-core-helpers": "1.5.2" + }, + "dependencies": { + "eventemitter3": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", + "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==" + } } }, - "taos": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/taos/-/taos-1.0.2.tgz", - "integrity": "sha512-wji577+Do1rKf3EMywQFbzvkGCip0v+MjDVkOaNCtqvufmXIBBoQYJbyk3RTQNr3JhDD4ECYUOX4vMCViS/8Og==" - }, - "tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==" - }, - "terser": { - "version": "5.16.3", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.3.tgz", - "integrity": "sha512-v8wWLaS/xt3nE9dgKEWhNUFP6q4kngO5B8eYFUuebsu7Dw/UNAnpUod6UHo04jSSkv8TzKHjZDSd7EXdDQAl8Q==", - "peer": true, + "web3-eth-abi": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/web3-eth-abi/-/web3-eth-abi-1.8.2.tgz", + "integrity": "sha512-Om9g3kaRNjqiNPAgKwGT16y+ZwtBzRe4ZJFGjLiSs6v5I7TPNF+rRMWuKnR6jq0azQZDj6rblvKFMA49/k48Og==", "requires": { - "@jridgewell/source-map": "^0.3.2", - "acorn": "^8.5.0", - "commander": "^2.20.0", - "source-map-support": "~0.5.20" + "@ethersproject/abi": "^5.6.3", + "web3-utils": "1.8.2" } }, - "terser-webpack-plugin": { - "version": "5.3.6", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.6.tgz", - "integrity": "sha512-kfLFk+PoLUQIbLmB1+PZDMRSZS99Mp+/MHqDNmMA6tOItzRt+Npe3E+fsMs5mfcM0wCtrrdU387UnV+vnSffXQ==", - "peer": true, + "web3-eth-iban": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/web3-eth-iban/-/web3-eth-iban-1.5.2.tgz", + "integrity": "sha512-C04YDXuSG/aDwOHSX+HySBGb0KraiAVt+/l1Mw7y/fCUrKC/K0yYzMYqY/uYOcvLtepBPsC4ZfUYWUBZ2PO8Vg==", "requires": { - "@jridgewell/trace-mapping": "^0.3.14", - "jest-worker": "^27.4.5", - "schema-utils": "^3.1.1", - "serialize-javascript": "^6.0.0", - "terser": "^5.14.1" + "bn.js": "^4.11.9", + "web3-utils": "1.5.2" + }, + "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "web3-utils": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.5.2.tgz", + "integrity": "sha512-quTtTeQJHYSxAwIBOCGEcQtqdVcFWX6mCFNoqnp+mRbq+Hxbs8CGgO/6oqfBx4OvxIOfCpgJWYVHswRXnbEu9Q==", + "requires": { + "bn.js": "^4.11.9", + "eth-lib": "0.2.8", + "ethereum-bloom-filters": "^1.0.6", + "ethjs-unit": "0.1.6", + "number-to-bn": "1.7.0", + "randombytes": "^2.1.0", + "utf8": "3.0.0" + } + } } }, - "text-encoding-utf-8": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/text-encoding-utf-8/-/text-encoding-utf-8-1.0.2.tgz", - "integrity": "sha512-8bw4MY9WjdsD2aMtO0OzOCY3pXGYNx2d2FfHRVUKkiCPDWjKuOlhLVASS+pD7VkLTVjW268LYJHwsnPFlBpbAg==" - }, - "text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", - "dev": true - }, - "throttled-queue": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/throttled-queue/-/throttled-queue-2.1.4.tgz", - "integrity": "sha512-YGdk8sdmr4ge3g+doFj/7RLF5kLM+Mi7DEciu9PHxnMJZMeVuZeTj31g4VE7ekUffx/IdbvrtOCiz62afg0mkg==" - }, - "through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==" - }, - "through2": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", + "web3-provider-engine": { + "version": "16.0.1", + "resolved": "https://registry.npmjs.org/web3-provider-engine/-/web3-provider-engine-16.0.1.tgz", + "integrity": "sha512-/Eglt2aocXMBiDj7Se/lyZnNDaHBaoJlaUfbP5HkLJQC/HlGbR+3/W+dINirlJDhh7b54DzgykqY7ksaU5QgTg==", "requires": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" + "async": "^2.5.0", + "backoff": "^2.5.0", + "clone": "^2.0.0", + "cross-fetch": "^2.1.0", + "eth-block-tracker": "^4.4.2", + "eth-json-rpc-filters": "^4.2.1", + "eth-json-rpc-infura": "^5.1.0", + "eth-json-rpc-middleware": "^6.0.0", + "eth-rpc-errors": "^3.0.0", + "eth-sig-util": "^1.4.2", + "ethereumjs-block": "^1.2.2", + "ethereumjs-tx": "^1.2.0", + "ethereumjs-util": "^5.1.5", + "ethereumjs-vm": "^2.3.4", + "json-stable-stringify": "^1.0.1", + "promise-to-callback": "^1.0.0", + "readable-stream": "^2.2.9", + "request": "^2.85.0", + "semaphore": "^1.0.3", + "ws": "^5.1.1", + "xhr": "^2.2.0", + "xtend": "^4.0.1" }, "dependencies": { + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "eth-rpc-errors": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/eth-rpc-errors/-/eth-rpc-errors-3.0.0.tgz", + "integrity": "sha512-iPPNHPrLwUlR9xCSYm7HHQjWBasor3+KZfRvwEWxMz3ca0yqnlBeJrnyphkGIXZ4J7AMAaOLmwy4AWhnxOiLxg==", + "requires": { + "fast-safe-stringify": "^2.0.6" + } + }, + "ethereumjs-util": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", + "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "requires": { + "bn.js": "^4.11.0", + "create-hash": "^1.1.2", + "elliptic": "^6.5.2", + "ethereum-cryptography": "^0.1.3", + "ethjs-util": "^0.1.3", + "rlp": "^2.0.0", + "safe-buffer": "^5.1.1" + } + }, "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", @@ -25701,789 +27338,614 @@ "requires": { "safe-buffer": "~5.1.0" } + }, + "ws": { + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-5.2.3.tgz", + "integrity": "sha512-jZArVERrMsKUatIdnLzqvcfydI85dvd/Fp1u/VOpfdDWQ4c9qWXe+VIeAbQ5FrDwciAkr+lzofXLz3Kuf26AOA==", + "requires": { + "async-limiter": "~1.0.0" + } } - } - }, - "timed-out": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/timed-out/-/timed-out-4.0.1.tgz", - "integrity": "sha512-G7r3AhovYtr5YKOWQkta8RKAPb+J9IsO4uVmzjl8AZwfhs8UcUwTiD6gcJYSgOtzyjvQKrKYn41syHbUWMkafA==" - }, - "timeout-abort-controller": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/timeout-abort-controller/-/timeout-abort-controller-1.1.1.tgz", - "integrity": "sha512-BsF9i3NAJag6T0ZEjki9j654zoafI2X6ayuNd6Tp8+Ul6Tr5s4jo973qFeiWrRSweqvskC+AHDKUmIW4b7pdhQ==", - "requires": { - "abort-controller": "^3.0.0", - "retimer": "^2.0.0" - } - }, - "timers-browserify": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz", - "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==", - "requires": { - "setimmediate": "^1.0.4" - } - }, - "timestamp-nano": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/timestamp-nano/-/timestamp-nano-1.0.1.tgz", - "integrity": "sha512-4oGOVZWTu5sl89PtCDnhQBSt7/vL1zVEwAfxH1p49JhTosxzVQWYBYFRFZ8nJmo0G6f824iyP/44BFAwIoKvIA==" - }, - "tiny-glob": { - "version": "0.2.9", - "resolved": "https://registry.npmjs.org/tiny-glob/-/tiny-glob-0.2.9.tgz", - "integrity": "sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==", - "dev": true, - "requires": { - "globalyzer": "0.1.0", - "globrex": "^0.1.2" - } - }, - "to-fast-properties": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==" - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "requires": { - "is-number": "^7.0.0" - } - }, - "toggle-selection": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/toggle-selection/-/toggle-selection-1.0.6.tgz", - "integrity": "sha512-BiZS+C1OS8g/q2RRbJmy59xpyghNBqrr6k5L/uKBGRsTfxmu3ffiRnd8mlGPUVayg8pvfi5urfnu8TU7DVOkLQ==" - }, - "tough-cookie": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", - "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", - "requires": { - "psl": "^1.1.28", - "punycode": "^2.1.1" - } - }, - "tr46": { - "version": "0.0.3", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==" - }, - "trim-newlines": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz", - "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==" - }, - "ts-custom-error": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/ts-custom-error/-/ts-custom-error-3.3.1.tgz", - "integrity": "sha512-5OX1tzOjxWEgsr/YEUWSuPrQ00deKLh6D7OTWcvNHm12/7QPyRh8SYpyWvA4IZv8H/+GQWQEh/kwo95Q9OVW1A==" - }, - "tsconfig-paths": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz", - "integrity": "sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==", - "dev": true, - "requires": { - "@types/json5": "^0.0.29", - "json5": "^1.0.1", - "minimist": "^1.2.6", - "strip-bom": "^3.0.0" - } - }, - "tslib": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.0.tgz", - "integrity": "sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg==" - }, - "tsutils": { - "version": "3.21.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", - "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", - "dev": true, - "requires": { - "tslib": "^1.8.1" - }, - "dependencies": { - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true - } - } - }, - "tty-browserify": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz", - "integrity": "sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==" - }, - "tunnel-agent": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", - "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==", - "requires": { - "safe-buffer": "^5.0.1" - } - }, - "tweetnacl": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz", - "integrity": "sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==" - }, - "tweetnacl-util": { - "version": "0.15.1", - "resolved": "https://registry.npmjs.org/tweetnacl-util/-/tweetnacl-util-0.15.1.tgz", - "integrity": "sha512-RKJBIj8lySrShN4w6i/BonWp2Z/uxwC3h4y7xsRrpP59ZboCd0GpEVsOnMDYLMmKBpYhb5TgHzZXy7wTfYFBRw==" - }, - "type": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", - "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==" - }, - "type-check": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", - "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", - "dev": true, - "requires": { - "prelude-ls": "^1.2.1" - } - }, - "type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "dev": true - }, - "typed-array-length": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", - "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "is-typed-array": "^1.1.9" - } - }, - "typedarray-to-buffer": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", - "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", - "requires": { - "is-typedarray": "^1.0.0" - } - }, - "typescript": { - "version": "4.9.5", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz", - "integrity": "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==", - "dev": true - }, - "uint8arrays": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/uint8arrays/-/uint8arrays-3.1.1.tgz", - "integrity": "sha512-+QJa8QRnbdXVpHYjLoTpJIdCTiw9Ir62nocClWuXIq2JIh4Uta0cQsTSpFL678p2CN8B+XSApwcU+pQEqVpKWg==", - "requires": { - "multiformats": "^9.4.2" - } - }, - "unbox-primitive": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", - "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "has-bigints": "^1.0.2", - "has-symbols": "^1.0.3", - "which-boxed-primitive": "^1.0.2" - } - }, - "unload": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/unload/-/unload-2.4.1.tgz", - "integrity": "sha512-IViSAm8Z3sRBYA+9wc0fLQmU9Nrxb16rcDmIiR6Y9LJSZzI7QY5QsDhqPpKOjAn0O9/kfK1TfNEMMAGPTIraPw==" + } }, - "update-browserslist-db": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", - "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", + "web3-providers-http": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/web3-providers-http/-/web3-providers-http-1.5.2.tgz", + "integrity": "sha512-dUNFJc9IMYDLZnkoQX3H4ZjvHjGO6VRVCqrBrdh84wPX/0da9dOA7DwIWnG0Gv3n9ybWwu5JHQxK4MNQ444lyA==", "requires": { - "escalade": "^3.1.1", - "picocolors": "^1.0.0" + "web3-core-helpers": "1.5.2", + "xhr2-cookies": "1.1.0" } }, - "uri-js": { - "version": "4.4.1", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", - "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "web3-providers-ipc": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/web3-providers-ipc/-/web3-providers-ipc-1.5.2.tgz", + "integrity": "sha512-SJC4Sivt4g9LHKlRy7cs1jkJgp7bjrQeUndE6BKs0zNALKguxu6QYnzbmuHCTFW85GfMDjhvi24jyyZHMnBNXQ==", "requires": { - "punycode": "^2.1.0" + "oboe": "2.1.5", + "web3-core-helpers": "1.5.2" } }, - "url": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", - "integrity": "sha512-kbailJa29QrtXnxgq+DdCEGlbTeYM2eJUxsz6vjZavrCYPMIFHMKQmSKYAIuUK2i7hgPm28a8piX5NTUtM/LKQ==", + "web3-providers-ws": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/web3-providers-ws/-/web3-providers-ws-1.5.2.tgz", + "integrity": "sha512-xy9RGlyO8MbJDuKv2vAMDkg+en+OvXG0CGTCM2BTl6l1vIdHpCa+6A/9KV2rK8aU9OBZ7/Pf+Y19517kHVl9RA==", "requires": { - "punycode": "1.3.2", - "querystring": "0.2.0" + "eventemitter3": "4.0.4", + "web3-core-helpers": "1.5.2", + "websocket": "^1.0.32" }, "dependencies": { - "punycode": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", - "integrity": "sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==" + "eventemitter3": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", + "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==" } } }, - "url-set-query": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/url-set-query/-/url-set-query-1.0.0.tgz", - "integrity": "sha512-3AChu4NiXquPfeckE5R5cGdiHCMWJx1dwCWOmWIL4KHAziJNOFIYJlpGFeKDvwLPHovZRCxK3cYlwzqI9Vp+Gg==" - }, - "utf-8-validate": { - "version": "5.0.10", - "resolved": "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-5.0.10.tgz", - "integrity": "sha512-Z6czzLq4u8fPOyx7TU6X3dvUZVvoJmxSQ+IcrlmagKhilxlhZgxPK6C5Jqbkw1IDUmFTM+cz9QDnnLTwDz/2gQ==", - "requires": { - "node-gyp-build": "^4.3.0" - } - }, - "utf8": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/utf8/-/utf8-3.0.0.tgz", - "integrity": "sha512-E8VjFIQ/TyQgp+TZfS6l8yp/xWppSAHzidGiRrqe4bK4XP9pTRyKFgGJpO3SN7zdX4DeomTrwaseCHovfpFcqQ==" - }, - "util": { - "version": "0.12.5", - "resolved": "https://registry.npmjs.org/util/-/util-0.12.5.tgz", - "integrity": "sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==", + "web3-utils": { + "version": "1.8.2", + "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.8.2.tgz", + "integrity": "sha512-v7j6xhfLQfY7xQDrUP0BKbaNrmZ2/+egbqP9q3KYmOiPpnvAfol+32slgL0WX/5n8VPvKCK5EZ1HGrAVICSToA==", "requires": { - "inherits": "^2.0.3", - "is-arguments": "^1.0.4", - "is-generator-function": "^1.0.7", - "is-typed-array": "^1.1.3", - "which-typed-array": "^1.1.2" + "bn.js": "^5.2.1", + "ethereum-bloom-filters": "^1.0.6", + "ethereumjs-util": "^7.1.0", + "ethjs-unit": "0.1.6", + "number-to-bn": "1.7.0", + "randombytes": "^2.1.0", + "utf8": "3.0.0" } }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" - }, - "uuid": { - "version": "8.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" - }, - "validate-npm-package-license": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "web3.storage": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/web3.storage/-/web3.storage-4.4.0.tgz", + "integrity": "sha512-I48GB+cFGfSbi47e3ZmyRX/ZUi9EcrqUylZ6FG1AU8UGErG3t4svZocaXTaUnp2zZWAtbbUFsFtD/cd9FgoVjA==", "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" + "@ipld/car": "^3.1.4", + "@web-std/blob": "^3.0.4", + "@web-std/fetch": "^3.0.3", + "@web-std/file": "^3.0.2", + "@web3-storage/parse-link-header": "^3.1.0", + "browser-readablestream-to-it": "^1.0.3", + "carbites": "^1.0.6", + "cborg": "^1.8.0", + "files-from-path": "^0.2.4", + "ipfs-car": "^0.7.0", + "libp2p-crypto": "^0.21.0", + "p-retry": "^4.5.0", + "streaming-iterables": "^6.2.0", + "throttled-queue": "^2.1.2", + "uint8arrays": "^3.0.0", + "w3name": "^1.0.4" } }, - "varint": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/varint/-/varint-6.0.0.tgz", - "integrity": "sha512-cXEIW6cfr15lFv563k4GuVuW/fiwjknytD37jIOLSdSWuOI6WnO/oKwmP2FQTU2l01LP8/M5TSAJpzUaGe3uWg==" - }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha512-ZZKSmDAEFOijERBLkmYfJ+vmk3w+7hOLYDNkRCuRuMJGEmqYNCNLyBBFwWKVMhfwaEF3WOd0Zlw86U/WC/+nYw==", + "web3modal": { + "version": "1.9.12", + "resolved": "https://registry.npmjs.org/web3modal/-/web3modal-1.9.12.tgz", + "integrity": "sha512-RiLY2tNOEUCobtsMTmhwl/FoHZGxRZz7SSdLsh6qbbybPNUO0rFPY8xam9SpPwlLd2cUDGiWkLgDUJde0sHxdw==", "requires": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" + "detect-browser": "^5.1.0", + "prop-types": "^15.7.2", + "react": "^16.8.6", + "react-dom": "^16.8.6", + "styled-components": "^5.3.3", + "tslib": "^1.10.0" + }, + "dependencies": { + "react": { + "version": "16.14.0", + "resolved": "https://registry.npmjs.org/react/-/react-16.14.0.tgz", + "integrity": "sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g==", + "requires": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1", + "prop-types": "^15.6.2" + } + }, + "react-dom": { + "version": "16.14.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-16.14.0.tgz", + "integrity": "sha512-1gCeQXDLoIqMgqD3IO2Ah9bnf0w9kzhwN5q4FGnHZ67hBm9yePzB5JJAIQCc8x3pFnNlwFq4RidZggNAAkzWWw==", + "requires": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1", + "prop-types": "^15.6.2", + "scheduler": "^0.19.1" + } + }, + "scheduler": { + "version": "0.19.1", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.19.1.tgz", + "integrity": "sha512-n/zwRWRYSUj0/3g/otKDRPMh6qv2SYMWNq85IEa8iZyAv8od9zDYpGSnpBEjNgcMNq6Scbu5KfIPxNF72R/2EA==", + "requires": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1" + } + }, + "tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + } } }, - "vm-browserify": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", - "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==" - }, - "w3name": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/w3name/-/w3name-1.0.8.tgz", - "integrity": "sha512-MjCUGATeNm70YE1Zro4mykaoRI9dTTlr44AB83Qt6OaRlcLvH9g0gyLwAMd3gBm8oDVU/RrDAxsDGcO8r+RIuQ==", + "web3uikit": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/web3uikit/-/web3uikit-1.0.4.tgz", + "integrity": "sha512-tN9fMmQ68gKIkd1Wt0nXxxfvqwKbVBcJZuDtIWzHDsSqbryU7BpTEjYrd4UCo5KWCVNGacujCxn9JknP15lwRQ==", "requires": { - "@web-std/fetch": "^4.1.0", - "cborg": "^1.9.4", - "ipns": "^0.16.0", - "libp2p-crypto": "^0.21.2", - "throttled-queue": "^2.1.4", - "uint8arrays": "^3.0.0" + "@web3uikit/config": "*", + "@web3uikit/core": "*", + "@web3uikit/icons": "*", + "@web3uikit/styles": "*", + "@web3uikit/web3": "*", + "moralis": "^1.8.1", + "react-moralis": "^1.4.0", + "react-router-dom": "^6.3.0", + "ts-node": "9.1.1", + "typescript": "^4.6.3", + "wp5-cra-polyfill": "github:oscario2/wp5-cra-polyfill#91431fa" }, "dependencies": { - "@web-std/fetch": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@web-std/fetch/-/fetch-4.1.0.tgz", - "integrity": "sha512-ZRizMcP8YyuRlhIsRYNFD9x/w28K7kbUhNGmKM9hDy4qeQ5xMTk//wA89EF+Clbl6EP4ksmCcN+4TqBMSRL8Zw==", + "@babel/runtime": { + "version": "7.16.7", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.16.7.tgz", + "integrity": "sha512-9E9FJowqAsytyOY6LG+1KuueckRL+aQW+mKvXRXnuFGyRAyepJPmEo9vgMfXUA6O9u3IeEdv9MAkppFcaQwogQ==", + "requires": { + "regenerator-runtime": "^0.13.4" + } + }, + "@ethersproject/abi": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/abi/-/abi-5.6.0.tgz", + "integrity": "sha512-AhVByTwdXCc2YQ20v300w6KVHle9g2OFc28ZAFCPnJyEpkv1xKXjZcSTgWOlv1i+0dqlgF8RCF2Rn2KC1t+1Vg==", + "requires": { + "@ethersproject/address": "^5.6.0", + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/constants": "^5.6.0", + "@ethersproject/hash": "^5.6.0", + "@ethersproject/keccak256": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "@ethersproject/strings": "^5.6.0" + } + }, + "@ethersproject/abstract-provider": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/abstract-provider/-/abstract-provider-5.6.0.tgz", + "integrity": "sha512-oPMFlKLN+g+y7a79cLK3WiLcjWFnZQtXWgnLAbHZcN3s7L4v90UHpTOrLk+m3yr0gt+/h9STTM6zrr7PM8uoRw==", + "requires": { + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/networks": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "@ethersproject/transactions": "^5.6.0", + "@ethersproject/web": "^5.6.0" + } + }, + "@ethersproject/abstract-signer": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/abstract-signer/-/abstract-signer-5.6.0.tgz", + "integrity": "sha512-WOqnG0NJKtI8n0wWZPReHtaLkDByPL67tn4nBaDAhmVq8sjHTPbCdz4DRhVu/cfTOvfy9w3iq5QZ7BX7zw56BQ==", + "requires": { + "@ethersproject/abstract-provider": "^5.6.0", + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/properties": "^5.6.0" + } + }, + "@ethersproject/address": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/address/-/address-5.6.0.tgz", + "integrity": "sha512-6nvhYXjbXsHPS+30sHZ+U4VMagFC/9zAk6Gd/h3S21YW4+yfb0WfRtaAIZ4kfM4rrVwqiy284LP0GtL5HXGLxQ==", "requires": { - "@web-std/blob": "^3.0.3", - "@web-std/form-data": "^3.0.2", - "@web-std/stream": "^1.0.1", - "@web3-storage/multipart-parser": "^1.0.0", - "data-uri-to-buffer": "^3.0.1", - "mrmime": "^1.0.0" + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/keccak256": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/rlp": "^5.6.0" } }, - "@web-std/stream": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@web-std/stream/-/stream-1.0.1.tgz", - "integrity": "sha512-tsz4Y0WNDgFA5jwLSeV7/UV5rfMIlj0cPsSLVfTihjaVW0OJPd5NxJ3le1B3yLyqqzRpeG5OAfJAADLc4VoGTA==", + "@ethersproject/base64": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/base64/-/base64-5.6.0.tgz", + "integrity": "sha512-2Neq8wxJ9xHxCF9TUgmKeSh9BXJ6OAxWfeGWvbauPh8FuHEjamgHilllx8KkSd5ErxyHIX7Xv3Fkcud2kY9ezw==", "requires": { - "web-streams-polyfill": "^3.1.1" + "@ethersproject/bytes": "^5.6.0" } - } - } - }, - "watchpack": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", - "integrity": "sha512-Lcvm7MGST/4fup+ifyKi2hjyIAwcdI4HRgtvTpIUxBRhB+RFtUh8XtDOxUfctVCnhVi+QQj49i91OyvzkJl6cg==", - "peer": true, - "requires": { - "glob-to-regexp": "^0.4.1", - "graceful-fs": "^4.1.2" - } - }, - "web-encoding": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/web-encoding/-/web-encoding-1.1.5.tgz", - "integrity": "sha512-HYLeVCdJ0+lBYV2FvNZmv3HJ2Nt0QYXqZojk3d9FJOLkwnuhzM9tmamh8d7HPM8QqjKH8DeHkFTx+CFlWpZZDA==", - "requires": { - "@zxing/text-encoding": "0.9.0", - "util": "^0.12.3" - } - }, - "web-streams-polyfill": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-3.2.1.tgz", - "integrity": "sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q==" - }, - "web3-core": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/web3-core/-/web3-core-1.5.2.tgz", - "integrity": "sha512-sebMpQbg3kbh3vHUbHrlKGKOxDWqjgt8KatmTBsTAWj/HwWYVDzeX+2Q84+swNYsm2DrTBVFlqTErFUwPBvyaA==", - "requires": { - "@types/bn.js": "^4.11.5", - "@types/node": "^12.12.6", - "bignumber.js": "^9.0.0", - "web3-core-helpers": "1.5.2", - "web3-core-method": "1.5.2", - "web3-core-requestmanager": "1.5.2", - "web3-utils": "1.5.2" - }, - "dependencies": { - "@types/bn.js": { - "version": "4.11.6", - "resolved": "https://registry.npmjs.org/@types/bn.js/-/bn.js-4.11.6.tgz", - "integrity": "sha512-pqr857jrp2kPuO9uRjZ3PwnJTjoQy+fcdxvBTvHm6dkmEL9q+hDD/2j/0ELOBPtPnS8LjCX0gI9nbl8lVkadpg==", + }, + "@ethersproject/basex": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/basex/-/basex-5.6.0.tgz", + "integrity": "sha512-qN4T+hQd/Md32MoJpc69rOwLYRUXwjTlhHDIeUkUmiN/JyWkkLLMoG0TqvSQKNqZOMgN5stbUYN6ILC+eD7MEQ==", "requires": { - "@types/node": "*" + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/properties": "^5.6.0" } }, - "@types/node": { - "version": "12.20.55", - "resolved": "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz", - "integrity": "sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==" + "@ethersproject/bignumber": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/bignumber/-/bignumber-5.6.0.tgz", + "integrity": "sha512-VziMaXIUHQlHJmkv1dlcd6GY2PmT0khtAqaMctCIDogxkrarMzA9L94KN1NeXqqOfFD6r0sJT3vCTOFSmZ07DA==", + "requires": { + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "bn.js": "^4.11.9" + } }, - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + "@ethersproject/bytes": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/bytes/-/bytes-5.6.0.tgz", + "integrity": "sha512-3hJPlYemb9V4VLfJF5BfN0+55vltPZSHU3QKUyP9M3Y2TcajbiRrz65UG+xVHOzBereB1b9mn7r12o177xgN7w==", + "requires": { + "@ethersproject/logger": "^5.6.0" + } + }, + "@ethersproject/constants": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/constants/-/constants-5.6.0.tgz", + "integrity": "sha512-SrdaJx2bK0WQl23nSpV/b1aq293Lh0sUaZT/yYKPDKn4tlAbkH96SPJwIhwSwTsoQQZxuh1jnqsKwyymoiBdWA==", + "requires": { + "@ethersproject/bignumber": "^5.6.0" + } + }, + "@ethersproject/contracts": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/contracts/-/contracts-5.6.0.tgz", + "integrity": "sha512-74Ge7iqTDom0NX+mux8KbRUeJgu1eHZ3iv6utv++sLJG80FVuU9HnHeKVPfjd9s3woFhaFoQGf3B3iH/FrQmgw==", + "requires": { + "@ethersproject/abi": "^5.6.0", + "@ethersproject/abstract-provider": "^5.6.0", + "@ethersproject/abstract-signer": "^5.6.0", + "@ethersproject/address": "^5.6.0", + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/constants": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "@ethersproject/transactions": "^5.6.0" + } + }, + "@ethersproject/hash": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/hash/-/hash-5.6.0.tgz", + "integrity": "sha512-fFd+k9gtczqlr0/BruWLAu7UAOas1uRRJvOR84uDf4lNZ+bTkGl366qvniUZHKtlqxBRU65MkOobkmvmpHU+jA==", + "requires": { + "@ethersproject/abstract-signer": "^5.6.0", + "@ethersproject/address": "^5.6.0", + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/keccak256": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "@ethersproject/strings": "^5.6.0" + } + }, + "@ethersproject/hdnode": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/hdnode/-/hdnode-5.6.0.tgz", + "integrity": "sha512-61g3Jp3nwDqJcL/p4nugSyLrpl/+ChXIOtCEM8UDmWeB3JCAt5FoLdOMXQc3WWkc0oM2C0aAn6GFqqMcS/mHTw==", + "requires": { + "@ethersproject/abstract-signer": "^5.6.0", + "@ethersproject/basex": "^5.6.0", + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/pbkdf2": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "@ethersproject/sha2": "^5.6.0", + "@ethersproject/signing-key": "^5.6.0", + "@ethersproject/strings": "^5.6.0", + "@ethersproject/transactions": "^5.6.0", + "@ethersproject/wordlists": "^5.6.0" + } + }, + "@ethersproject/json-wallets": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/json-wallets/-/json-wallets-5.6.0.tgz", + "integrity": "sha512-fmh86jViB9r0ibWXTQipxpAGMiuxoqUf78oqJDlCAJXgnJF024hOOX7qVgqsjtbeoxmcLwpPsXNU0WEe/16qPQ==", + "requires": { + "@ethersproject/abstract-signer": "^5.6.0", + "@ethersproject/address": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/hdnode": "^5.6.0", + "@ethersproject/keccak256": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/pbkdf2": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "@ethersproject/random": "^5.6.0", + "@ethersproject/strings": "^5.6.0", + "@ethersproject/transactions": "^5.6.0", + "aes-js": "3.0.0", + "scrypt-js": "3.0.1" + } + }, + "@ethersproject/keccak256": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/keccak256/-/keccak256-5.6.0.tgz", + "integrity": "sha512-tk56BJ96mdj/ksi7HWZVWGjCq0WVl/QvfhFQNeL8fxhBlGoP+L80uDCiQcpJPd+2XxkivS3lwRm3E0CXTfol0w==", + "requires": { + "@ethersproject/bytes": "^5.6.0", + "js-sha3": "0.8.0" + } + }, + "@ethersproject/logger": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/logger/-/logger-5.6.0.tgz", + "integrity": "sha512-BiBWllUROH9w+P21RzoxJKzqoqpkyM1pRnEKG69bulE9TSQD8SAIvTQqIMZmmCO8pUNkgLP1wndX1gKghSpBmg==" + }, + "@ethersproject/networks": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/networks/-/networks-5.6.0.tgz", + "integrity": "sha512-DaVzgyThzHgSDLuURhvkp4oviGoGe9iTZW4jMEORHDRCgSZ9K9THGFKqL+qGXqPAYLEgZTf5z2w56mRrPR1MjQ==", + "requires": { + "@ethersproject/logger": "^5.6.0" + } + }, + "@ethersproject/pbkdf2": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/pbkdf2/-/pbkdf2-5.6.0.tgz", + "integrity": "sha512-Wu1AxTgJo3T3H6MIu/eejLFok9TYoSdgwRr5oGY1LTLfmGesDoSx05pemsbrPT2gG4cQME+baTSCp5sEo2erZQ==", + "requires": { + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/sha2": "^5.6.0" + } + }, + "@ethersproject/properties": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/properties/-/properties-5.6.0.tgz", + "integrity": "sha512-szoOkHskajKePTJSZ46uHUWWkbv7TzP2ypdEK6jGMqJaEt2sb0jCgfBo0gH0m2HBpRixMuJ6TBRaQCF7a9DoCg==", + "requires": { + "@ethersproject/logger": "^5.6.0" + } + }, + "@ethersproject/providers": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/providers/-/providers-5.6.0.tgz", + "integrity": "sha512-6+5PKXTWAttJWFWF8+xCDTCa2/dtq9BNrdKQHGl0IyIOwj99vM6OeThmIRcsIAzIOb8m0XS6w+1KFZwrf3j9nw==", + "requires": { + "@ethersproject/abstract-provider": "^5.6.0", + "@ethersproject/abstract-signer": "^5.6.0", + "@ethersproject/address": "^5.6.0", + "@ethersproject/basex": "^5.6.0", + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/constants": "^5.6.0", + "@ethersproject/hash": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/networks": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "@ethersproject/random": "^5.6.0", + "@ethersproject/rlp": "^5.6.0", + "@ethersproject/sha2": "^5.6.0", + "@ethersproject/strings": "^5.6.0", + "@ethersproject/transactions": "^5.6.0", + "@ethersproject/web": "^5.6.0", + "bech32": "1.1.4", + "ws": "7.4.6" + }, + "dependencies": { + "ws": { + "version": "7.4.6", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz", + "integrity": "sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A==", + "requires": {} + } + } + }, + "@ethersproject/random": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/random/-/random-5.6.0.tgz", + "integrity": "sha512-si0PLcLjq+NG/XHSZz90asNf+YfKEqJGVdxoEkSukzbnBgC8rydbgbUgBbBGLeHN4kAJwUFEKsu3sCXT93YMsw==", + "requires": { + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/logger": "^5.6.0" + } }, - "web3-utils": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.5.2.tgz", - "integrity": "sha512-quTtTeQJHYSxAwIBOCGEcQtqdVcFWX6mCFNoqnp+mRbq+Hxbs8CGgO/6oqfBx4OvxIOfCpgJWYVHswRXnbEu9Q==", + "@ethersproject/rlp": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/rlp/-/rlp-5.6.0.tgz", + "integrity": "sha512-dz9WR1xpcTL+9DtOT/aDO+YyxSSdO8YIS0jyZwHHSlAmnxA6cKU3TrTd4Xc/bHayctxTgGLYNuVVoiXE4tTq1g==", "requires": { - "bn.js": "^4.11.9", - "eth-lib": "0.2.8", - "ethereum-bloom-filters": "^1.0.6", - "ethjs-unit": "0.1.6", - "number-to-bn": "1.7.0", - "randombytes": "^2.1.0", - "utf8": "3.0.0" + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/logger": "^5.6.0" } - } - } - }, - "web3-core-helpers": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/web3-core-helpers/-/web3-core-helpers-1.5.2.tgz", - "integrity": "sha512-U7LJoeUdQ3aY9t5gU7t/1XpcApsWm+4AcW5qKl/44ZxD44w0Dmsq1c5zJm3GuLr/a9MwQfXK4lpmvxVQWHHQRg==", - "requires": { - "web3-eth-iban": "1.5.2", - "web3-utils": "1.5.2" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" }, - "web3-utils": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.5.2.tgz", - "integrity": "sha512-quTtTeQJHYSxAwIBOCGEcQtqdVcFWX6mCFNoqnp+mRbq+Hxbs8CGgO/6oqfBx4OvxIOfCpgJWYVHswRXnbEu9Q==", + "@ethersproject/sha2": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/sha2/-/sha2-5.6.0.tgz", + "integrity": "sha512-1tNWCPFLu1n3JM9t4/kytz35DkuF9MxqkGGEHNauEbaARdm2fafnOyw1s0tIQDPKF/7bkP1u3dbrmjpn5CelyA==", "requires": { - "bn.js": "^4.11.9", - "eth-lib": "0.2.8", - "ethereum-bloom-filters": "^1.0.6", - "ethjs-unit": "0.1.6", - "number-to-bn": "1.7.0", - "randombytes": "^2.1.0", - "utf8": "3.0.0" + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "hash.js": "1.1.7" } - } - } - }, - "web3-core-method": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/web3-core-method/-/web3-core-method-1.5.2.tgz", - "integrity": "sha512-/mC5t9UjjJoQmJJqO5nWK41YHo+tMzFaT7Tp7jDCQsBkinE68KsUJkt0jzygpheW84Zra0DVp6q19gf96+cugg==", - "requires": { - "@ethereumjs/common": "^2.4.0", - "@ethersproject/transactions": "^5.0.0-beta.135", - "web3-core-helpers": "1.5.2", - "web3-core-promievent": "1.5.2", - "web3-core-subscriptions": "1.5.2", - "web3-utils": "1.5.2" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" }, - "web3-utils": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.5.2.tgz", - "integrity": "sha512-quTtTeQJHYSxAwIBOCGEcQtqdVcFWX6mCFNoqnp+mRbq+Hxbs8CGgO/6oqfBx4OvxIOfCpgJWYVHswRXnbEu9Q==", + "@ethersproject/signing-key": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/signing-key/-/signing-key-5.6.0.tgz", + "integrity": "sha512-S+njkhowmLeUu/r7ir8n78OUKx63kBdMCPssePS89So1TH4hZqnWFsThEd/GiXYp9qMxVrydf7KdM9MTGPFukA==", "requires": { + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/properties": "^5.6.0", "bn.js": "^4.11.9", - "eth-lib": "0.2.8", - "ethereum-bloom-filters": "^1.0.6", - "ethjs-unit": "0.1.6", - "number-to-bn": "1.7.0", - "randombytes": "^2.1.0", - "utf8": "3.0.0" + "elliptic": "6.5.4", + "hash.js": "1.1.7" } - } - } - }, - "web3-core-promievent": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/web3-core-promievent/-/web3-core-promievent-1.5.2.tgz", - "integrity": "sha512-5DacbJXe98ozSor7JlkTNCy6G8945VunRRkPxMk98rUrg60ECVEM/vuefk1atACzjQsKx6tmLZuHxbJQ64TQeQ==", - "requires": { - "eventemitter3": "4.0.4" - }, - "dependencies": { - "eventemitter3": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", - "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==" - } - } - }, - "web3-core-requestmanager": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/web3-core-requestmanager/-/web3-core-requestmanager-1.5.2.tgz", - "integrity": "sha512-oRVW9OrAsXN2JIZt68OEg1Mb1A9a/L3JAGMv15zLEFEnJEGw0KQsGK1ET2kvZBzvpFd5G0EVkYCnx7WDe4HSNw==", - "requires": { - "util": "^0.12.0", - "web3-core-helpers": "1.5.2", - "web3-providers-http": "1.5.2", - "web3-providers-ipc": "1.5.2", - "web3-providers-ws": "1.5.2" - } - }, - "web3-core-subscriptions": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/web3-core-subscriptions/-/web3-core-subscriptions-1.5.2.tgz", - "integrity": "sha512-hapI4rKFk22yurtIv0BYvkraHsM7epA4iI8Np+HuH6P9DD0zj/llaps6TXLM9HyacLBRwmOLZmr+pHBsPopUnQ==", - "requires": { - "eventemitter3": "4.0.4", - "web3-core-helpers": "1.5.2" - }, - "dependencies": { - "eventemitter3": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", - "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==" - } - } - }, - "web3-eth-abi": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/web3-eth-abi/-/web3-eth-abi-1.8.2.tgz", - "integrity": "sha512-Om9g3kaRNjqiNPAgKwGT16y+ZwtBzRe4ZJFGjLiSs6v5I7TPNF+rRMWuKnR6jq0azQZDj6rblvKFMA49/k48Og==", - "requires": { - "@ethersproject/abi": "^5.6.3", - "web3-utils": "1.8.2" - } - }, - "web3-eth-iban": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/web3-eth-iban/-/web3-eth-iban-1.5.2.tgz", - "integrity": "sha512-C04YDXuSG/aDwOHSX+HySBGb0KraiAVt+/l1Mw7y/fCUrKC/K0yYzMYqY/uYOcvLtepBPsC4ZfUYWUBZ2PO8Vg==", - "requires": { - "bn.js": "^4.11.9", - "web3-utils": "1.5.2" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" }, - "web3-utils": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.5.2.tgz", - "integrity": "sha512-quTtTeQJHYSxAwIBOCGEcQtqdVcFWX6mCFNoqnp+mRbq+Hxbs8CGgO/6oqfBx4OvxIOfCpgJWYVHswRXnbEu9Q==", + "@ethersproject/solidity": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/solidity/-/solidity-5.6.0.tgz", + "integrity": "sha512-YwF52vTNd50kjDzqKaoNNbC/r9kMDPq3YzDWmsjFTRBcIF1y4JCQJ8gB30wsTfHbaxgxelI5BfxQSxD/PbJOww==", "requires": { - "bn.js": "^4.11.9", - "eth-lib": "0.2.8", - "ethereum-bloom-filters": "^1.0.6", - "ethjs-unit": "0.1.6", - "number-to-bn": "1.7.0", - "randombytes": "^2.1.0", - "utf8": "3.0.0" + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/keccak256": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/sha2": "^5.6.0", + "@ethersproject/strings": "^5.6.0" } - } - } - }, - "web3-provider-engine": { - "version": "16.0.1", - "resolved": "https://registry.npmjs.org/web3-provider-engine/-/web3-provider-engine-16.0.1.tgz", - "integrity": "sha512-/Eglt2aocXMBiDj7Se/lyZnNDaHBaoJlaUfbP5HkLJQC/HlGbR+3/W+dINirlJDhh7b54DzgykqY7ksaU5QgTg==", - "requires": { - "async": "^2.5.0", - "backoff": "^2.5.0", - "clone": "^2.0.0", - "cross-fetch": "^2.1.0", - "eth-block-tracker": "^4.4.2", - "eth-json-rpc-filters": "^4.2.1", - "eth-json-rpc-infura": "^5.1.0", - "eth-json-rpc-middleware": "^6.0.0", - "eth-rpc-errors": "^3.0.0", - "eth-sig-util": "^1.4.2", - "ethereumjs-block": "^1.2.2", - "ethereumjs-tx": "^1.2.0", - "ethereumjs-util": "^5.1.5", - "ethereumjs-vm": "^2.3.4", - "json-stable-stringify": "^1.0.1", - "promise-to-callback": "^1.0.0", - "readable-stream": "^2.2.9", - "request": "^2.85.0", - "semaphore": "^1.0.3", - "ws": "^5.1.1", - "xhr": "^2.2.0", - "xtend": "^4.0.1" - }, - "dependencies": { - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" }, - "eth-rpc-errors": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/eth-rpc-errors/-/eth-rpc-errors-3.0.0.tgz", - "integrity": "sha512-iPPNHPrLwUlR9xCSYm7HHQjWBasor3+KZfRvwEWxMz3ca0yqnlBeJrnyphkGIXZ4J7AMAaOLmwy4AWhnxOiLxg==", + "@ethersproject/strings": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/strings/-/strings-5.6.0.tgz", + "integrity": "sha512-uv10vTtLTZqrJuqBZR862ZQjTIa724wGPWQqZrofaPI/kUsf53TBG0I0D+hQ1qyNtllbNzaW+PDPHHUI6/65Mg==", "requires": { - "fast-safe-stringify": "^2.0.6" + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/constants": "^5.6.0", + "@ethersproject/logger": "^5.6.0" } }, - "ethereumjs-util": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.1.tgz", - "integrity": "sha512-v3kT+7zdyCm1HIqWlLNrHGqHGLpGYIhjeHxQjnDXjLT2FyGJDsd3LWMYUo7pAFRrk86CR3nUJfhC81CCoJNNGQ==", + "@ethersproject/transactions": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/transactions/-/transactions-5.6.0.tgz", + "integrity": "sha512-4HX+VOhNjXHZyGzER6E/LVI2i6lf9ejYeWD6l4g50AdmimyuStKc39kvKf1bXWQMg7QNVh+uC7dYwtaZ02IXeg==", "requires": { - "bn.js": "^4.11.0", - "create-hash": "^1.1.2", - "elliptic": "^6.5.2", - "ethereum-cryptography": "^0.1.3", - "ethjs-util": "^0.1.3", - "rlp": "^2.0.0", - "safe-buffer": "^5.1.1" + "@ethersproject/address": "^5.6.0", + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/constants": "^5.6.0", + "@ethersproject/keccak256": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "@ethersproject/rlp": "^5.6.0", + "@ethersproject/signing-key": "^5.6.0" } }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" - }, - "readable-stream": { - "version": "2.3.7", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", - "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "@ethersproject/units": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/units/-/units-5.6.0.tgz", + "integrity": "sha512-tig9x0Qmh8qbo1w8/6tmtyrm/QQRviBh389EQ+d8fP4wDsBrJBf08oZfoiz1/uenKK9M78yAP4PoR7SsVoTjsw==", "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.3", - "isarray": "~1.0.0", - "process-nextick-args": "~2.0.0", - "safe-buffer": "~5.1.1", - "string_decoder": "~1.1.1", - "util-deprecate": "~1.0.1" + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/constants": "^5.6.0", + "@ethersproject/logger": "^5.6.0" } }, - "safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + "@ethersproject/wallet": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/wallet/-/wallet-5.6.0.tgz", + "integrity": "sha512-qMlSdOSTyp0MBeE+r7SUhr1jjDlC1zAXB8VD84hCnpijPQiSNbxr6GdiLXxpUs8UKzkDiNYYC5DRI3MZr+n+tg==", + "requires": { + "@ethersproject/abstract-provider": "^5.6.0", + "@ethersproject/abstract-signer": "^5.6.0", + "@ethersproject/address": "^5.6.0", + "@ethersproject/bignumber": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/hash": "^5.6.0", + "@ethersproject/hdnode": "^5.6.0", + "@ethersproject/json-wallets": "^5.6.0", + "@ethersproject/keccak256": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "@ethersproject/random": "^5.6.0", + "@ethersproject/signing-key": "^5.6.0", + "@ethersproject/transactions": "^5.6.0", + "@ethersproject/wordlists": "^5.6.0" + } }, - "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "@ethersproject/web": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/web/-/web-5.6.0.tgz", + "integrity": "sha512-G/XHj0hV1FxI2teHRfCGvfBUHFmU+YOSbCxlAMqJklxSa7QMiHFQfAxvwY2PFqgvdkxEKwRNr/eCjfAPEm2Ctg==", "requires": { - "safe-buffer": "~5.1.0" + "@ethersproject/base64": "^5.6.0", + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "@ethersproject/strings": "^5.6.0" } }, - "ws": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/ws/-/ws-5.2.3.tgz", - "integrity": "sha512-jZArVERrMsKUatIdnLzqvcfydI85dvd/Fp1u/VOpfdDWQ4c9qWXe+VIeAbQ5FrDwciAkr+lzofXLz3Kuf26AOA==", + "@ethersproject/wordlists": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/@ethersproject/wordlists/-/wordlists-5.6.0.tgz", + "integrity": "sha512-q0bxNBfIX3fUuAo9OmjlEYxP40IB8ABgb7HjEZCL5IKubzV3j30CWi2rqQbjTS2HfoyQbfINoKcTVWP4ejwR7Q==", "requires": { - "async-limiter": "~1.0.0" + "@ethersproject/bytes": "^5.6.0", + "@ethersproject/hash": "^5.6.0", + "@ethersproject/logger": "^5.6.0", + "@ethersproject/properties": "^5.6.0", + "@ethersproject/strings": "^5.6.0" } - } - } - }, - "web3-providers-http": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/web3-providers-http/-/web3-providers-http-1.5.2.tgz", - "integrity": "sha512-dUNFJc9IMYDLZnkoQX3H4ZjvHjGO6VRVCqrBrdh84wPX/0da9dOA7DwIWnG0Gv3n9ybWwu5JHQxK4MNQ444lyA==", - "requires": { - "web3-core-helpers": "1.5.2", - "xhr2-cookies": "1.1.0" - } - }, - "web3-providers-ipc": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/web3-providers-ipc/-/web3-providers-ipc-1.5.2.tgz", - "integrity": "sha512-SJC4Sivt4g9LHKlRy7cs1jkJgp7bjrQeUndE6BKs0zNALKguxu6QYnzbmuHCTFW85GfMDjhvi24jyyZHMnBNXQ==", - "requires": { - "oboe": "2.1.5", - "web3-core-helpers": "1.5.2" - } - }, - "web3-providers-ws": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/web3-providers-ws/-/web3-providers-ws-1.5.2.tgz", - "integrity": "sha512-xy9RGlyO8MbJDuKv2vAMDkg+en+OvXG0CGTCM2BTl6l1vIdHpCa+6A/9KV2rK8aU9OBZ7/Pf+Y19517kHVl9RA==", - "requires": { - "eventemitter3": "4.0.4", - "web3-core-helpers": "1.5.2", - "websocket": "^1.0.32" - }, - "dependencies": { - "eventemitter3": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.4.tgz", - "integrity": "sha512-rlaVLnVxtxvoyLsQQFBx53YmXHDxRIzzTLbdfxqi4yocpSjAxXwkU0cScM5JgSKMqEhrZpnvQ2D9gjylR0AimQ==" - } - } - }, - "web3-utils": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/web3-utils/-/web3-utils-1.8.2.tgz", - "integrity": "sha512-v7j6xhfLQfY7xQDrUP0BKbaNrmZ2/+egbqP9q3KYmOiPpnvAfol+32slgL0WX/5n8VPvKCK5EZ1HGrAVICSToA==", - "requires": { - "bn.js": "^5.2.1", - "ethereum-bloom-filters": "^1.0.6", - "ethereumjs-util": "^7.1.0", - "ethjs-unit": "0.1.6", - "number-to-bn": "1.7.0", - "randombytes": "^2.1.0", - "utf8": "3.0.0" - } - }, - "web3.storage": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/web3.storage/-/web3.storage-4.4.0.tgz", - "integrity": "sha512-I48GB+cFGfSbi47e3ZmyRX/ZUi9EcrqUylZ6FG1AU8UGErG3t4svZocaXTaUnp2zZWAtbbUFsFtD/cd9FgoVjA==", - "requires": { - "@ipld/car": "^3.1.4", - "@web-std/blob": "^3.0.4", - "@web-std/fetch": "^3.0.3", - "@web-std/file": "^3.0.2", - "@web3-storage/parse-link-header": "^3.1.0", - "browser-readablestream-to-it": "^1.0.3", - "carbites": "^1.0.6", - "cborg": "^1.8.0", - "files-from-path": "^0.2.4", - "ipfs-car": "^0.7.0", - "libp2p-crypto": "^0.21.0", - "p-retry": "^4.5.0", - "streaming-iterables": "^6.2.0", - "throttled-queue": "^2.1.2", - "uint8arrays": "^3.0.0", - "w3name": "^1.0.4" - } - }, - "web3modal": { - "version": "1.9.12", - "resolved": "https://registry.npmjs.org/web3modal/-/web3modal-1.9.12.tgz", - "integrity": "sha512-RiLY2tNOEUCobtsMTmhwl/FoHZGxRZz7SSdLsh6qbbybPNUO0rFPY8xam9SpPwlLd2cUDGiWkLgDUJde0sHxdw==", - "requires": { - "detect-browser": "^5.1.0", - "prop-types": "^15.7.2", - "react": "^16.8.6", - "react-dom": "^16.8.6", - "styled-components": "^5.3.3", - "tslib": "^1.10.0" - }, - "dependencies": { - "react": { - "version": "16.14.0", - "resolved": "https://registry.npmjs.org/react/-/react-16.14.0.tgz", - "integrity": "sha512-0X2CImDkJGApiAlcf0ODKIneSwBPhqJawOa5wCtKbu7ZECrmS26NvtSILynQ66cgkT/RJ4LidJOc3bUESwmU8g==", + }, + "axios": { + "version": "0.26.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.26.1.tgz", + "integrity": "sha512-fPwcX4EvnSHuInCMItEhAGnaSEXRBjtzh9fOtsE6E1G6p7vl7edEeZe11QHf18+6+9gR5PbKV/sGKNaD8YaMeA==", "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "prop-types": "^15.6.2" + "follow-redirects": "^1.14.8" } }, - "react-dom": { - "version": "16.14.0", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-16.14.0.tgz", - "integrity": "sha512-1gCeQXDLoIqMgqD3IO2Ah9bnf0w9kzhwN5q4FGnHZ67hBm9yePzB5JJAIQCc8x3pFnNlwFq4RidZggNAAkzWWw==", + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "ethers": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/ethers/-/ethers-5.6.0.tgz", + "integrity": "sha512-00FP71jt6bW3ndO5DhgH9mLIZhoCGnAKFLu8qig5KmV03ubEChKf2ilB3g6fX512tTYo+tSMDJ5WpCJWdBHkBQ==", "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "prop-types": "^15.6.2", - "scheduler": "^0.19.1" + "@ethersproject/abi": "5.6.0", + "@ethersproject/abstract-provider": "5.6.0", + "@ethersproject/abstract-signer": "5.6.0", + "@ethersproject/address": "5.6.0", + "@ethersproject/base64": "5.6.0", + "@ethersproject/basex": "5.6.0", + "@ethersproject/bignumber": "5.6.0", + "@ethersproject/bytes": "5.6.0", + "@ethersproject/constants": "5.6.0", + "@ethersproject/contracts": "5.6.0", + "@ethersproject/hash": "5.6.0", + "@ethersproject/hdnode": "5.6.0", + "@ethersproject/json-wallets": "5.6.0", + "@ethersproject/keccak256": "5.6.0", + "@ethersproject/logger": "5.6.0", + "@ethersproject/networks": "5.6.0", + "@ethersproject/pbkdf2": "5.6.0", + "@ethersproject/properties": "5.6.0", + "@ethersproject/providers": "5.6.0", + "@ethersproject/random": "5.6.0", + "@ethersproject/rlp": "5.6.0", + "@ethersproject/sha2": "5.6.0", + "@ethersproject/signing-key": "5.6.0", + "@ethersproject/solidity": "5.6.0", + "@ethersproject/strings": "5.6.0", + "@ethersproject/transactions": "5.6.0", + "@ethersproject/units": "5.6.0", + "@ethersproject/wallet": "5.6.0", + "@ethersproject/web": "5.6.0", + "@ethersproject/wordlists": "5.6.0" } }, - "scheduler": { - "version": "0.19.1", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.19.1.tgz", - "integrity": "sha512-n/zwRWRYSUj0/3g/otKDRPMh6qv2SYMWNq85IEa8iZyAv8od9zDYpGSnpBEjNgcMNq6Scbu5KfIPxNF72R/2EA==", + "moralis": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/moralis/-/moralis-1.11.0.tgz", + "integrity": "sha512-oqoKqP47RuHq+SnztN48+YgWsKLt1YBy7IfeSBOixUW0Tzn9RQDjNKpkSBcKFttNZQ/KzCEes6TCqA9IxSoTPQ==", "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" + "@babel/runtime": "7.16.7", + "@babel/runtime-corejs3": "7.16.8", + "@metamask/detect-provider": "^1.2.0", + "axios": "0.26.1", + "crypto-js": "4.1.1", + "ethers": "5.6.0", + "react-native-crypto-js": "1.0.0", + "uuid": "^8.3.2", + "ws": "^8.3.0", + "xmlhttprequest": "1.8.0" } }, - "tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + "ws": { + "version": "8.12.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.12.1.tgz", + "integrity": "sha512-1qo+M9Ba+xNhPB+YTWUlK6M17brTut5EXbcBaMRN5pH5dFrXz7lzz1ChFSUq3bOUl8yEvSenhHmYUNJxFzdJew==", + "requires": {} } } }, @@ -26877,6 +28339,11 @@ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==" }, + "yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==" + }, "yocto-queue": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", diff --git a/frontend/package.json b/frontend/package.json index 6b6c468..99be67b 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -22,12 +22,16 @@ "moralis": "^2.14.1", "next": "^13.1.6", "next-auth": "^4.19.2", + "next-themes": "^0.2.1", "react": "^18.2.0", "react-dom": "^18.2.0", + "react-dropzone": "^14.2.3", "react-moralis": "^1.4.2", + "react-router-dom": "^6.8.1", "taos": "^1.0.2", "web3.storage": "^4.4.0", - "web3modal": "^1.9.12" + "web3modal": "^1.9.12", + "web3uikit": "^1.0.4" }, "devDependencies": { "@types/react": "18.0.28", @@ -38,4 +42,4 @@ "tailwindcss": "^3.2.4", "typescript": "4.9.5" } -} \ No newline at end of file +} diff --git a/frontend/pages/login.js b/frontend/pages/login.js new file mode 100644 index 0000000..0a50638 --- /dev/null +++ b/frontend/pages/login.js @@ -0,0 +1,122 @@ +import React, { useEffect, useState } from "react"; +import { useWeb3Contract, useMoralis } from "react-moralis"; +import { useRouter } from "next/router"; +import { ConnectButton } from "web3uikit"; +import { ThemeProvider } from "next-themes"; +import { abi, REGISTER_CONTRACT_ADDRESS } from "../constants"; + +function Login() { + const router = useRouter(); + const { chainId: chainIdHex, isWeb3Enabled, Moralis, user } = useMoralis(); + const chainId = parseInt(chainIdHex); + const userType = ["Organization", "Donor", "End-User"]; + const [type, setType] = useState(""); + + const { + runContractFunction: checkRegistration, + data: enterTxResponse, + isLoading, + isFetching, + } = useWeb3Contract({ + abi: abi, + contractAddress: REGISTER_CONTRACT_ADDRESS, + functionName: "checkAlreadyRegistered", + params: {}, + }); + + const checkReg = async () => { + const res = await checkRegistration(); + if (res) { + router.push("/organisationList"); + } else { + router.push("/orgRegistration"); + } + }; + + useEffect(() => { + if (isWeb3Enabled) { + checkReg(); + } + }, [isWeb3Enabled]); + + return ( + +
+
+
+ Enter the platform +
+
+
+ +
+
+ +
+
+ { + setType(userType[0]); + }} + /> + +
+
+ { + setType(userType[1]); + }} + /> + +
+
+ { + setType(userType[2]); + }} + /> + +
+
+
+
+
+ ); +} + +export default Login; diff --git a/frontend/pages/orgRegistration.js b/frontend/pages/orgRegistration.js new file mode 100644 index 0000000..848be36 --- /dev/null +++ b/frontend/pages/orgRegistration.js @@ -0,0 +1,458 @@ +import React, { useState } from "react"; +import { ThemeProvider } from "next-themes"; +import { useDropzone } from "react-dropzone"; +import { Web3Storage } from "web3.storage"; + +let files = []; + +function OrgRegistration() { + const { getRootProps, getInputProps } = useDropzone({}); + const [username, setUsername] = useState(""); + const [phone, setPhone] = useState(""); + const [pwd, setPwd] = useState(""); + const [cnfPwd, setCnfPwd] = useState(""); + const [email, setEmail] = useState(""); + const [errorModal, setErrorModal] = useState(false); + const [confirmModal, setConfirmModal] = useState(false); + const [errorMessage, setErrorMessage] = useState(""); + + function selectFile(e) { + var file = e.target.files[0]; + if (files.length >= 1) { + files[0] = file; + } else { + files.push(file); + } + setTimeout(() => { + console.log(files); + }, 2000); + } + + function openModal() { + if (username === "") { + setErrorMessage("Organization name is not valid"); + openErrorModal(); + } else if (phone.length !== 10) { + setErrorMessage("Phone number should be of 10 digits"); + openErrorModal(); + } else if (email.substr(email.length - 10) !== "@gmail.com") { + setErrorMessage("The email entered does not match the standard format"); + openErrorModal(); + } else if (pwd !== cnfPwd) { + setErrorMessage("The password and its confirmation does not match"); + openErrorModal(); + } else if (files.length < 1) { + setErrorMessage( + "The documents required to verify your organization is not uploaded" + ); + openErrorModal(); + } else { + openConfirmModal(); + } + } + function closeConfirmModal() { + setConfirmModal(false); + } + function openConfirmModal() { + setConfirmModal(true); + } + function closeErrorModal() { + setErrorModal(false); + } + function openErrorModal() { + setErrorModal(true); + } + async function register() { + const token = process.env.NEXT_PUBLIC_WEB3STORAGE_API_TOKEN; + if (!token) { + return console.error( + "A token is needed. You can create one on https://web3.storage" + ); + } + const storage = new Web3Storage({ token }); + + console.log(`Uploading ${files.length} files`); + const cid = await storage.put(files); + console.log("Content added with CID:", cid); + + setConfirmModal(false); + } + + return ( + +
+
+ Register your organization to our platform +
+
+
+ +
+
+ +
+ { + setUsername(e.target.value); + }} + placeholder="elonmusk" + /> +
+
+
+ +
+
+ +
+ { + setPhone(e.target.value); + }} + placeholder="8888888888" + required + /> +
+
+
+ +
+
+ +
+ { + setPwd(e.target.value); + }} + placeholder="•••••••••" + required + /> +
+
+
+ +
+
+ +
+ { + setCnfPwd(e.target.value); + }} + placeholder="•••••••••" + required + /> +
+
+
+
+ +
+
+ +
+ { + setEmail(e.target.value); + }} + placeholder="charitable@gmail.com" + /> +
+
+
+
+ +
+
+ +
+ {confirmModal === true ? ( + + ) : ( +
+ )} + {errorModal === true ? ( + + ) : ( +
+ )} +
+ ); +} + +export default OrgRegistration; diff --git a/frontend/yarn.lock b/frontend/yarn.lock index 001668b..29ab7c7 100644 --- a/frontend/yarn.lock +++ b/frontend/yarn.lock @@ -2481,7 +2481,7 @@ dependencies: "@web3uikit/config" "*" -"@web3uikit/web3@^0.2.2": +"@web3uikit/web3@*", "@web3uikit/web3@^0.2.2": "integrity" "sha512-OwTZJTnaWMuKXsjDpYtXSV3w12Rwm8sv4GB5ptjNoTZZ2xXx2kJrLKbRrgBgm2duhLocD2u2mdXAAmcbyyaxkg==" "resolved" "https://registry.npmjs.org/@web3uikit/web3/-/web3-0.2.2.tgz" "version" "0.2.2" @@ -2774,6 +2774,11 @@ "normalize-path" "^3.0.0" "picomatch" "^2.0.4" +"arg@^4.1.0": + "integrity" "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==" + "resolved" "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz" + "version" "4.1.3" + "arg@^5.0.2": "integrity" "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==" "resolved" "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz" @@ -2923,6 +2928,11 @@ "resolved" "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz" "version" "0.4.0" +"attr-accept@^2.2.2": + "integrity" "sha512-7prDjvt9HmqiZ0cl5CRjtS84sEyhsHP2coDkaZKRKVfCDo9s7iw7ChVmar78Gu9pC4SoR/28wFu/G5JJhTnqEg==" + "resolved" "https://registry.npmjs.org/attr-accept/-/attr-accept-2.2.2.tgz" + "version" "2.2.2" + "autoprefixer@^10.4.13": "integrity" "sha512-49vKpMqcZYsJjwotvt4+h/BCjJVnhGwcLpDt5xkcaOG3eLrG/HUYLagrihYsQ+qrIBgIzX1Rw7a6L8I/ZA1Atg==" "resolved" "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.13.tgz" @@ -3653,6 +3663,11 @@ "safe-buffer" "^5.0.1" "sha.js" "^2.4.8" +"create-require@^1.1.0": + "integrity" "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==" + "resolved" "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz" + "version" "1.1.1" + "cross-fetch@^2.1.0": "integrity" "sha512-9JZz+vXCmfKUZ68zAptS7k4Nu8e2qcibe7WVZYps7sAgk5R8GYTc+T1WR0v1rlP9HxgARmOX1UTIJZFytajpNA==" "resolved" "https://registry.npmjs.org/cross-fetch/-/cross-fetch-2.2.6.tgz" @@ -3887,6 +3902,11 @@ "resolved" "https://registry.npmjs.org/didyoumean/-/didyoumean-1.2.2.tgz" "version" "1.2.2" +"diff@^4.0.1": + "integrity" "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==" + "resolved" "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz" + "version" "4.0.2" + "diffie-hellman@^5.0.0": "integrity" "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==" "resolved" "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz" @@ -4919,6 +4939,13 @@ dependencies: "flat-cache" "^3.0.4" +"file-selector@^0.6.0": + "integrity" "sha512-QlZ5yJC0VxHxQQsQhXvBaC7VRJ2uaxTf+Tfpu4Z/OcVQJVpZO+DGU0rkoVW5ce2SccxugvpBJoMvUs59iILYdw==" + "resolved" "https://registry.npmjs.org/file-selector/-/file-selector-0.6.0.tgz" + "version" "0.6.0" + dependencies: + "tslib" "^2.4.0" + "file-uri-to-path@1.0.0": "integrity" "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==" "resolved" "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz" @@ -6394,6 +6421,11 @@ "@magic-sdk/types" "^11.2.0" "localforage" "^1.7.4" +"make-error@^1.1.1": + "integrity" "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==" + "resolved" "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz" + "version" "1.3.6" + "map-obj@^1.0.0": "integrity" "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==" "resolved" "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz" @@ -6702,12 +6734,17 @@ "preact-render-to-string" "^5.1.19" "uuid" "^8.3.2" +"next-themes@^0.2.1": + "integrity" "sha512-B+AKNfYNIzh0vqQQKqQItTS8evEouKD7H5Hj3kmuPERwddR2TxvDSFZuTj6T7Jfn1oyeUyJMydPl1Bkxkh0W7A==" + "resolved" "https://registry.npmjs.org/next-themes/-/next-themes-0.2.1.tgz" + "version" "0.2.1" + "next-tick@^1.1.0": "integrity" "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==" "resolved" "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz" "version" "1.1.0" -"next@^12.2.5 || ^13", "next@^13.1.6", "next@>=12.2.5": +"next@*", "next@^12.2.5 || ^13", "next@^13.1.6", "next@>=12.2.5": "integrity" "sha512-hHlbhKPj9pW+Cymvfzc15lvhaOZ54l+8sXDXJWm3OBNBzgrVj6hwGPmqqsXg40xO1Leq+kXpllzRPuncpC0Phw==" "resolved" "https://registry.npmjs.org/next/-/next-13.1.6.tgz" "version" "13.1.6" @@ -7468,6 +7505,14 @@ dependencies: "prop-types" "^15.5.10" +"react-dom@*", "react-dom@^17.0.2 || ^18", "react-dom@^18.0.0", "react-dom@^18.2.0", "react-dom@>= 16.8.0", "react-dom@>=16.8", "react-dom@>=17.0.0": + "integrity" "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==" + "resolved" "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz" + "version" "18.2.0" + dependencies: + "loose-envify" "^1.1.0" + "scheduler" "^0.23.0" + "react-dom@^16.8.6": "integrity" "sha512-1gCeQXDLoIqMgqD3IO2Ah9bnf0w9kzhwN5q4FGnHZ67hBm9yePzB5JJAIQCc8x3pFnNlwFq4RidZggNAAkzWWw==" "resolved" "https://registry.npmjs.org/react-dom/-/react-dom-16.14.0.tgz" @@ -7478,14 +7523,6 @@ "prop-types" "^15.6.2" "scheduler" "^0.19.1" -"react-dom@^17.0.2 || ^18", "react-dom@^18.0.0", "react-dom@^18.2.0", "react-dom@>= 16.8.0", "react-dom@>=16.8", "react-dom@>=17.0.0": - "integrity" "sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==" - "resolved" "https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz" - "version" "18.2.0" - dependencies: - "loose-envify" "^1.1.0" - "scheduler" "^0.23.0" - "react-dom@^17": "integrity" "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==" "resolved" "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz" @@ -7495,6 +7532,15 @@ "object-assign" "^4.1.1" "scheduler" "^0.20.2" +"react-dropzone@^14.2.3": + "integrity" "sha512-O3om8I+PkFKbxCukfIR3QAGftYXDZfOE2N1mr/7qebQJHs7U+/RSL/9xomJNpRg9kM5h9soQSdf0Gc7OHF5Fug==" + "resolved" "https://registry.npmjs.org/react-dropzone/-/react-dropzone-14.2.3.tgz" + "version" "14.2.3" + dependencies: + "attr-accept" "^2.2.2" + "file-selector" "^0.6.0" + "prop-types" "^15.8.1" + "react-is@^16.13.1", "react-is@^16.7.0", "react-is@>= 16.8.0": "integrity" "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" "resolved" "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz" @@ -7529,7 +7575,7 @@ "prop-types" "^15.8.1" "qr.js" "0.0.0" -"react-router-dom@^6.3.0": +"react-router-dom@^6.3.0", "react-router-dom@^6.8.1": "integrity" "sha512-67EXNfkQgf34P7+PSb6VlBuaacGhkKn3kpE51+P6zYSG2kiRoumXEL6e27zTa9+PGF2MNXbgIUHTVlleLbIcHQ==" "resolved" "https://registry.npmjs.org/react-router-dom/-/react-router-dom-6.8.1.tgz" "version" "6.8.1" @@ -7544,7 +7590,7 @@ dependencies: "@remix-run/router" "1.3.2" -"react@^16.11.0 || ^17.0.0 || ^18.0.0", "react@^16.8.0 || ^17.0.1", "react@^16.x || ^17.x || ^18.x", "react@^17.0.2 || ^18", "react@^18.0.0", "react@^18.2.0", "react@>= 16.8.0", "react@>= 16.8.0 || 17.x.x || ^18.0.0-0", "react@>=15.0.0", "react@>=16.8", "react@>=17.0.0": +"react@*", "react@^16.11.0 || ^17.0.0 || ^18.0.0", "react@^16.8.0 || ^17.0.1", "react@^16.x || ^17.x || ^18.x", "react@^17.0.2 || ^18", "react@^18.0.0", "react@^18.2.0", "react@>= 16.8 || 18.0.0", "react@>= 16.8.0", "react@>= 16.8.0 || 17.x.x || ^18.0.0-0", "react@>=15.0.0", "react@>=16.8", "react@>=17.0.0": "integrity" "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==" "resolved" "https://registry.npmjs.org/react/-/react-18.2.0.tgz" "version" "18.2.0" @@ -8057,7 +8103,7 @@ "resolved" "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz" "version" "1.0.2" -"source-map-support@~0.5.20": +"source-map-support@^0.5.17", "source-map-support@~0.5.20": "integrity" "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==" "resolved" "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz" "version" "0.5.21" @@ -8515,6 +8561,18 @@ "resolved" "https://registry.npmjs.org/ts-custom-error/-/ts-custom-error-3.3.1.tgz" "version" "3.3.1" +"ts-node@>=9.0.0", "ts-node@9.1.1": + "integrity" "sha512-hPlt7ZACERQGf03M253ytLY3dHbGNGrAq9qIHWUY9XHYl1z7wYngSr3OQ5xmui8o2AaxsONxIzjafLUiWBo1Fg==" + "resolved" "https://registry.npmjs.org/ts-node/-/ts-node-9.1.1.tgz" + "version" "9.1.1" + dependencies: + "arg" "^4.1.0" + "create-require" "^1.1.0" + "diff" "^4.0.1" + "make-error" "^1.1.1" + "source-map-support" "^0.5.17" + "yn" "3.1.1" + "tsconfig-paths@^3.14.1": "integrity" "sha512-fxDhWnFSLt3VuTwtvJt5fpwxBHg5AdKWMsgcPOOIilyjymcYVZoCQF8fvFRezCNfblEXmi+PcM1eYHeOAgXCOQ==" "resolved" "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.1.tgz" @@ -8637,7 +8695,7 @@ dependencies: "is-typedarray" "^1.0.0" -"typescript@>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta", "typescript@>=3.3.1", "typescript@4.9.5": +"typescript@^4.6.3", "typescript@>=2.7", "typescript@>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta", "typescript@>=3.3.1", "typescript@4.9.5": "integrity" "sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==" "resolved" "https://registry.npmjs.org/typescript/-/typescript-4.9.5.tgz" "version" "4.9.5" @@ -8984,6 +9042,23 @@ "styled-components" "^5.3.3" "tslib" "^1.10.0" +"web3uikit@^1.0.4": + "integrity" "sha512-tN9fMmQ68gKIkd1Wt0nXxxfvqwKbVBcJZuDtIWzHDsSqbryU7BpTEjYrd4UCo5KWCVNGacujCxn9JknP15lwRQ==" + "resolved" "https://registry.npmjs.org/web3uikit/-/web3uikit-1.0.4.tgz" + "version" "1.0.4" + dependencies: + "@web3uikit/config" "*" + "@web3uikit/core" "*" + "@web3uikit/icons" "*" + "@web3uikit/styles" "*" + "@web3uikit/web3" "*" + "moralis" "^1.8.1" + "react-moralis" "^1.4.0" + "react-router-dom" "^6.3.0" + "ts-node" "9.1.1" + "typescript" "^4.6.3" + "wp5-cra-polyfill" "github:oscario2/wp5-cra-polyfill#91431fa" + "webidl-conversions@^3.0.0": "integrity" "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" "resolved" "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz" @@ -9264,6 +9339,11 @@ "y18n" "^4.0.0" "yargs-parser" "^13.1.2" +"yn@3.1.1": + "integrity" "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==" + "resolved" "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz" + "version" "3.1.1" + "yocto-queue@^0.1.0": "integrity" "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==" "resolved" "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz" diff --git a/hardhat/contracts/Charity.sol b/hardhat/contracts/Charity.sol new file mode 100644 index 0000000..b9dd281 --- /dev/null +++ b/hardhat/contracts/Charity.sol @@ -0,0 +1,793 @@ +// SPDX-License-Identifier: MIT +pragma solidity ^0.8.9; + +contract Charity { + struct Organization { + address org_address; + string name; + string doc_cid; + uint256 upvotes; + uint256 downvotes; + bool verification_status; + address[] upvoters; + address[] downvoters; + uint256 stake; + string desc; + uint256 points; + uint256 application_time; + bool isStakePaid; + bool decision; + } + + struct Violation { + uint256 id; + address org_address; + string doc_cid; + string desc; + uint256 upvotes; + uint256 downvotes; + address[] upvoters; + address[] downvoters; + bool isOpen; + uint256 start_time; + uint256 end_time; + bool isViolated; + } + + struct FinancialReport { + address org_address; + uint256 upvotes; + uint256 downvotes; + address[] upvoters; + address[] downvoters; + uint256 reportUploadStartTime; + uint256 reportUploadEndTime; + bool isReportTrue; + string report_cid; + bool isOpen; + bool isSubmitted; + } + + mapping(address => Organization) private orgIdentifier; + mapping(address => mapping(address => uint256)) voters; + mapping(uint256 => mapping(address => uint256)) violation_voters; + mapping(address => mapping(address => uint256)) financial_report_voters; + mapping(address => bool) verifiedOrgMap; + mapping(address => bool) temp; + mapping(uint256 => Violation) violationMap; + mapping(address => FinancialReport) financialReportMap; + + address[] organizationAddress; + address[] notVotedAddress; + address[] maxPointAddress; + address[] finishedVotes; + uint256[] finishedViolationVotes; + address[] financialReportsAddress; + address[] notSubmitFRAddress; + address public admin; + + uint256 public totalOrganizations; + uint256 stakeToBeDistributed; + uint256 registeredViolations; + + Organization[] listOrganizations; + FinancialReport[] listFinancialReports; + + constructor() { + admin = msg.sender; + stakeToBeDistributed = 5 * 10 ** 17; + registeredViolations = 0; + } + + // GENERAL FUNCTIONS OF THE CONTRACT + + // Function to check whether the organization is verfied or not. + function isVerified() public view returns (bool) { + return orgIdentifier[msg.sender].isStakePaid; + } + + // Function to check whether the organization has staked its ethers or not. + function isStaked() public view returns (bool) { + return orgIdentifier[msg.sender].isStakePaid; + } + + // This function returns the count of upvotes done for verfying the organization. + function countOfUpvotes(address org_addr) public view returns (uint256) { + return orgIdentifier[org_addr].upvotes; + } + + // This function returns the count of downvotes done for verifying the organization. + function countOfDownvotes(address org_addr) public view returns (uint256) { + return orgIdentifier[org_addr].downvotes; + } + + function countOfViews(address org_addr) public view returns (uint256) { + return + totalOrganizations - + countOfUpvotes(org_addr) - + countOfDownvotes(org_addr); + } + + // Function to check whether the caller has upvoted or not. + function checkIfUpvoted(address org_address) public view returns (bool) { + return voters[org_address][msg.sender] == 1; + } + + // Function to check whether the caller has downvoted or not. + function checkIfDownvoted(address org_address) public view returns (bool) { + return voters[org_address][msg.sender] == 2; + } + + //Function to check whether the time of voting for the registered organizations is finish or not. + function votingDone( + address org_address, + uint256 current_time + ) public view returns (bool) { + if (orgIdentifier[org_address].application_time < current_time) { + return true; + } else { + return false; + } + } + + // Function used to return the list of all the verified organization onto the website. + function verifiedOrganizationsList() + public + returns (Organization[] memory) + { + for (uint256 i = 0; i < organizationAddress.length; i++) { + if ( + orgIdentifier[organizationAddress[i]].verification_status && + orgIdentifier[organizationAddress[i]].isStakePaid + ) { + listOrganizations.push(orgIdentifier[organizationAddress[i]]); + } + } + return listOrganizations; + } + + // Function to return the list of all the un verifiied orgnization onto the website. + function unverifiedOrganizationsList() + public + returns (Organization[] memory) + { + for (uint256 i = 0; i < organizationAddress.length; i++) { + if (orgIdentifier[organizationAddress[i]].isStakePaid == false) { + listOrganizations.push(orgIdentifier[organizationAddress[i]]); + } + } + return listOrganizations; + } + + // Function to empty the listOrganization global array variable. + function emptyListOrganization() public { + uint256 timeLoop = listOrganizations.length; + for (uint256 i = 0; i < timeLoop; i++) { + listOrganizations.pop(); + } + } + + modifier isValid(address org_address, address voter_address) { + require( + orgIdentifier[org_address].application_time != 0, + "Organization address does not exist!" + ); + require( + !orgIdentifier[org_address].verification_status, + "Organization already verified!" + ); + require( + orgIdentifier[voter_address].application_time != 0 && + orgIdentifier[voter_address].verification_status, + "Voter organization is not verified, not permitted to vote!" + ); + require( + voters[org_address][voter_address] == 0, + "Voter organization cannot vote more than once!" + ); + _; + } + + // THIS FUNCTION WILL BE IN THE FRONTEND. + // function transfer( + // address from, + // address to, + // uint256 value + // ) public returns (bool) {} + + // FUNCTIONS OF ORGANIZATIONS + + // Function to register the organization onto the website. + function registerOrg( + address organization_address, + string memory organization_name, + string memory document_cid, + string memory description, + uint256 time + ) public { + require( + orgIdentifier[organization_address].application_time == 0, + "Organization already registered!" + ); + + Organization memory org; + + org.org_address = organization_address; + org.name = organization_name; + org.doc_cid = document_cid; + org.desc = description; + org.application_time = time + 2 days; + orgIdentifier[organization_address] = org; + + organizationAddress.push(organization_address); + } + + // Function to upvote the organization. + function upVote( + address org_address, + address voter_address, + uint256 current_time + ) public isValid(org_address, voter_address) returns (bool) { + orgIdentifier[org_address].upvotes += 1; + orgIdentifier[org_address].upvoters.push(voter_address); + voters[org_address][voter_address] = 1; + if (orgIdentifier[org_address].application_time < current_time) { + return true; + } else { + return false; + } + } + + // Function to downvote the organization. + function downVote( + address org_address, + address voter_address, + uint256 current_time + ) public isValid(org_address, voter_address) returns (bool) { + orgIdentifier[org_address].downvotes += 1; + orgIdentifier[org_address].downvoters.push(voter_address); + voters[org_address][voter_address] = 2; + if (orgIdentifier[org_address].application_time < current_time) { + return true; + } else { + return false; + } + } + + // Function to check whether the organization is verified or not. + function checkVerificationStatus( + address org_address, + bool category + ) public view returns (bool, bool) { + if ( + orgIdentifier[org_address].upvotes * 100 >= totalOrganizations * 51 + ) { + return (true, category); + } + return (false, category); + } + + // THIS FUNCTION WILL BE IN THE FRONTEND. + // This Function transfers all the stake into the contract. + // function transferStakeToContract(address org_address, bool category) + // public + // returns (bool) + // { + // bool status = transfer( + // org_address, + // address(this), + // orgIdentifier[org_address].stake + // ); + // if (status) { + // distributeStake(org_address, category); + // } + // return status; + // } + + // Function to distribute the stake to the companies in favour. + function distributeStake(address org_address, bool category) public { + if (category) { + uint256 sum = 0; + for (uint256 i = 0; i < orgIdentifier[org_address].upvotes; i++) { + orgIdentifier[orgIdentifier[org_address].upvoters[i]].points = + orgIdentifier[orgIdentifier[org_address].upvoters[i]] + .points + + 1; + sum = sum + stakeToBeDistributed; + orgIdentifier[orgIdentifier[org_address].upvoters[i]].stake = + orgIdentifier[orgIdentifier[org_address].upvoters[i]] + .stake + + stakeToBeDistributed; + } + orgIdentifier[org_address].stake = + orgIdentifier[org_address].stake - + sum; + for (uint256 i = 0; i < orgIdentifier[org_address].downvotes; i++) { + orgIdentifier[orgIdentifier[org_address].downvoters[i]].points = + orgIdentifier[orgIdentifier[org_address].downvoters[i]] + .points - + 1; + } + } else { + uint256 sum = 0; + for (uint256 i = 0; i < orgIdentifier[org_address].downvotes; i++) { + orgIdentifier[orgIdentifier[org_address].downvoters[i]].points = + orgIdentifier[orgIdentifier[org_address].downvoters[i]] + .points + + 1; + sum = sum + stakeToBeDistributed; + orgIdentifier[orgIdentifier[org_address].downvoters[i]].stake = + orgIdentifier[orgIdentifier[org_address].downvoters[i]] + .stake + + stakeToBeDistributed; + } + orgIdentifier[org_address].stake = + orgIdentifier[org_address].stake - + sum; + for (uint256 i = 0; i < orgIdentifier[org_address].upvotes; i++) { + orgIdentifier[orgIdentifier[org_address].upvoters[i]].points = + orgIdentifier[orgIdentifier[org_address].upvoters[i]] + .points - + 1; + } + } + } + + function setVerificationStatus(address org_address) public { + if ( + orgIdentifier[org_address].upvotes * 100 >= totalOrganizations * 51 + ) { + orgIdentifier[org_address].verification_status = true; + } else { + orgIdentifier[org_address].verification_status = false; + distributeStake(org_address, false); + } + } + + // Function to change the status of isStakePaid and add the organization into the list of verified organization. + function changeStakePaid() public { + orgIdentifier[msg.sender].isStakePaid = true; + distributeStake(msg.sender, true); + markAsVerified(msg.sender); + } + + // Function to put the organization into the verified list. This has to be called after the stake is paid. + function markAsVerified(address org_address) public { + totalOrganizations += 1; + verifiedOrgMap[org_address] = true; + } + + // Function used to get all the organizations whose time of voting expired. + function cronJobsForVotes() public returns (address[] memory) { + for (uint256 i = 0; i < organizationAddress.length; i++) { + if ( + orgIdentifier[organizationAddress[i]].decision == false && + orgIdentifier[organizationAddress[i]].application_time < + block.timestamp + ) { + finishedVotes.push(organizationAddress[i]); + } + } + return finishedVotes; + } + + // Function used to empty the finishedVotes array. + function emptyFinishedVotes() public { + uint256 timeLoop = finishedVotes.length; + for (uint256 i = 0; i < timeLoop; i++) { + finishedVotes.pop(); + } + } + + // Function to be called when the time of voting for organization verification is over using cron job(assumption). + function notVoted(address org_address) public { + for ( + uint256 i = 0; + i < orgIdentifier[org_address].upvoters.length; + i++ + ) { + temp[orgIdentifier[org_address].upvoters[i]] = true; + } + for ( + uint256 i = 0; + i < orgIdentifier[org_address].downvoters.length; + i++ + ) { + temp[orgIdentifier[org_address].downvoters[i]] = true; + } + + for (uint256 i = 0; i < organizationAddress.length; i++) { + if (temp[organizationAddress[i]] == false) { + notVotedAddress.push(organizationAddress[i]); + } + } + } + + // Function used to cut the stake of the organzizations failed to vote for verification/ + function cutStakeOfNotVoted() public { + for (uint256 i = 0; i < notVotedAddress.length; i++) { + orgIdentifier[notVotedAddress[i]].stake = + orgIdentifier[notVotedAddress[i]].stake - + stakeToBeDistributed; + } + } + + // Function used to clear the global notVotedAddress. + function emptyNotVotedArray(address org_address) public { + uint256 loopTime = notVotedAddress.length; + for (uint256 i = 0; i < loopTime; i++) { + notVotedAddress.pop(); + } + for ( + uint256 i = 0; + i < orgIdentifier[org_address].upvoters.length; + i++ + ) { + temp[orgIdentifier[org_address].upvoters[i]] = false; + } + for ( + uint256 i = 0; + i < orgIdentifier[org_address].downvoters.length; + i++ + ) { + temp[orgIdentifier[org_address].downvoters[i]] = false; + } + } + + // FUNCTIONS FOR DONARS + + // THIS FUNCTION WILL BE IN THE FRONTEND. + // Function for the user to donate the eth to the organizations. + // function donate( + // address donor_address, + // address org_address, + // uint256 amount + // ) public { + // transfer(donor_address, org_address, amount); + // } + + // FUNCTIONS OF VIOLATIONS + + // Function used to register the violation of the organization. + function registerViolation( + address organization_address, + string memory document_cid, + string memory description, + uint256 registration_time + ) public { + Violation memory vio; + + vio.id = registeredViolations; + vio.org_address = organization_address; + vio.doc_cid = document_cid; + vio.desc = description; + vio.start_time = registration_time; + vio.end_time = registration_time + 5 days; + vio.isOpen = true; + + violationMap[registeredViolations] = vio; + registeredViolations = registeredViolations + 1; + } + + // Function used for upvoting the violations of the organization. + function violationUpVote(uint256 index) public { + violationMap[index].upvotes = violationMap[index].upvotes + 1; + violationMap[index].upvoters.push(msg.sender); + violation_voters[index][msg.sender] = 1; + } + + // Function used for downvoting the violations of the organization. + function violationDownVote(uint256 index) public { + violationMap[index].downvotes = violationMap[index].downvotes + 1; + violationMap[index].downvoters.push(msg.sender); + violation_voters[index][msg.sender] = 2; + } + + // Function used to return the array of the violations whose time for voting is over. + function finishedViolationVoting() public returns (uint256[] memory) { + for (uint256 i = 0; i < registeredViolations; i++) { + if (violationMap[i].end_time < block.timestamp) { + finishedViolationVotes.push(i); + } + } + return finishedViolationVotes; + } + + // Function to empty the finishedViolationVotes array. + function emptyFinishedViolationVotes() public { + uint256 timeLoop = finishedViolationVotes.length; + for (uint256 i = 0; i < timeLoop; i++) { + finishedViolationVotes.pop(); + } + } + + // Function to be called once the voting period of violation is finished. + function setViolationStatus(uint256 index) public { + uint256 totalVotes = violationMap[index].upvotes + + violationMap[index].downvotes; + if (violationMap[index].upvotes * 100 >= totalVotes * 51) { + violationMap[index].isViolated = true; + } else { + violationMap[index].isViolated = false; + } + violationMap[index].isOpen = false; + } + + // Function to be called to transfer the stake back to the owners after violation status is checked. + function upvotedOnVerify(uint256 index) public { + address org_address = violationMap[index].org_address; + if (violationMap[index].isViolated) { + for ( + uint256 i = 0; + i < orgIdentifier[org_address].upvoters.length; + i++ + ) { + orgIdentifier[orgIdentifier[org_address].upvoters[i]].stake = + orgIdentifier[orgIdentifier[org_address].upvoters[i]] + .stake - + stakeToBeDistributed; + orgIdentifier[orgIdentifier[org_address].upvoters[i]].points = + orgIdentifier[orgIdentifier[org_address].upvoters[i]] + .points - + 1; + } + for ( + uint256 i = 0; + i < orgIdentifier[org_address].downvoters.length; + i++ + ) { + orgIdentifier[orgIdentifier[org_address].downvoters[i]].stake = + orgIdentifier[orgIdentifier[org_address].downvoters[i]] + .stake + + stakeToBeDistributed; + orgIdentifier[orgIdentifier[org_address].downvoters[i]].points = + orgIdentifier[orgIdentifier[org_address].downvoters[i]] + .points + + 1; + } + } + } + + // Function to be called when the organization is correctly verified for violating rules and donating its stake to the organizations having most points. + function RemoveCharityIfFraud(uint256 index) public { + address org_address = violationMap[index].org_address; + if (violationMap[index].isViolated == true) { + orgIdentifier[org_address].verification_status = false; + orgIdentifier[org_address].isStakePaid = false; + totalOrganizations -= 1; + verifiedOrgMap[org_address] = false; + + uint256 maxPoints; + + for (uint256 i = 0; i < organizationAddress.length; i++) { + if ( + orgIdentifier[organizationAddress[i]].verification_status && + maxPoints < orgIdentifier[organizationAddress[i]].points + ) { + maxPoints = orgIdentifier[organizationAddress[i]].points; + maxPointAddress.push(organizationAddress[i]); + } + } + uint256 amountToBeDistributed = orgIdentifier[org_address].stake / + maxPointAddress.length; + + for (uint256 i = 0; i < maxPointAddress.length; i++) { + // donate the money from the contract to the organizations with max points shortlisted. + orgIdentifier[maxPointAddress[i]].stake = + orgIdentifier[maxPointAddress[i]].stake + + amountToBeDistributed; + } + + uint256 loopTime = maxPointAddress.length; + for (uint256 i = 0; i < loopTime; i++) { + maxPointAddress.pop(); + } + } + } + + // FUNCTIONS FOR FINANCIAL REPORTS OF THE ORGANIZATIONS. + // Assuming the time for all the companies will be same that is at the year end. + // So there is no need to have the different end times. + + // Function for registering the financial reports of the organizations. + function registerFinancialReport( + address org_address, + string memory cid, + uint256 registration_time + ) public { + FinancialReport memory finRep; + + finRep.org_address = org_address; + finRep.report_cid = cid; + finRep.reportUploadStartTime = registration_time; + finRep.reportUploadEndTime = registration_time + 5 days; + finRep.isSubmitted = false; + + financialReportMap[org_address] = finRep; + financialReportsAddress.push(org_address); + } + + // Function used for upvoting the financial reports of the organizations. + function reportUpVote(address org_address) public { + financialReportMap[org_address].upvotes = + financialReportMap[org_address].upvotes + + 1; + financialReportMap[org_address].upvoters.push(msg.sender); + financial_report_voters[org_address][msg.sender] = 1; + } + + // Function used for downnvoting the financial reports of the organizations. + function reportsDownVote(address org_address) public { + financialReportMap[org_address].downvotes = + financialReportMap[org_address].downvotes + + 1; + financialReportMap[org_address].downvoters.push(msg.sender); + financial_report_voters[org_address][msg.sender] = 2; + } + + // Function to return the list of all the submissions of the financial reports. + function getFinancialReports() public returns (FinancialReport[] memory) { + for (uint256 i = 0; i < financialReportsAddress.length; i++) { + listFinancialReports.push( + financialReportMap[financialReportsAddress[i]] + ); + } + return listFinancialReports; + } + + // Function to empty the listFinancialReports array + function emptyListFinancialReports() public { + uint256 timeLoop = listFinancialReports.length; + for (uint256 i = 0; i < timeLoop; i++) { + listFinancialReports.pop(); + } + } + + // Function to get the list of the Orgs that submitted the financial reports. + function getSubmittedFROrgs() public view returns (address[] memory) { + return financialReportsAddress; + } + + // Function to get the list of the Orgs failed to submit the financial reports. + function getUnsubmittedFROrgs() public returns (address[] memory) { + for (uint256 i = 0; i < organizationAddress.length; i++) { + if ( + orgIdentifier[organizationAddress[i]].isStakePaid == true && + financialReportMap[organizationAddress[i]].isSubmitted == false + ) { + notSubmitFRAddress.push(organizationAddress[i]); + } + } + return notSubmitFRAddress; + } + + // Function to empty notSubmitFRAddress array. + function emptyNotSubmitFRAddress() public { + uint256 timeLoop = notSubmitFRAddress.length; + for (uint256 i = 0; i < timeLoop; i++) { + notSubmitFRAddress.pop(); + } + } + + // Function to be called once the time for voting of financial reports are over. + function setFinancialReportStatus(address org_address) public { + uint256 totalVotes = financialReportMap[org_address].upvotes + + financialReportMap[org_address].downvotes; + if (financialReportMap[org_address].upvotes * 100 >= totalVotes * 51) { + financialReportMap[org_address].isReportTrue = true; + } else { + financialReportMap[org_address].isReportTrue = false; + } + } + + // Function to be called to transfer the stake back to the owners after fraud status is checked. + function upvotedOnFinancialReport(address org_address) public { + if (financialReportMap[org_address].isReportTrue == false) { + for ( + uint256 i = 0; + i < orgIdentifier[org_address].upvoters.length; + i++ + ) { + orgIdentifier[orgIdentifier[org_address].upvoters[i]].stake = + orgIdentifier[orgIdentifier[org_address].upvoters[i]] + .stake - + stakeToBeDistributed; + orgIdentifier[orgIdentifier[org_address].upvoters[i]].points = + orgIdentifier[orgIdentifier[org_address].upvoters[i]] + .points - + 1; + } + for ( + uint256 i = 0; + i < orgIdentifier[org_address].downvoters.length; + i++ + ) { + orgIdentifier[orgIdentifier[org_address].downvoters[i]].stake = + orgIdentifier[orgIdentifier[org_address].downvoters[i]] + .stake + + stakeToBeDistributed; + orgIdentifier[orgIdentifier[org_address].downvoters[i]].points = + orgIdentifier[orgIdentifier[org_address].downvoters[i]] + .points + + 1; + } + } + } + + // Function for removing the organization from the list of verified organization and donating its stake to the organizations having most points. + function RemoveCharityIfFinancialReportFraud(address org_address) public { + if (financialReportMap[org_address].isReportTrue == false) { + orgIdentifier[org_address].verification_status = false; + orgIdentifier[org_address].isStakePaid = false; + totalOrganizations -= 1; + verifiedOrgMap[org_address] = false; + uint256 maxPoints; + + for (uint256 i = 0; i < organizationAddress.length; i++) { + if ( + orgIdentifier[organizationAddress[i]].verification_status && + maxPoints < orgIdentifier[organizationAddress[i]].points + ) { + maxPoints = orgIdentifier[organizationAddress[i]].points; + maxPointAddress.push(organizationAddress[i]); + } + } + uint256 amountToBeDistributed = orgIdentifier[org_address].stake / + maxPointAddress.length; + + for (uint256 i = 0; i < maxPointAddress.length; i++) { + // donate the money from the contract to the organizations with max points shortlisted. + orgIdentifier[maxPointAddress[i]].stake = + orgIdentifier[maxPointAddress[i]].stake + + amountToBeDistributed; + } + + uint256 loopTime = maxPointAddress.length; + for (uint256 i = 0; i < loopTime; i++) { + maxPointAddress.pop(); + } + } + } + + // Function used for empty financialReportAddress array. + function emptyFinancialReportAddress() public { + uint256 timeLoop = financialReportsAddress.length; + for (uint256 i = 0; i < timeLoop; i++) { + financialReportsAddress.pop(); + } + } +} + +// Algorithm +// time of registration = 1400 (12.00 pm) +// 12 hrs adds 1000 to system time. +// means 1 day = 2000 system time increase. +// limit = 5400 +// 6400 + +// Calling sequence from frontend for verification for upvote: +// 1) upVote(); +// 2) checkVerificationStatus(org_address, category); +// 3) transferToContract(org_address, category); +// 4) markAsVerified(org_address); + +// Calling sequence from frontend for verification for upvote: +// 1) downVote(); +// 2) checkVerificationStatus(org_address, category); +// 3) transferToContract(org_address, category); +// 4) markAsVerified(org_address); + +// Calling Sequence from frontend using cron job for the organizations failed to vote: +// 1) notVoted(); +// 2) cutStakeOfNotVoted(); +// 3) emptyNotVotedArray(); + +// On time expire for violation - +// 1) checkViolationStatus +// 2) upvotedOnVerify +// 3) RemoveCharityIfFraud(org_address); + +// On time expire for Financial report verification per -d +// 1) checkFinancialReportStatus +// 2) upvotedOnFinancialReport +// 3) RemoveCharityIfFinancialReportFraud(org_address); diff --git a/hardhat/contracts/OrgCreation.sol b/hardhat/contracts/OrgCreation.sol new file mode 100644 index 0000000..448b62c --- /dev/null +++ b/hardhat/contracts/OrgCreation.sol @@ -0,0 +1,303 @@ +// SPDX-License-Identifier: UNLICENSED +pragma solidity ^0.8.9; + +contract OrgCreation { + struct Organization { + address org_address; + string name; + string doc_cid; + uint256 upvotes; + uint256 downvotes; + uint256 views; + bool verification_status; + address[] upvoters; + address[] downvoters; + mapping(address => uint8) voters; + uint256 stake; + string desc; + uint256 points; + uint256 application_time; + bool isStakePaid; + } + struct OrgDetails { + address org_address; + string name; + string doc_cid; + uint256 upvotes; + uint256 downvotes; + uint256 views; + bool verification_status; + string desc; + uint256 application_time; + } + + + mapping(address => Organization) orgIdentifier; + mapping(address => mapping(address => uint256)) voters; + mapping(address => bool) verifiedOrgMap; + mapping(address => bool) temp; + + address[] organizationAddress; + address[] notVotedAddress; + address[] maxPointAddress; + address public admin; + uint256 verified_org_cnt=1; + + uint256 public totalOrganizations; + uint256 stakeToBeDistributed; + uint256 registeredViolations; + + Organization[] listOrganizations; + + constructor() { + admin = msg.sender; + stakeToBeDistributed = 5 * 10**17; + registeredViolations = 0; + registerOrg(msg.sender,"Owner","None","Description",block.timestamp); + orgIdentifier[msg.sender].verification_status = true; + } + + // GENERAL FUNCTIONS OF THE CONTRACT + + // Function to check whether the organization is verfied or not. + function isVerified() public view returns (bool) { + return orgIdentifier[msg.sender].verification_status; + } + + // Function to check whether the organization has staked its ethers or not. + function isStaked() public view returns (bool) { + return orgIdentifier[msg.sender].isStakePaid; + } + + // Function to change the status of isStakePaid. + function changeIsStakedPaid() public { + orgIdentifier[msg.sender].isStakePaid = true; + } + + // This function returns the count of upvotes done for verfying the organization. + function countOfUpvotes(address org_addr) public view returns (uint256) { + return orgIdentifier[org_addr].upvotes; + } + + // This function returns the count of downvotes done for verifying the organization. + function countOfDownvotes(address org_addr) public view returns (uint256) { + return orgIdentifier[org_addr].downvotes; + } + + function countOfViews(address org_addr) public view returns (uint256) { + return + totalOrganizations - + countOfUpvotes(org_addr) - + countOfDownvotes(org_addr); + } + + // Function to check whether the caller has upvoted or not. + function checkIfUpvoted(address org_address) public view returns (bool) { + address voter_addr = msg.sender; + return orgIdentifier[org_address].voters[voter_addr] == 2; + } + + // Function to check whether the caller has downvoted or not. + function checkIfDownvoted(address org_address) public view returns (bool) { + address voter_addr = msg.sender; + return orgIdentifier[org_address].voters[voter_addr] == 1; + } + + //Function to check whether the time of voting for the registered organizations is finish or not. + function votingDone( + address org_addr, + uint256 current_time + ) public view returns (bool) { + if (orgIdentifier[org_addr].application_time < current_time) { + return true; + } else { + return false; + } + } + + // Function used to return the list of all the verified organization onto the website. + function verifiedOrganizationsList() + public + view + returns (OrgDetails[] memory) + { + uint256 len = organizationAddress.length; + uint256 cnt = 0; + OrgDetails[] memory verified_org = new OrgDetails[](verified_org_cnt); + for (uint256 i = 0; i < len; i++) { + address org_addr = organizationAddress[i]; + if (orgIdentifier[org_addr].verification_status) { + Organization storage new_org = orgIdentifier[org_addr]; + OrgDetails memory new_org_det = OrgDetails({ + org_address: new_org.org_address, + name: new_org.name, + doc_cid: new_org.doc_cid, + upvotes: new_org.upvotes, + downvotes: new_org.downvotes, + views:new_org.views, + verification_status: new_org.verification_status, + desc: new_org.desc, + application_time: new_org.application_time + }); + verified_org[cnt] = new_org_det; + cnt += 1; + } + } + return verified_org; + } + + // Function to return the list of all the un verifiied orgnization onto the website. + + function unverifiedOrganizationsList() + public + view + returns (OrgDetails[] memory) + { + uint256 len = organizationAddress.length; + uint256 cnt = 0; + OrgDetails[] memory unverified_org = new OrgDetails[]( + organizationAddress.length - verified_org_cnt + ); + for (uint256 i = 0; i < len; i++) { + address org_addr = organizationAddress[i]; + if (!orgIdentifier[org_addr].verification_status) { + OrgDetails memory new_org = OrgDetails({ + org_address: orgIdentifier[org_addr].org_address, + name: orgIdentifier[org_addr].name, + doc_cid: orgIdentifier[org_addr].doc_cid, + upvotes: orgIdentifier[org_addr].upvotes, + downvotes: orgIdentifier[org_addr].downvotes, + views:orgIdentifier[org_addr].views, + verification_status: orgIdentifier[org_addr].verification_status, + desc: orgIdentifier[org_addr].desc, + application_time: orgIdentifier[org_addr].application_time + }); + unverified_org[cnt] = new_org; + cnt += 1; + } + } + return unverified_org; + } + + + // Function to empty the listOrganization global array variable. + function emptyListOrganization() public { + uint256 timeLoop = listOrganizations.length; + for (uint256 i = 0; i < timeLoop; i++) { + listOrganizations.pop(); + } + } + + modifier isValidOrg (address org_addr) + { + require( + orgIdentifier[org_addr].application_time != 0, + "Organization address does not exist!" + ); + require( + !orgIdentifier[org_addr].verification_status, + "Organization already verified!" + ); + require( + orgIdentifier[msg.sender].application_time != 0 && + orgIdentifier[msg.sender].verification_status, + "Voter organization is not verified, not permitted to vote!" + ); + require( + !checkIfUpvoted(org_addr) && !checkIfDownvoted(org_addr), + "Voter organization cannot vote more than once!" + ); + _; + } + + // THIS FUNCTION WILL BE IN THE FRONTEND. + + // FUNCTIONS OF ORGANIZATIONS + + // Function to register the organization onto the website. + function registerOrg( + address organization_address, + string memory organization_name, + string memory document_cid, + string memory description, + uint256 time + ) public { + require( + orgIdentifier[organization_address].application_time == 0, + "Organization already registered!" + ); + + orgIdentifier[organization_address].org_address = organization_address; + orgIdentifier[organization_address].name = organization_name; + orgIdentifier[organization_address].doc_cid = document_cid; + orgIdentifier[organization_address].desc = description; + orgIdentifier[organization_address].application_time = time + 2 days; + orgIdentifier[organization_address].views = countOfViews(organization_address)+1; + organizationAddress.push(organization_address); + } + + // Function to upvote the organization. + function upVote( + address org_addr, + uint256 current_time + ) public isValidOrg(org_addr) returns (bool){ + orgIdentifier[org_addr].upvotes += 1; + orgIdentifier[org_addr].upvoters.push(msg.sender); + orgIdentifier[org_addr].voters[msg.sender] = 2; + if (votingDone(org_addr, current_time)) { + checkVerificationStatus(org_addr); + return true; + } + return false; + } + + // Function to downvote the organization. + function downVote( + address org_addr, + uint256 current_time + ) public isValidOrg(org_addr) returns (bool) { + orgIdentifier[org_addr].downvotes += 1; + orgIdentifier[org_addr].downvoters.push(msg.sender); + orgIdentifier[org_addr].voters[msg.sender] = 1; + if (votingDone(org_addr, current_time)) { + return checkVerificationStatus(org_addr); + + } + return false; + } + + // Function to check whether the organization is verified or not. + function checkVerificationStatus(address org_address) + public + view + returns (bool) + { + if ( + orgIdentifier[org_address].upvotes * 100 >= totalOrganizations * 51 + ) { + return true; + } + return false; + } + + // THIS FUNCTION WILL BE IN THE FRONTEND. + // This Function transfers all the stake into the contract. + // function transferStakeToContract(address org_address, bool category) + // public + // returns (bool) + // { + // bool status = transfer( + // org_address, + // address(this), + // orgIdentifier[org_address].stake + // ); + // if (status) { + // distributeStake(org_address, category); + // } + // return status; + // } + + // Function to distribute the stake to the companies in favour. + + +} diff --git a/hardhat/contracts/OrgOperation.sol b/hardhat/contracts/OrgOperation.sol new file mode 100644 index 0000000..f5ec807 --- /dev/null +++ b/hardhat/contracts/OrgOperation.sol @@ -0,0 +1,372 @@ +// SPDX-License-Identifier: UNLICENSED +pragma solidity ^0.8.9; +import "./OrgCreation.sol"; + +contract OrgOperation is OrgCreation { + struct Violation { + address org_address; + string doc_cid; + string desc; + uint256 upvotes; + uint256 downvotes; + address[] upvoters; + address[] downvoters; + uint256 number; + bool isOpen; + uint256 start_time; + uint256 end_time; + bool isViolated; + mapping(address => uint256) voters; + } + + struct FinancialReport { + address org_address; + uint256 upvotes; + uint256 downvotes; + address[] upvoters; + address[] downvoters; + uint256 reportUploadStartTime; + uint256 reportUploadEndTime; + bool isReportTrue; + string[] cid; + } + + mapping(address => Violation) violationMap; + mapping(address => FinancialReport) financialReportMap; + + constructor() {} + + // GENERAL FUNCTIONS OF THE CONTRACT + + // Function to check whether the organization is verfied or not. + function distributeStake(address org_address, bool category) public { + if (category) { + uint256 sum = 0; + for (uint256 i = 0; i < orgIdentifier[org_address].upvotes; i++) { + orgIdentifier[orgIdentifier[org_address].upvoters[i]].points = + orgIdentifier[orgIdentifier[org_address].upvoters[i]] + .points + + 1; + sum = sum + stakeToBeDistributed; + orgIdentifier[orgIdentifier[org_address].upvoters[i]].stake = + orgIdentifier[orgIdentifier[org_address].upvoters[i]] + .stake + + stakeToBeDistributed; + } + orgIdentifier[org_address].stake = + orgIdentifier[org_address].stake - + sum; + for (uint256 i = 0; i < orgIdentifier[org_address].downvotes; i++) { + orgIdentifier[orgIdentifier[org_address].downvoters[i]].points = + orgIdentifier[orgIdentifier[org_address].downvoters[i]] + .points - + 1; + } + } else { + uint256 sum = 0; + for (uint256 i = 0; i < orgIdentifier[org_address].downvotes; i++) { + orgIdentifier[orgIdentifier[org_address].downvoters[i]].points = + orgIdentifier[orgIdentifier[org_address].downvoters[i]] + .points + + 1; + sum = sum + stakeToBeDistributed; + orgIdentifier[orgIdentifier[org_address].downvoters[i]].stake = + orgIdentifier[orgIdentifier[org_address].downvoters[i]] + .stake + + stakeToBeDistributed; + } + orgIdentifier[org_address].stake = + orgIdentifier[org_address].stake - + sum; + for (uint256 i = 0; i < orgIdentifier[org_address].upvotes; i++) { + orgIdentifier[orgIdentifier[org_address].upvoters[i]].points = + orgIdentifier[orgIdentifier[org_address].upvoters[i]] + .points - + 1; + } + } + } + + // Function to put the organization into the verified list. This has to be called after the stake is paid. + function markAsVerified(address org_address) public { + orgIdentifier[org_address].verification_status = true; + totalOrganizations += 1; + verifiedOrgMap[org_address] = true; + } + + // Function to be called when the time of voting for organization verification is over using cron job(assumption). + function notVoted(address org_address) public returns (address[] memory) { + for ( + uint256 i = 0; + i < orgIdentifier[org_address].upvoters.length; + i++ + ) { + temp[orgIdentifier[org_address].upvoters[i]] = true; + } + for ( + uint256 i = 0; + i < orgIdentifier[org_address].downvoters.length; + i++ + ) { + temp[orgIdentifier[org_address].downvoters[i]] = true; + } + + for (uint256 i = 0; i < organizationAddress.length; i++) { + if (temp[organizationAddress[i]] == false) { + notVotedAddress.push(organizationAddress[i]); + } + } + + return notVotedAddress; + } + + // Function used to cut the stake of the organzizations failed to vote for verification/ + function cutStakeOfNotVoted() public { + for (uint256 i = 0; i < notVotedAddress.length; i++) { + orgIdentifier[notVotedAddress[i]].stake = + orgIdentifier[notVotedAddress[i]].stake - + stakeToBeDistributed; + } + } + + // Function used to clear the global notVotedAddress. + function emptyNotVotedArray(address org_address) public { + uint256 loopTime = notVotedAddress.length; + for (uint256 i = 0; i < loopTime; i++) { + notVotedAddress.pop(); + } + for ( + uint256 i = 0; + i < orgIdentifier[org_address].upvoters.length; + i++ + ) { + temp[orgIdentifier[org_address].upvoters[i]] = false; + } + for ( + uint256 i = 0; + i < orgIdentifier[org_address].downvoters.length; + i++ + ) { + temp[orgIdentifier[org_address].downvoters[i]] = false; + } + } + + // FUNCTIONS FOR DONARS + + // THIS FUNCTION WILL BE IN THE FRONTEND. + // Function for the user to donate the eth to the organizations. + // function donate( + // address donor_address, + // address org_address, + // uint256 amount + // ) public { + // transfer(donor_address, org_address, amount); + // } + + // FUNCTIONS OF VIOLATIONS + + // Function used to register the violation of the organization. + function registerViolation( + address organization_address, + string memory document_cid, + string memory description, + uint256 registration_time + ) public { + violationMap[organization_address].org_address = organization_address; + violationMap[organization_address].doc_cid = document_cid; + violationMap[organization_address].desc = description; + violationMap[organization_address].start_time = registration_time; + violationMap[organization_address].end_time = + registration_time + + 5 days; + + registeredViolations = registeredViolations + 1; + } + + // Function used for upvoting the violations of the organization. + function violationUpVote(address org_address) public { + violationMap[org_address].upvotes = + violationMap[org_address].upvotes + + 1; + violationMap[org_address].upvoters.push(msg.sender); + } + + // Function used for downvoting the violations of the organization. + function violationDownVote(address org_address) public { + violationMap[org_address].downvotes = + violationMap[org_address].downvotes + + 1; + violationMap[org_address].downvoters.push(msg.sender); + } + + // Function to be called once the voting period of violation is finished. + function checkViolationStatus(address org_address) public { + uint256 totalVotes = violationMap[org_address].upvotes + + violationMap[org_address].downvotes; + if (violationMap[org_address].upvotes * 100 >= totalVotes * 51) { + violationMap[org_address].isViolated = true; + } else { + violationMap[org_address].isViolated = false; + } + } + + // ******** Function to be called to transfer the stake back to the owners after violation status is checked. + function upvotedOnVerify(address org_address) public { + if (violationMap[org_address].isViolated) { + for ( + uint256 i = 0; + i < orgIdentifier[org_address].upvoters.length; + i++ + ) { + orgIdentifier[orgIdentifier[org_address].upvoters[i]].stake = + orgIdentifier[orgIdentifier[org_address].upvoters[i]] + .stake - + stakeToBeDistributed; + } + for ( + uint256 i = 0; + i < orgIdentifier[org_address].downvoters.length; + i++ + ) { + orgIdentifier[orgIdentifier[org_address].downvoters[i]].stake = + orgIdentifier[orgIdentifier[org_address].downvoters[i]] + .stake + + stakeToBeDistributed; + } + } + } + + // Function to be called when the organization is correctly verified for violating rules and donating its stake to the organizations having most points. + function RemoveCharityIfFraud(address org_address) public { + if (violationMap[org_address].isViolated == true) { + orgIdentifier[org_address].verification_status = false; + totalOrganizations -= 1; + verifiedOrgMap[org_address] = false; + uint256 maxPoints; + + for (uint256 i = 0; i < organizationAddress.length; i++) { + if ( + orgIdentifier[organizationAddress[i]].verification_status && + maxPoints < orgIdentifier[organizationAddress[i]].points + ) { + maxPoints = orgIdentifier[organizationAddress[i]].points; + maxPointAddress.push(organizationAddress[i]); + } + } + + for (uint256 i = 0; i < maxPointAddress.length; i++) { + // donate the money from the contract to the organizations with max points shortlisted. + } + + uint256 loopTime = maxPointAddress.length; + for (uint256 i = 0; i < loopTime; i++) { + maxPointAddress.pop(); + } + } + } + + // FUNCTIONS FOR FINANCIAL REPORTS OF THE ORGANIZATIONS. + + // Function for registering the financial reports of the organizations. + function registerFinancialReport( + address org_address, + string memory cid, + uint256 registration_time + ) public { + financialReportMap[org_address].org_address = org_address; + financialReportMap[org_address].cid.push(cid); + financialReportMap[org_address] + .reportUploadStartTime = registration_time; + financialReportMap[org_address].reportUploadEndTime = + registration_time + + 5 days; + } + + // Function used for upvoting the financial reports of the organizations. + function reportUpVote(address org_address) public { + financialReportMap[org_address].upvotes = + financialReportMap[org_address].upvotes + + 1; + financialReportMap[org_address].upvoters.push(msg.sender); + } + + // Function used for downnvoting the financial reports of the organizations. + function reportsDownVote(address org_address) public { + financialReportMap[org_address].downvotes = + financialReportMap[org_address].downvotes + + 1; + financialReportMap[org_address].downvoters.push(msg.sender); + } + + // Function to be called once the time for voting of financial reports are over. + function checkFinancialReportStatus(address org_address) public { + uint256 totalVotes = financialReportMap[org_address].upvotes + + financialReportMap[org_address].downvotes; + if (financialReportMap[org_address].upvotes * 100 >= totalVotes * 51) { + financialReportMap[org_address].isReportTrue = true; + } else { + financialReportMap[org_address].isReportTrue = false; + } + } + + // ******** Function to be called to transfer the stake back to the owners after vfraud status is checked. + function upvotedOnFinancialReport(address org_address) public { + if (financialReportMap[org_address].isReportTrue == false) { + for ( + uint256 i = 0; + i < orgIdentifier[org_address].upvoters.length; + i++ + ) { + orgIdentifier[orgIdentifier[org_address].upvoters[i]].stake = + orgIdentifier[orgIdentifier[org_address].upvoters[i]] + .stake - + stakeToBeDistributed; + } + for ( + uint256 i = 0; + i < orgIdentifier[org_address].downvoters.length; + i++ + ) { + orgIdentifier[orgIdentifier[org_address].downvoters[i]].stake = + orgIdentifier[orgIdentifier[org_address].downvoters[i]] + .stake + + stakeToBeDistributed; + } + } + } + + // Function for removing the organization from the list of verified organization and donating its stake to the organizations having most points. + function RemoveCharityIfFinancialReportFraud(address org_address) public { + if (financialReportMap[org_address].isReportTrue == false) { + orgIdentifier[org_address].verification_status = false; + totalOrganizations -= 1; + verifiedOrgMap[org_address] = false; + uint256 maxPoints; + + for (uint256 i = 0; i < organizationAddress.length; i++) { + if ( + orgIdentifier[organizationAddress[i]].verification_status && + maxPoints < orgIdentifier[organizationAddress[i]].points + ) { + maxPoints = orgIdentifier[organizationAddress[i]].points; + maxPointAddress.push(organizationAddress[i]); + } + } + + for (uint256 i = 0; i < maxPointAddress.length; i++) { + // donate the money from the contract to the organizations with max points shortlisted. + } + + uint256 loopTime = maxPointAddress.length; + for (uint256 i = 0; i < loopTime; i++) { + maxPointAddress.pop(); + } + } + } + + // Function to receive Ether. msg.data must be empty + receive() external payable {} + + // Fallback function is called when msg.data is not empty + fallback() external payable {} +}